diff --git a/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm b/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm index 971fde63cb03..1eb17bf0202d 100644 --- a/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm @@ -16,9 +16,6 @@ light_range = 2 }, /area/ruin/unpowered) -"bp" = ( -/turf/open/floor/plating/beach/sand, -/area/overmap_encounter/planetoid/beachplanet/explored) "bv" = ( /obj/machinery/power/smes/shuttle/precharged{ dir = 1 @@ -41,9 +38,7 @@ /mob/living/simple_animal/crab{ name = "\improper Crab" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "cj" = ( /obj/structure/cable{ @@ -158,9 +153,7 @@ /mob/living/simple_animal/hostile/abandoned_minebot{ name = "\improper Abandoned Tony" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "hA" = ( /obj/structure/grille, @@ -231,9 +224,7 @@ /area/ruin/unpowered) "kH" = ( /obj/item/book/manual/wiki/construction, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "kK" = ( /obj/structure/cable{ @@ -246,9 +237,7 @@ /turf/open/floor/plating/rust, /area/ruin/unpowered) "kP" = ( -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/ruin/unpowered) "kR" = ( /obj/effect/turf_decal/weather/sand{ @@ -258,9 +247,7 @@ /area/overmap_encounter/planetoid/beachplanet/explored) "lk" = ( /mob/living/simple_animal/hostile/asteroid/lobstrosity/beach, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "lR" = ( /obj/machinery/power/floodlight, @@ -397,9 +384,7 @@ /obj/structure/cable{ icon_state = "6-9" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "qK" = ( /obj/machinery/power/terminal, @@ -410,9 +395,7 @@ /obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 10 }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "rt" = ( /obj/effect/turf_decal/weather/sand{ @@ -433,15 +416,11 @@ /obj/structure/cable{ icon_state = "4-10" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "sv" = ( /obj/machinery/atmospherics/components/binary/valve, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "sA" = ( /obj/structure/cable{ @@ -454,9 +433,7 @@ /area/ruin/unpowered) "sB" = ( /obj/item/book/manual/wiki/engineering, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "sN" = ( /obj/structure/reagent_dispensers/fueltank, @@ -475,9 +452,7 @@ /obj/structure/cable{ icon_state = "0-5" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "ty" = ( /obj/effect/turf_decal/weather/sand{ @@ -501,21 +476,13 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "uw" = ( /obj/structure/girder, /obj/effect/turf_decal/weather/sand, /turf/open/floor/plating/rust, /area/ruin/unpowered) -"vO" = ( -/turf/open/floor/plating/beach/sand{ - icon_state = "sand_dug"; - light_range = 2 - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "wu" = ( /obj/structure/cable{ icon_state = "2-4" @@ -539,9 +506,7 @@ "xV" = ( /obj/effect/decal/cleanable/glass, /obj/item/shard, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/dense/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "yc" = ( /obj/effect/turf_decal/atmos/plasma, @@ -559,14 +524,6 @@ "ys" = ( /turf/template_noop, /area/template_noop) -"yv" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 5 - }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "yA" = ( /obj/effect/turf_decal/industrial/warning/corner{ dir = 8 @@ -602,9 +559,7 @@ }, /area/overmap_encounter/planetoid/beachplanet/explored) "Ae" = ( -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Ah" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, @@ -616,17 +571,13 @@ /obj/structure/cable{ icon_state = "4-9" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "At" = ( /obj/structure/cable{ icon_state = "5-10" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "AT" = ( /obj/structure/cable{ @@ -685,9 +636,7 @@ /obj/structure/cable{ icon_state = "1-10" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "CW" = ( /obj/machinery/suit_storage_unit/inherit, @@ -696,9 +645,7 @@ /area/ruin/unpowered) "DB" = ( /obj/item/stack/cable_coil/red, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "DC" = ( /turf/open/water/beach/deep, @@ -707,15 +654,11 @@ /obj/structure/cable{ icon_state = "0-9" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "DO" = ( /obj/structure/flora/tree/palm, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "DU" = ( /obj/structure/cable{ @@ -767,9 +710,7 @@ /area/overmap_encounter/planetoid/beachplanet/explored) "Gj" = ( /obj/effect/decal/cleanable/glass, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/dense/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Gl" = ( /turf/closed/wall/rust, @@ -796,9 +737,11 @@ /obj/structure/cable{ icon_state = "0-6" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, +/area/overmap_encounter/planetoid/beachplanet/explored) +"HH" = ( +/mob/living/simple_animal/hostile/asteroid/lobstrosity/beach, +/turf/open/floor/plating/asteroid/sand/dense/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "HK" = ( /obj/structure/closet/secure_closet/engineering_welding, @@ -817,10 +760,7 @@ "Ir" = ( /obj/item/shovel, /obj/item/stack/ore/glass/beach, -/turf/open/floor/plating/beach/sand{ - icon_state = "sand_dug"; - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "IZ" = ( /obj/machinery/power/shuttle/engine/electric{ @@ -905,9 +845,7 @@ /area/overmap_encounter/planetoid/beachplanet/explored) "LI" = ( /obj/structure/flora/rock, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Ms" = ( /obj/effect/turf_decal/weather/sand{ @@ -920,9 +858,7 @@ /area/ruin/unpowered) "Na" = ( /obj/item/pickaxe/improvised, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Nh" = ( /obj/structure/cable{ @@ -950,9 +886,7 @@ /area/ruin/unpowered) "Ot" = ( /obj/item/geiger_counter, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "OI" = ( /obj/effect/turf_decal/weather/sand{ @@ -1014,9 +948,7 @@ /obj/structure/cable{ icon_state = "6-8" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/ruin/unpowered) "QQ" = ( /obj/structure/cable{ @@ -1055,11 +987,12 @@ }, /turf/open/floor/plasteel/tech, /area/ruin/unpowered) +"RD" = ( +/turf/open/floor/plating/asteroid/sand/dense/lit, +/area/overmap_encounter/planetoid/beachplanet/explored) "Sl" = ( /obj/structure/radioactive/stack, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Sx" = ( /obj/structure/cable{ @@ -1072,9 +1005,7 @@ /area/overmap_encounter/planetoid/beachplanet/explored) "SE" = ( /obj/structure/barricade/wooden, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/ruin/unpowered) "SF" = ( /obj/structure/cable{ @@ -1101,9 +1032,7 @@ /obj/structure/cable{ icon_state = "5-8" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Tf" = ( /obj/structure/cable{ @@ -1122,9 +1051,7 @@ /obj/structure/cable{ icon_state = "1-2" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "TB" = ( /obj/effect/spawner/structure/window/hollow/directional{ @@ -1135,9 +1062,7 @@ "TI" = ( /obj/structure/radioactive/waste, /obj/effect/decal/cleanable/greenglow, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Uk" = ( /turf/open/floor/plating/grass/beach/lit, @@ -1181,9 +1106,7 @@ /area/overmap_encounter/planetoid/beachplanet/explored) "Wg" = ( /obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Wn" = ( /obj/machinery/computer/arcade/orion_trail{ @@ -1246,9 +1169,7 @@ /obj/structure/cable{ icon_state = "0-10" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "Yh" = ( /obj/effect/turf_decal/weather/sand{ @@ -1277,9 +1198,7 @@ /obj/structure/cable{ icon_state = "1-10" }, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, +/turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) "ZW" = ( /obj/machinery/pipedispenser, @@ -1597,7 +1516,7 @@ ys Ae Ae Ae -yv +Ae Uz WH WH @@ -1791,7 +1710,7 @@ Ae Ae Ae Ae -bp +Ae ys ys ys @@ -1825,7 +1744,7 @@ Ae Ae Ae Ae -bp +Ae Ae ys ys @@ -1893,7 +1812,7 @@ Ae Ae Ae Ae -bp +Ae Ae Ae ys @@ -1910,7 +1829,7 @@ ug cj Ae Ae -vO +Ae Ae Ae SF @@ -1927,7 +1846,7 @@ Ae Hp Ae Ae -bp +Ae Ae Ae Ae @@ -1961,7 +1880,7 @@ DO Ae qH Ae -bp +Ae Ae Ae Ae @@ -1969,8 +1888,8 @@ Ae (21,1,1) = {" ys ys -Ae -Ae +RD +RD iZ fT Kp @@ -1995,7 +1914,7 @@ Ae Ae Ae qH -bp +Ae Ae sB Ae @@ -2004,14 +1923,14 @@ Ae ys ys Ae -vO +RD ij tX PR dG tB -Ae -Ae +RD +RD qD qD Om @@ -2038,14 +1957,14 @@ Ae ys ys Ae -Ae -Ae +RD +RD SZ Wn Qw tB -Ae -Ae +RD +RD qD ni Qw @@ -2072,14 +1991,14 @@ Ae ys ys ys -Ae -Ae +RD +RD Gj rt kR -Ae -Ae -Ae +RD +RD +RD qD Rj JW @@ -2106,12 +2025,12 @@ Ae ys ys ys -Ae -Ae -Ae -Ae +RD +RD +RD +RD xV -Ae +RD Wg Ae qD @@ -2141,10 +2060,10 @@ ys ys ys ys -Ae -lk -Ae -Ae +RD +HH +RD +RD Ae Ae Ae diff --git a/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm b/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm index 8c8097e2c794..fa9aa8f683db 100644 --- a/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm @@ -48,18 +48,6 @@ /obj/structure/destructible/tribal_torch/lit, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) -"bO" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 5 - }, -/obj/effect/turf_decal/weather/sand, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "ca" = ( /obj/structure/chair/plastic{ dir = 1 @@ -332,20 +320,6 @@ light_range = 2 }, /area/ruin/beach/float_resort) -"jh" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/orange{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "jQ" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -476,6 +450,17 @@ }, /turf/open/floor/plating, /area/overmap_encounter/planetoid/beachplanet/explored) +"ni" = ( +/obj/structure/table/wood, +/obj/effect/turf_decal/weather/sand{ + dir = 1 + }, +/obj/item/candle, +/obj/effect/spawner/random/food_or_drink/donut, +/turf/open/floor/wood{ + light_range = 2 + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "nw" = ( /obj/structure/railing/wood{ dir = 4 @@ -508,6 +493,18 @@ /obj/structure/flora/junglebush/large, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) +"oB" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 5 + }, +/obj/effect/turf_decal/weather/sand, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "oJ" = ( /obj/effect/turf_decal/industrial/stand_clear{ dir = 1 @@ -533,24 +530,6 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) -"pq" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/obj/structure/fluff/beach_umbrella{ - pixel_x = -18; - pixel_y = 13 - }, -/turf/open/floor/carpet/blue{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "pr" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 4 @@ -727,6 +706,18 @@ light_range = 2 }, /area/ruin/beach/float_resort) +"tl" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/obj/effect/turf_decal/weather/sand, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/orange{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "tA" = ( /obj/structure/railing/corner/wood{ dir = 8 @@ -750,6 +741,20 @@ light_range = 2 }, /area/ruin/beach/float_resort/villa) +"ug" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/blue{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "uk" = ( /obj/effect/turf_decal/weather/sand{ dir = 6 @@ -758,6 +763,20 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"uJ" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/orange{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "uV" = ( /obj/structure/chair/plastic, /turf/open/floor/wood{ @@ -819,17 +838,6 @@ light_range = 2 }, /area/ruin/beach/float_resort/villa) -"wp" = ( -/obj/structure/table/wood, -/obj/effect/turf_decal/weather/sand{ - dir = 1 - }, -/obj/item/candle, -/obj/effect/spawner/random/food_or_drink/donut, -/turf/open/floor/wood{ - light_range = 2 - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "wx" = ( /obj/structure/flora/ausbushes/grassybush, /turf/open/floor/plating/grass/beach/lit, @@ -989,6 +997,20 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"Bu" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 10 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "Bw" = ( /obj/structure/table/wood, /obj/structure/curtain/cloth, @@ -1385,20 +1407,6 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) -"Ka" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 9 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/blue{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "Kv" = ( /obj/effect/turf_decal/weather/sand{ dir = 9 @@ -1537,32 +1545,6 @@ /obj/structure/flora/ausbushes/grassybush, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) -"NS" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 10 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) -"NU" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 9 - }, -/obj/effect/turf_decal/weather/sand, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/orange{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "NV" = ( /turf/closed/wall/mineral/wood/nonmetal, /area/ruin/beach/float_resort/villa) @@ -1594,6 +1576,24 @@ /obj/structure/flora/ausbushes/ywflowers, /turf/open/floor/plating/grass/beach/lit, /area/overmap_encounter/planetoid/beachplanet/explored) +"OU" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/obj/structure/fluff/beach_umbrella{ + pixel_x = -18; + pixel_y = 13 + }, +/turf/open/floor/carpet/blue{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "Pc" = ( /obj/effect/turf_decal/weather/sand{ dir = 9 @@ -2585,7 +2585,7 @@ Rt Rt Rt Rt -NS +Bu Rt YP YP @@ -2639,7 +2639,7 @@ Cn Rt Cn am -bO +oB Rt YP YP @@ -2740,7 +2740,7 @@ Rt Rt Rt Zp -NU +tl JQ FB UA @@ -2794,7 +2794,7 @@ Rt Zp VY QS -jh +uJ Rt qi Gv @@ -2954,7 +2954,7 @@ qS Fs QV Rt -wp +ni NC Tc Rt @@ -3380,8 +3380,8 @@ kp kp Dr Rt -Ka -pq +ug +OU Rt Rt Rt diff --git a/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm b/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm index 39bebb15982e..7a4da7abdac2 100644 --- a/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm @@ -112,10 +112,6 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) -"bs" = ( -/obj/effect/spawner/random/vending/cola, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "bu" = ( /obj/structure/table, /obj/machinery/light/small/directional/east, @@ -127,6 +123,20 @@ /obj/structure/flora/ausbushes/ppflowers, /turf/open/floor/plating/grass/beach/lit, /area/overmap_encounter/planetoid/beachplanet/explored) +"bX" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/blue{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "ca" = ( /obj/structure/flora/ausbushes/sparsegrass, /obj/structure/flora/ausbushes/ywflowers, @@ -267,17 +277,6 @@ /obj/structure/chair/sofa/brown/directional/east, /turf/open/floor/carpet/green, /area/ruin/beach/oceantown/hotel) -"dL" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 10 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "dT" = ( /turf/open/floor/wood, /area/ruin/beach/oceantown) @@ -365,6 +364,17 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"eF" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "eG" = ( /obj/structure/railing/corner{ dir = 8 @@ -410,13 +420,6 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/plasteel, /area/ruin/beach/oceantown) -"fn" = ( -/obj/structure/rack, -/obj/effect/spawner/random/food_or_drink/donut/slimejelly, -/obj/effect/spawner/random/food_or_drink/donut, -/obj/effect/spawner/random/food_or_drink/donut, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "fp" = ( /obj/structure/railing/wood, /turf/open/water/beach, @@ -607,20 +610,6 @@ /obj/item/kirbyplants/random, /turf/open/floor/wood, /area/ruin/beach/oceantown) -"hF" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 8 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/orange{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "hG" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/wood, @@ -709,10 +698,9 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) -"ix" = ( +"iy" = ( /obj/structure/rack, /obj/effect/spawner/random/food_or_drink/donut/slimejelly, -/obj/effect/spawner/random/food_or_drink/donut, /turf/open/floor/plasteel/patterned/grid, /area/ruin/beach/oceantown/shop) "iz" = ( @@ -774,6 +762,12 @@ /obj/structure/railing/corner/wood, /turf/open/water/beach, /area/overmap_encounter/planetoid/beachplanet/explored) +"jX" = ( +/obj/structure/rack, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) "jY" = ( /obj/machinery/hydroponics/soil, /obj/item/seeds/tower, @@ -942,20 +936,6 @@ /obj/structure/fluff/beach_umbrella/cap, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) -"lZ" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 9 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/blue{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "mc" = ( /obj/structure/flora/ausbushes/sparsegrass, /obj/structure/flora/ausbushes/leafybush, @@ -980,20 +960,6 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) -"mr" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 10 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/orange{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "mt" = ( /obj/effect/turf_decal/industrial/stand_clear{ dir = 4 @@ -1124,17 +1090,6 @@ /obj/structure/flora/ausbushes/sparsegrass, /turf/open/floor/plating/grass/jungle, /area/overmap_encounter/planetoid/beachplanet/explored) -"oz" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "oF" = ( /obj/effect/turf_decal/weather/sand, /obj/effect/turf_decal/weather/sand, @@ -1231,6 +1186,12 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"pP" = ( +/obj/structure/rack, +/obj/effect/spawner/random/food_or_drink/donut/slimejelly, +/obj/effect/spawner/random/food_or_drink/donut, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) "qb" = ( /obj/effect/turf_decal/siding/thinplating/dark{ dir = 1 @@ -1335,20 +1296,6 @@ /obj/machinery/vending/boozeomat, /turf/open/floor/plasteel, /area/ruin/beach/oceantown/bar) -"rL" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "rN" = ( /obj/structure/closet/secure_closet/freezer/meat, /obj/effect/turf_decal/siding/thinplating/light, @@ -1558,15 +1505,6 @@ light_range = 2 }, /area/ruin/beach/oceantown/bar) -"un" = ( -/obj/structure/rack, -/obj/effect/spawner/random/food_or_drink/donut, -/obj/effect/spawner/random/food_or_drink/donut, -/obj/effect/spawner/random/food_or_drink/donut, -/obj/effect/spawner/random/food_or_drink/donut, -/obj/effect/spawner/random/food_or_drink/donut/slimejelly, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "ur" = ( /obj/structure/railing/wood{ dir = 8 @@ -1601,6 +1539,13 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"uP" = ( +/obj/structure/rack, +/obj/effect/spawner/random/food_or_drink/donut/slimejelly, +/obj/effect/spawner/random/food_or_drink/donut, +/obj/effect/spawner/random/food_or_drink/donut, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) "uV" = ( /obj/machinery/light/small/directional/east, /turf/open/floor/plasteel, @@ -1638,6 +1583,20 @@ /obj/machinery/pdapainter, /turf/open/floor/plasteel/patterned/grid, /area/ruin/beach/oceantown/shop) +"vD" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 8 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/orange{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "vE" = ( /obj/structure/flora/ausbushes/brflowers, /turf/open/floor/plating/grass/beach/lit, @@ -1657,6 +1616,13 @@ /obj/structure/table/wood, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) +"wb" = ( +/obj/structure/rack, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) "we" = ( /obj/effect/turf_decal/siding/thinplating/dark/corner, /turf/open/floor/plasteel/dark, @@ -1672,20 +1638,6 @@ }, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) -"wt" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 5 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/orange{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "wu" = ( /obj/effect/turf_decal/corner/opaque/white/diagonal{ dir = 8 @@ -1698,6 +1650,17 @@ }, /turf/open/floor/plasteel, /area/ruin/beach/oceantown/shop) +"wv" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "wF" = ( /obj/structure/flora/ausbushes/fullgrass, /obj/structure/flora/ausbushes/brflowers, @@ -1902,20 +1865,6 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) -"yJ" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/orange{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "yQ" = ( /obj/structure/railing/corner/wood, /turf/open/floor/plating/asteroid/sand/lit, @@ -2006,6 +1955,10 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"zS" = ( +/obj/effect/spawner/random/vending/snack, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) "zU" = ( /obj/machinery/hydroponics/soil, /obj/item/seeds/banana, @@ -2255,20 +2208,6 @@ /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass, /turf/open/floor/plasteel/patterned/grid, /area/ruin/beach/oceantown/shop) -"CW" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 4 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "De" = ( /obj/structure/railing/wood, /obj/effect/turf_decal/weather/sand{ @@ -2393,20 +2332,6 @@ /obj/effect/turf_decal/weather/sand, /turf/open/water/beach, /area/overmap_encounter/planetoid/beachplanet/explored) -"Er" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 10 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/purple{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "Eu" = ( /obj/structure/chair/plastic{ dir = 8 @@ -2484,6 +2409,48 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"Fa" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/orange{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) +"Fo" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/blue{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) +"Fr" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/purple{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "FA" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -2556,6 +2523,24 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"FY" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/obj/item/clothing/under/shorts/blue{ + name = "blue swimming shorts"; + desc = "100% pure cotton!" + }, +/turf/open/floor/carpet/blue{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "Ga" = ( /obj/effect/turf_decal/siding/wood/corner, /obj/effect/turf_decal/siding/wood/corner{ @@ -2675,6 +2660,20 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"GX" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "GZ" = ( /obj/effect/turf_decal/siding/wood, /obj/structure/closet/crate/freezer, @@ -2894,6 +2893,20 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/plasteel, /area/ruin/beach/oceantown/hotel) +"Je" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 10 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/purple{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "Jh" = ( /obj/effect/turf_decal/siding/wood{ dir = 6 @@ -2993,6 +3006,15 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"Kf" = ( +/obj/structure/rack, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/obj/effect/spawner/random/food_or_drink/donut/slimejelly, +/obj/effect/spawner/random/food_or_drink/donut/jelly, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) "Kk" = ( /obj/structure/railing/wood{ dir = 6 @@ -3040,17 +3062,6 @@ /obj/machinery/light/directional/south, /turf/open/floor/plasteel/grimy, /area/ruin/beach/oceantown/hotel) -"KC" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "KD" = ( /obj/structure/closet/secure_closet/freezer/kitchen, /obj/effect/turf_decal/box, @@ -3133,6 +3144,20 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"Lt" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 4 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "Lx" = ( /obj/structure/rack, /obj/item/reagent_containers/food/snacks/candiedapple, @@ -3156,18 +3181,18 @@ }, /turf/open/water/beach, /area/overmap_encounter/planetoid/beachplanet/explored) -"LN" = ( +"LF" = ( /obj/effect/turf_decal/weather/sand{ dir = 6 }, /obj/effect/turf_decal/weather/sand{ - dir = 8 + dir = 10 }, /obj/effect/decal/cleanable/dirt/dust{ layer = 2.01 }, -/turf/open/floor/carpet/blue{ - baseturfs = /turf/open/floor/plating/beach/sand +/turf/open/floor/carpet/orange{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit }, /area/overmap_encounter/planetoid/beachplanet/explored) "LR" = ( @@ -3365,10 +3390,21 @@ /obj/structure/flora/tree/palm, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) -"NX" = ( +"Ob" = ( /obj/structure/rack, +/obj/effect/spawner/random/food_or_drink/donut, +/obj/effect/spawner/random/food_or_drink/donut, +/obj/effect/spawner/random/food_or_drink/donut/slimejelly, /obj/effect/spawner/random/food_or_drink/donut/jelly, -/obj/effect/spawner/random/food_or_drink/donut/jelly, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) +"Oc" = ( +/obj/structure/rack, +/obj/effect/spawner/random/food_or_drink/donut, +/obj/effect/spawner/random/food_or_drink/donut, +/obj/effect/spawner/random/food_or_drink/donut, +/obj/effect/spawner/random/food_or_drink/donut, +/obj/effect/spawner/random/food_or_drink/donut/slimejelly, /turf/open/floor/plasteel/patterned/grid, /area/ruin/beach/oceantown/shop) "Oe" = ( @@ -3429,29 +3465,16 @@ /obj/structure/flora/junglebush, /turf/open/floor/plating/asteroid/sand/lit, /area/overmap_encounter/planetoid/beachplanet/explored) -"OP" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 6 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/obj/item/clothing/under/shorts/blue{ - name = "blue swimming shorts"; - desc = "100% pure cotton!" - }, -/turf/open/floor/carpet/blue{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "OR" = ( /obj/structure/flora/ausbushes/grassybush, /obj/structure/flora/ausbushes/ppflowers, /turf/open/floor/plating/grass/beach/lit, /area/overmap_encounter/planetoid/beachplanet/explored) +"OS" = ( +/obj/structure/bed, +/obj/effect/spawner/random/bedsheet, +/turf/open/floor/carpet, +/area/ruin/beach/oceantown) "OT" = ( /obj/effect/turf_decal/corner/opaque/white/diagonal{ dir = 8 @@ -3504,20 +3527,6 @@ /obj/machinery/light/directional/west, /turf/open/floor/plasteel/dark, /area/ruin/beach/oceantown/shop) -"Ps" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 9 - }, -/obj/effect/turf_decal/weather/sand{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/purple{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "Pv" = ( /obj/structure/closet/crate/bin, /turf/open/floor/wood, @@ -3539,17 +3548,27 @@ /obj/structure/chair/sofa/brown/right/directional/south, /turf/open/floor/wood, /area/ruin/beach/oceantown) -"PF" = ( -/obj/structure/rack, -/obj/effect/spawner/random/food_or_drink/donut/slimejelly, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "PH" = ( /obj/effect/turf_decal/weather/sand{ dir = 1 }, /turf/open/water/beach, /area/overmap_encounter/planetoid/beachplanet/explored) +"PL" = ( +/obj/effect/spawner/random/vending/cola, +/turf/open/floor/plasteel/patterned/grid, +/area/ruin/beach/oceantown/shop) +"PM" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 10 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "PN" = ( /obj/structure/flora/ausbushes/reedbush, /turf/open/water/beach, @@ -3568,10 +3587,6 @@ }, /turf/open/water/beach, /area/overmap_encounter/planetoid/beachplanet/explored) -"Qf" = ( -/obj/effect/spawner/random/vending/snack, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "Qm" = ( /obj/structure/railing/wood, /turf/open/floor/plating/asteroid/sand/lit, @@ -3670,6 +3685,17 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"RV" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/cyan{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "Sc" = ( /turf/open/floor/plasteel/grimy, /area/ruin/beach/oceantown/hotel) @@ -3731,14 +3757,6 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) -"SS" = ( -/obj/structure/rack, -/obj/effect/spawner/random/food_or_drink/donut, -/obj/effect/spawner/random/food_or_drink/donut, -/obj/effect/spawner/random/food_or_drink/donut/slimejelly, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "SY" = ( /obj/structure/chair/comfy/orange/directional/north, /turf/open/floor/carpet/black, @@ -3847,17 +3865,6 @@ /obj/structure/chair/wood, /turf/open/floor/carpet/green, /area/ruin/beach/oceantown) -"UF" = ( -/obj/effect/turf_decal/weather/sand{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt/dust{ - layer = 2.01 - }, -/turf/open/floor/carpet/cyan{ - baseturfs = /turf/open/floor/plating/beach/sand - }, -/area/overmap_encounter/planetoid/beachplanet/explored) "UH" = ( /obj/structure/chair/office{ dir = 1 @@ -3904,11 +3911,6 @@ /obj/effect/turf_decal/box, /turf/open/floor/plasteel/white, /area/ruin/beach/oceantown/bar) -"Vr" = ( -/obj/structure/bed, -/obj/effect/spawner/random/bedsheet, -/turf/open/floor/carpet, -/area/ruin/beach/oceantown) "VI" = ( /obj/structure/railing/wood{ dir = 8 @@ -3943,13 +3945,6 @@ /obj/item/stack/sheet/mineral/coal/ten, /turf/open/floor/plasteel/patterned/grid, /area/ruin/beach/oceantown/shop) -"VQ" = ( -/obj/structure/rack, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "VS" = ( /obj/structure/table, /obj/machinery/processor, @@ -4098,6 +4093,20 @@ light_range = 2 }, /area/overmap_encounter/planetoid/beachplanet/explored) +"XE" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 5 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust{ + layer = 2.01 + }, +/turf/open/floor/carpet/orange{ + baseturfs = /turf/open/floor/plating/asteroid/sand/lit + }, +/area/overmap_encounter/planetoid/beachplanet/explored) "XI" = ( /obj/structure/table/wood/fancy/black, /obj/item/reagent_containers/food/drinks/drinkingglass{ @@ -4110,15 +4119,6 @@ /obj/structure/flora/ausbushes/fullgrass, /turf/open/floor/plating/grass, /area/overmap_encounter/planetoid/beachplanet/explored) -"XQ" = ( -/obj/structure/rack, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/obj/effect/spawner/random/food_or_drink/donut/slimejelly, -/obj/effect/spawner/random/food_or_drink/donut/jelly, -/turf/open/floor/plasteel/patterned/grid, -/area/ruin/beach/oceantown/shop) "XS" = ( /obj/effect/turf_decal/corner/opaque/white/diagonal{ dir = 8 @@ -4445,8 +4445,8 @@ YU "} (3,1,1) = {" qp -Ps -Er +Fr +Je sa sa lL @@ -4686,8 +4686,8 @@ pn pn pn qp -hF -yJ +vD +Fa sa sa sa @@ -4861,9 +4861,9 @@ Hu Ap Ip OT -Qf +zS Tj -bs +PL AY Un gb @@ -5372,8 +5372,8 @@ qp sa sa sa -CW -rL +Lt +GX sa sa sa @@ -5678,8 +5678,8 @@ YU (19,1,1) = {" qp sa -lZ -OP +Fo +FY sa sa sa @@ -6143,8 +6143,8 @@ Ca Go OK sa -wt -mr +XE +LF sa sa sa @@ -6720,7 +6720,7 @@ jv xh dT rh -Vr +OS xh Cf xh @@ -8219,8 +8219,8 @@ YU (52,1,1) = {" Ca OK -KC -dL +wv +PM sa sa Xk @@ -8296,8 +8296,8 @@ YU (53,1,1) = {" pn qp -UF -oz +eF +RV sa sa Sp @@ -9220,8 +9220,8 @@ YU (65,1,1) = {" qp sa -lZ -LN +Fo +bX sa sa yb @@ -9315,8 +9315,8 @@ MP vf UX UX -un -VQ +Oc +wb tI tI em @@ -9469,8 +9469,8 @@ MP Ho xe tI -XQ -SS +Kf +Ob tI tI GJ @@ -9593,7 +9593,7 @@ xh Al ND xh -Vr +OS gX bf xh @@ -9623,12 +9623,12 @@ MP mR UX UX -PF -fn +iy +uP tI -ix -NX -NX +pP +jX +jX UX Mi Mi diff --git a/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm b/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm index fbf9bf8ed4eb..9fb79427bde4 100644 --- a/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_treasure_cove.dmm @@ -18,12 +18,6 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/wood, /area/ruin/beach/treasure_cove) -"ay" = ( -/obj/structure/flora/tree/palm, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, -/area/ruin/unpowered) "aY" = ( /obj/structure/flora/ausbushes/reedbush, /turf/open/water/beach, @@ -32,12 +26,6 @@ /obj/structure/flora/rock/beach, /turf/open/water/beach, /area/ruin/unpowered) -"bI" = ( -/obj/effect/turf_decal/industrial/hatch/yellow, -/obj/machinery/light/small/directional/north, -/obj/effect/spawner/random/decoration/glowstick, -/turf/open/floor/concrete/slab_1, -/area/ruin/beach/treasure_cove) "bN" = ( /obj/effect/turf_decal/weather/sand, /turf/open/water/beach, @@ -47,15 +35,6 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating/dirt/jungle/dark/lit, /area/ruin/beach/treasure_cove) -"bQ" = ( -/obj/structure/railing/wood{ - layer = 3.1; - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/spawner/random/decoration/glowstick, -/turf/open/floor/plating/dirt/jungle, -/area/ruin/unpowered) "cJ" = ( /obj/effect/turf_decal/industrial/outline/yellow, /obj/structure/ore_box, @@ -192,12 +171,6 @@ footstep = "wood" }, /area/ruin/beach/treasure_cove) -"ht" = ( -/obj/effect/overlay/palmtree_r, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, -/area/ruin/unpowered) "hJ" = ( /obj/effect/turf_decal/industrial/traffic, /obj/effect/turf_decal/industrial/traffic{ @@ -206,11 +179,6 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/concrete/slab_1, /area/ruin/beach/treasure_cove) -"hS" = ( -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, -/area/ruin/unpowered) "ie" = ( /obj/structure/closet/crate/grave/loot{ desc = "Here lies our great brother and infamous pirate" @@ -280,6 +248,9 @@ icon_state = "wood-broken5" }, /area/ruin/beach/treasure_cove) +"jQ" = ( +/turf/open/floor/plating/asteroid/sand/lit, +/area/ruin/unpowered) "jT" = ( /obj/structure/barricade/wooden, /obj/structure/barricade/wooden/crude, @@ -298,12 +269,6 @@ }, /turf/open/water/beach, /area/ruin/unpowered) -"kl" = ( -/obj/effect/overlay/palmtree_l, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, -/area/ruin/unpowered) "km" = ( /mob/living/simple_animal/hostile/cockroach, /turf/open/floor/wood{ @@ -355,6 +320,10 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/concrete/slab_1, /area/ruin/beach/treasure_cove) +"mV" = ( +/obj/effect/overlay/palmtree_r, +/turf/open/floor/plating/asteroid/sand/lit, +/area/ruin/unpowered) "nf" = ( /obj/structure/closet/body_bag, /obj/effect/decal/cleanable/blood/gibs/old{ @@ -536,15 +505,11 @@ icon_state = "wood-broken4" }, /area/ruin/beach/treasure_cove) -"rp" = ( -/obj/item/restraints/handcuffs/cable/zipties/used, -/obj/item/ammo_casing/spent{ - icon_state = "rifle-brass"; - pixel_x = -10; - pixel_y = 4 - }, +"rf" = ( +/obj/effect/turf_decal/industrial/hatch/yellow, +/obj/machinery/light/small/directional/north, /obj/effect/spawner/random/decoration/glowstick, -/turf/open/floor/wood, +/turf/open/floor/concrete/slab_1, /area/ruin/beach/treasure_cove) "rA" = ( /mob/living/simple_animal/beachcarp/trout{ @@ -780,6 +745,10 @@ }, /turf/open/floor/plating/grass/beach/lit, /area/ruin/unpowered) +"xC" = ( +/obj/effect/overlay/palmtree_l, +/turf/open/floor/plating/asteroid/sand/lit, +/area/ruin/unpowered) "xU" = ( /obj/effect/turf_decal/siding/wood{ dir = 9 @@ -913,6 +882,10 @@ /obj/structure/spacevine/dense, /turf/open/water/beach, /area/ruin/unpowered) +"Cq" = ( +/mob/living/simple_animal/crab, +/turf/open/floor/plating/asteroid/sand/lit, +/area/ruin/unpowered) "Cz" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 4 @@ -973,6 +946,15 @@ /mob/living/simple_animal/hostile/human/frontier, /turf/open/floor/plating/dirt/jungle/lit, /area/ruin/beach/treasure_cove) +"FL" = ( +/obj/structure/railing/wood{ + layer = 3.1; + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/decoration/glowstick, +/turf/open/floor/plating/dirt/jungle, +/area/ruin/unpowered) "Gm" = ( /obj/effect/turf_decal/siding/wood, /obj/structure/bed{ @@ -981,6 +963,16 @@ /obj/effect/decal/cleanable/glass, /turf/open/floor/wood/walnut, /area/ruin/beach/treasure_cove) +"GA" = ( +/obj/item/restraints/handcuffs/cable/zipties/used, +/obj/item/ammo_casing/spent{ + icon_state = "rifle-brass"; + pixel_x = -10; + pixel_y = 4 + }, +/obj/effect/spawner/random/decoration/glowstick, +/turf/open/floor/wood, +/area/ruin/beach/treasure_cove) "GC" = ( /obj/structure/spacevine, /turf/open/water/beach, @@ -1101,7 +1093,7 @@ pixel_x = -6; pixel_y = 10 }, -/obj/item/melee/transforming/energy/sword/saber/pirate/red{ +/obj/item/melee/energy/sword/saber/pirate/red{ pixel_y = 8; pixel_x = 10 }, @@ -1422,6 +1414,10 @@ /obj/effect/turf_decal/industrial/outline/yellow, /turf/open/floor/concrete/slab_2, /area/ruin/beach/treasure_cove) +"Wb" = ( +/obj/structure/flora/tree/palm, +/turf/open/floor/plating/asteroid/sand/lit, +/area/ruin/unpowered) "Wh" = ( /obj/item/stack/ore/salvage/scrapmetal{ pixel_y = -15; @@ -1436,12 +1432,6 @@ /mob/living/simple_animal/hostile/cockroach, /turf/open/floor/plating/rust, /area/ruin/beach/treasure_cove) -"WX" = ( -/mob/living/simple_animal/crab, -/turf/open/floor/plating/beach/sand{ - light_range = 2 - }, -/area/ruin/unpowered) "Xp" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -1593,25 +1583,25 @@ lt lt lt lt -hS -hS -hS -hS -hS -hS -kl -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ +jQ +xC +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ Iv Iv Iv @@ -1639,25 +1629,25 @@ lt lt lt lt -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ Iv Iv "} @@ -1696,13 +1686,13 @@ UY UY UY jZ -hS -hS -hS -hS -kl -hS -hS +jQ +jQ +jQ +jQ +xC +jQ +jQ Iv Iv "} @@ -1744,11 +1734,11 @@ TN UY UY jZ -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ Iv "} (6,1,1) = {" @@ -1790,11 +1780,11 @@ TN TN TN jZ -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ "} (7,1,1) = {" Iv @@ -1825,10 +1815,10 @@ lt lt lt lt -hS -hS -WX -hS +jQ +jQ +Cq +jQ db EE TN @@ -1836,10 +1826,10 @@ TN TN TN jZ -hS -hS -hS -hS +jQ +jQ +jQ +jQ "} (8,1,1) = {" Iv @@ -1871,20 +1861,20 @@ lt lt lt lt -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ db TN TN TN bN -hS -hS -hS -hS +jQ +jQ +jQ +jQ "} (9,1,1) = {" Iv @@ -1916,20 +1906,20 @@ lt lt lt lt -hS -hS -hS -kl -hS -hS +jQ +jQ +jQ +xC +jQ +jQ TJ bB TN bN -hS -hS -hS -hS +jQ +jQ +jQ +jQ "} (10,1,1) = {" Iv @@ -1961,20 +1951,20 @@ lt lt lt lt -hS -hS -hS -WX -hS -hS +jQ +jQ +jQ +Cq +jQ +jQ TJ TN TN TN jZ -hS -hS -hS +jQ +jQ +jQ "} (11,1,1) = {" Iv @@ -1992,7 +1982,7 @@ Wa vb qN pz -bI +rf Ry Ty Ry @@ -2006,10 +1996,10 @@ lt lt lt lt -hS -hS -hS -hS +jQ +jQ +jQ +jQ VF UY TN @@ -2017,9 +2007,9 @@ TN TN TN bN -hS -hS -hS +jQ +jQ +jQ "} (12,1,1) = {" Iv @@ -2052,8 +2042,8 @@ lt lt lt lt -hS -hS +jQ +jQ VF TN TN @@ -2062,9 +2052,9 @@ TN TN tH bN -hS -hS -hS +jQ +jQ +jQ "} (13,1,1) = {" Iv @@ -2107,9 +2097,9 @@ TN TN TN bN -hS -hS -hS +jQ +jQ +jQ "} (14,1,1) = {" Iv @@ -2153,8 +2143,8 @@ TN TN TN jZ -hS -hS +jQ +jQ "} (15,1,1) = {" Iv @@ -2198,8 +2188,8 @@ EE TN TN bN -hS -hS +jQ +jQ "} (16,1,1) = {" Iv @@ -2239,12 +2229,12 @@ TN TN TN CB -hS +jQ TJ TN bN -hS -hS +jQ +jQ "} (17,1,1) = {" Iv @@ -2283,13 +2273,13 @@ SD xg TN bN -hS +jQ lt lt TN bN -hS -hS +jQ +jQ "} (18,1,1) = {" lt @@ -2333,8 +2323,8 @@ lt TN TN bN -hS -hS +jQ +jQ "} (19,1,1) = {" lt @@ -2378,8 +2368,8 @@ TN TN TN bN -hS -hS +jQ +jQ "} (20,1,1) = {" lt @@ -2404,7 +2394,7 @@ wS Te le ZO -rp +GA Uf tD Rn @@ -2423,8 +2413,8 @@ TN TN TN bN -hS -hS +jQ +jQ "} (21,1,1) = {" lt @@ -2468,8 +2458,8 @@ TN TN TN bN -hS -hS +jQ +jQ "} (22,1,1) = {" lt @@ -2513,15 +2503,15 @@ TN TN tH bN -hS -hS +jQ +jQ "} (23,1,1) = {" Iv lt lt -hS -hS +jQ +jQ lt lt lt @@ -2558,15 +2548,15 @@ lt TN TN bN -hS -hS +jQ +jQ "} (24,1,1) = {" Iv lt lt -hS -hS +jQ +jQ lt lt lt @@ -2603,15 +2593,15 @@ TN TN TN bN -hS -hS +jQ +jQ "} (25,1,1) = {" Iv lt -hS -hS -hS +jQ +jQ +jQ lt lt lt @@ -2629,7 +2619,7 @@ oR Jd cU nR -bQ +FL lt lt lt @@ -2648,16 +2638,16 @@ TN TN TN CB -hS -hS +jQ +jQ "} (26,1,1) = {" Iv Iv -hS -hS -hS -WX +jQ +jQ +jQ +Cq lt lt lt @@ -2692,15 +2682,15 @@ TN TN TN bN -hS -hS -hS +jQ +jQ +jQ "} (27,1,1) = {" Iv Iv -hS -hS +jQ +jQ VF UY UY @@ -2737,15 +2727,15 @@ TN TN TN bN -WX -hS -hS +Cq +jQ +jQ "} (28,1,1) = {" Iv Iv -hS -ht +jQ +mV TJ TN TN @@ -2782,21 +2772,21 @@ TN TN TN CB -hS -hS +jQ +jQ Iv "} (29,1,1) = {" Iv Iv -hS -hS +jQ +jQ TJ TN TN TN jZ -hS +jQ lt lt lt @@ -2826,23 +2816,23 @@ TN TN TN CB -hS -hS -hS +jQ +jQ +jQ Iv "} (30,1,1) = {" Iv Iv -hS -hS +jQ +jQ db TN TN TN bN -WX -hS +Cq +jQ lt lt lt @@ -2870,18 +2860,18 @@ TN TN TN CB -hS -hS -hS -hS +jQ +jQ +jQ +jQ Iv "} (31,1,1) = {" Iv Iv -hS -hS -hS +jQ +jQ +jQ db EE TN @@ -2914,9 +2904,9 @@ TN TN EE CB -hS -hS -hS +jQ +jQ +jQ Iv Iv Iv @@ -2925,10 +2915,10 @@ Iv Iv Iv lt -hS -hS -hS -WX +jQ +jQ +jQ +Cq TJ TN TN @@ -2957,10 +2947,10 @@ EE EE EE CB -hS -hS -hS -hS +jQ +jQ +jQ +jQ Iv Iv Iv @@ -2971,9 +2961,9 @@ Iv lt lt lt -hS -hS -hS +jQ +jQ +jQ db TN TN @@ -2997,14 +2987,14 @@ EE EE EE CB -hS -hS -hS -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ Iv Iv Iv @@ -3017,9 +3007,9 @@ Iv Iv Iv Iv -hS -hS -hS +jQ +jQ +jQ db EE TN @@ -3036,19 +3026,19 @@ lt lt lt lt -hS -hS -hS -hS -hS -hS -ay -hS -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ +jQ +Wb +jQ +jQ +jQ +jQ +jQ +jQ Iv Iv Iv @@ -3063,15 +3053,15 @@ Iv Iv lt lt -hS -hS -hS -hS +jQ +jQ +jQ +jQ db EE EE CB -hS +jQ lt lt lt @@ -3079,17 +3069,17 @@ lt lt lt lt -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ +jQ Iv Iv Iv @@ -3109,16 +3099,16 @@ lt lt lt lt -hS -hS -hS -kl -hS -hS -hS -hS -hS -hS +jQ +jQ +jQ +xC +jQ +jQ +jQ +jQ +jQ +jQ Iv Iv Iv @@ -3155,13 +3145,13 @@ Iv Iv Iv Iv -hS -hS -hS -hS -hS -hS -hS +jQ +jQ +jQ +jQ +jQ +jQ +jQ Iv Iv Iv diff --git a/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm b/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm index 72e946c220a7..fbaaf2c7dd9e 100644 --- a/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm +++ b/_maps/RandomRuins/JungleRuins/jungle_cavecrew.dmm @@ -2410,7 +2410,7 @@ pixel_y = -8; pixel_x = 5 }, -/obj/item/melee/transforming/energy/sword/saber/pirate/red, +/obj/item/melee/energy/sword/saber/pirate/red, /turf/open/floor/wood, /area/ruin/jungle/cavecrew/dormitories) "Dh" = ( diff --git a/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm b/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm index e0a98de791fc..47d8eb8a5b41 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm @@ -2480,7 +2480,7 @@ icon_state = "gib3-old"; pixel_x = -6 }, -/obj/item/melee/transforming/energy/sword/saber/pirate/yellow{ +/obj/item/melee/energy/sword/saber/pirate/yellow{ pixel_x = -5; pixel_y = 16 }, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm index 6ad3e8ba7458..7626a3ff9a6b 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm @@ -883,7 +883,7 @@ /area/overmap_encounter/planetoid/lava/explored) "zb" = ( /mob/living/simple_animal/hostile/megafauna/blood_drunk_miner{ - loot = list(/obj/item/melee/transforming/cleaving_saw,/obj/item/gun/energy/kinetic_accelerator,/obj/item/keycard/gatedrop/lavacanyon) + loot = list(/obj/item/melee/cleaving_saw,/obj/item/gun/energy/kinetic_accelerator,/obj/item/keycard/gatedrop/lavacanyon) }, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/overmap_encounter/planetoid/cave/explored) diff --git a/_maps/RandomRuins/RockRuins/rockplanet_distillery.dmm b/_maps/RandomRuins/RockRuins/rockplanet_distillery.dmm index 6d6f81ffd5a0..441df85eb4b6 100644 --- a/_maps/RandomRuins/RockRuins/rockplanet_distillery.dmm +++ b/_maps/RandomRuins/RockRuins/rockplanet_distillery.dmm @@ -50,24 +50,24 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/structure/table/glass, /obj/item/reagent_containers/condiment/sugar{ - pixel_y = 13; + layer = 2.8; pixel_x = -2; - layer = 2.8 + pixel_y = 13 }, /obj/item/stock_parts/micro_laser{ - pixel_y = 16; + layer = 2.8; pixel_x = 6; - layer = 2.8 + pixel_y = 16 }, /obj/machinery/reagentgrinder, /obj/item/stock_parts/scanning_module{ + layer = 2.8; pixel_x = -6; - pixel_y = 6; - layer = 2.8 + pixel_y = 6 }, /obj/item/reagent_containers/condiment/enzyme{ - pixel_y = 10; - pixel_x = 10 + pixel_x = 10; + pixel_y = 10 }, /turf/open/floor/plating/rockplanet/lit, /area/ruin/rockplanet/distillery) @@ -93,6 +93,11 @@ }, /turf/open/floor/pod, /area/ruin/rockplanet/distillery/office) +"aS" = ( +/obj/effect/spawner/random/vending/cola, +/obj/effect/turf_decal/spline/fancy/opaque/white, +/turf/open/floor/plasteel/patterned/brushed, +/area/ruin/rockplanet/distillery/crew) "ba" = ( /obj/structure/chair/office, /obj/effect/turf_decal/spline/fancy/opaque/white{ @@ -147,9 +152,9 @@ dir = 9 }, /obj/effect/decal/cleanable/crayon{ + color = "#0094FF"; icon_state = "f"; - pixel_x = 6; - color = "#0094FF" + pixel_x = 6 }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4, @@ -171,8 +176,8 @@ }, /obj/machinery/atmospherics/components/binary/pump/on{ dir = 4; - target_pressure = 500; - name = "Air to Distro" + name = "Air to Distro"; + target_pressure = 500 }, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/patterned/brushed, @@ -196,9 +201,9 @@ }, /obj/effect/turf_decal/techfloor, /obj/machinery/light_switch{ + dir = 8; pixel_x = 22; - pixel_y = 5; - dir = 8 + pixel_y = 5 }, /obj/effect/decal/cleanable/generic, /obj/effect/decal/cleanable/dirt/dust, @@ -275,6 +280,14 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/pod, /area/ruin/rockplanet/distillery/office) +"cu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4; + filter_types = list("co2","bz","water_vapor","freon","tritium","n20"); + widenet = 1 + }, +/turf/open/floor/plasteel/patterned/brushed, +/area/ruin/rockplanet/distillery/crew) "cw" = ( /obj/machinery/door/poddoor/shutters/preopen{ dir = 4 @@ -400,11 +413,6 @@ /obj/structure/flora/ash/cacti, /turf/open/floor/plating/asteroid/rockplanet/lit, /area/overmap_encounter/planetoid/rockplanet/explored) -"dZ" = ( -/obj/effect/spawner/random/vending/cola, -/obj/effect/turf_decal/spline/fancy/opaque/white, -/turf/open/floor/plasteel/patterned/brushed, -/area/ruin/rockplanet/distillery/crew) "ed" = ( /turf/closed/wall/rust, /area/ruin/rockplanet/distillery) @@ -448,13 +456,13 @@ /area/ruin/rockplanet/distillery/crew) "fl" = ( /obj/structure/reagent_dispensers/cooking_oil{ - name = "moonshine vat"; desc = "A huge metal vat with a tap on the front. Filled with moonshine."; + name = "moonshine vat"; reagent_id = /datum/reagent/consumable/ethanol/moonshine }, /obj/structure/fermenting_barrel/distiller{ - pixel_y = -14; - density = 0 + density = 0; + pixel_y = -14 }, /turf/open/floor/pod/rockplanet, /area/ruin/rockplanet/distillery) @@ -475,9 +483,9 @@ dir = 8; id = "frontier_door"; name = "Door Lock"; + normaldoorcontrol = 1; pixel_x = 23; pixel_y = -2; - normaldoorcontrol = 1; specialfunctions = 4 }, /turf/open/floor/plasteel/stairs{ @@ -497,6 +505,18 @@ /obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating/rockplanet/lit, /area/overmap_encounter/planetoid/rockplanet/explored) +"fG" = ( +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/siding/white{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/maintenance/two, +/turf/open/floor/pod, +/area/ruin/rockplanet/distillery/office) "fJ" = ( /obj/structure/catwalk/over, /obj/machinery/light/small/broken/directional/west, @@ -588,15 +608,15 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/item/ammo_box/magazine/m9mm_rattlesnake{ - pixel_y = 6; + layer = 3.1; pixel_x = 12; - layer = 3.1 + pixel_y = 6 }, /obj/item/ammo_box/magazine/m9mm_rattlesnake{ - pixel_y = 6; + layer = 3.1; pixel_x = 6; - start_empty = 1; - layer = 3.1 + pixel_y = 6; + start_empty = 1 }, /obj/item/ammo_casing/c9mm, /obj/item/ammo_casing/c9mm, @@ -624,12 +644,12 @@ pixel_y = 4 }, /obj/item/electronics/firealarm{ - pixel_y = 6; - pixel_x = -4 + pixel_x = -4; + pixel_y = 6 }, /obj/item/reagent_containers/food/drinks/soda_cans/sol_dry{ - pixel_y = 6; - pixel_x = 6 + pixel_x = 6; + pixel_y = 6 }, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating/rockplanet/lit{ @@ -638,9 +658,9 @@ /area/ruin/rockplanet/distillery) "gX" = ( /obj/structure/reagent_dispensers/beerkeg{ - reagent_id = /datum/reagent/consumable/ethanol/moonshine; + desc = "A keg full of liver-shredding spirits brewed by amateur bootleggers."; name = "moonshine keg"; - desc = "A keg full of liver-shredding spirits brewed by amateur bootleggers." + reagent_id = /datum/reagent/consumable/ethanol/moonshine }, /obj/effect/turf_decal/industrial/loading/white{ dir = 4 @@ -659,8 +679,8 @@ "hq" = ( /obj/structure/table/wood/reinforced, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 12; - pixel_x = 8 + pixel_x = 8; + pixel_y = 12 }, /obj/item/clothing/head/beret/sec/frontier{ pixel_x = -4 @@ -685,12 +705,12 @@ dir = 9 }, /obj/item/reagent_containers/food/snacks/chips{ - pixel_y = 4; - pixel_x = -3 + pixel_x = -3; + pixel_y = 4 }, /obj/item/reagent_containers/food/drinks/beer{ - pixel_y = 8; - pixel_x = 6 + pixel_x = 6; + pixel_y = 8 }, /turf/open/floor/wood/rockplanet, /area/ruin/rockplanet/distillery/saloon) @@ -811,6 +831,15 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer2, /turf/open/floor/plasteel/patterned/brushed, /area/ruin/rockplanet/distillery/crew) +"jG" = ( +/obj/structure/curtain/cloth/grey, +/obj/structure/bed{ + dir = 8; + icon_state = "dirty_mattress" + }, +/obj/effect/spawner/random/bedsheet, +/turf/open/floor/wood, +/area/ruin/rockplanet/distillery/crew) "jI" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/chair/sofa/brown/corpo/right/directional/west, @@ -848,18 +877,9 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/ash, /obj/item/cigbutt{ - pixel_y = 3; - pixel_x = 6 - }, -/turf/open/floor/wood, -/area/ruin/rockplanet/distillery/crew) -"kd" = ( -/obj/structure/curtain/cloth/grey, -/obj/structure/bed{ - dir = 8; - icon_state = "dirty_mattress" + pixel_x = 6; + pixel_y = 3 }, -/obj/effect/spawner/random/bedsheet, /turf/open/floor/wood, /area/ruin/rockplanet/distillery/crew) "kn" = ( @@ -884,10 +904,10 @@ /area/ruin/rockplanet/distillery/crew) "ky" = ( /obj/structure/flora/ausbushes/sparsegrass/hell{ - name = "dead grass"; desc = "A sparse patch of grass without color."; + light_power = 1; light_range = 0; - light_power = 1 + name = "dead grass" }, /turf/open/floor/plating/asteroid/rockplanet/wet/cracked/lit, /area/overmap_encounter/planetoid/rockplanet/explored) @@ -917,6 +937,11 @@ }, /turf/open/floor/plasteel/patterned/brushed, /area/ruin/rockplanet/distillery/crew) +"kQ" = ( +/obj/effect/spawner/random/vending/snack, +/obj/effect/turf_decal/spline/fancy/opaque/white, +/turf/open/floor/plasteel/patterned/brushed, +/area/ruin/rockplanet/distillery/crew) "kT" = ( /obj/effect/turf_decal/spline/fancy/opaque/white, /obj/effect/turf_decal/trimline/opaque/neutral/filled/line{ @@ -1051,9 +1076,9 @@ pixel_x = -4 }, /obj/item/pushbroom{ - pixel_y = -12; + layer = 3.9; pixel_x = 5; - layer = 3.9 + pixel_y = -12 }, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/siding/wood{ @@ -1129,8 +1154,8 @@ pixel_y = 3 }, /obj/item/stock_parts/manipulator{ - pixel_y = 5; - pixel_x = 4 + pixel_x = 4; + pixel_y = 5 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -1147,10 +1172,10 @@ }, /obj/machinery/button/door{ dir = 4; - pixel_y = 6; - pixel_x = -22; + id = "engi_window"; name = "Window Shutter"; - id = "engi_window" + pixel_x = -22; + pixel_y = 6 }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/binary/volume_pump/on/layer2{ @@ -1251,12 +1276,12 @@ /obj/structure/catwalk/over, /obj/structure/closet/crate/hydroponics, /obj/item/reagent_containers/condiment/enzyme{ - pixel_y = 8; - pixel_x = -8 + pixel_x = -8; + pixel_y = 8 }, /obj/item/reagent_containers/condiment/enzyme{ - pixel_y = 8; - pixel_x = -8 + pixel_x = -8; + pixel_y = 8 }, /obj/item/reagent_containers/condiment/enzyme{ pixel_y = 8 @@ -1351,8 +1376,8 @@ }, /obj/effect/decal/cleanable/dirt/dust, /obj/item/paper/crumpled/muddy/fluff/distillery{ - name = "note"; - default_raw_text = "Scored this from an SRM ship passing through the sector. Handy if anything happens to our current still." + default_raw_text = "Scored this from an SRM ship passing through the sector. Handy if anything happens to our current still."; + name = "note" }, /turf/open/floor/plating/rockplanet/lit{ icon_state = "panelscorched" @@ -1383,12 +1408,12 @@ dir = 5 }, /obj/item/stamp{ - pixel_y = 16; - pixel_x = 5 + pixel_x = 5; + pixel_y = 16 }, /obj/item/stamp/denied{ - pixel_y = 16; - pixel_x = -5 + pixel_x = -5; + pixel_y = 16 }, /obj/item/kirbyplants{ icon_state = "plant-11"; @@ -1399,8 +1424,8 @@ /area/ruin/rockplanet/distillery/office) "qe" = ( /obj/structure/reagent_dispensers/water_cooler{ - pixel_y = 6; - pixel_x = 6 + pixel_x = 6; + pixel_y = 6 }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood{ @@ -1566,14 +1591,6 @@ }, /turf/open/floor/plasteel/patterned/brushed/rockplanet, /area/ruin/rockplanet/distillery/saloon) -"sm" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4; - filter_types = list("co2","bz","water_vapor","miasma","freon","pluox","tritium","n20","no2","nob"); - widenet = 1 - }, -/turf/open/floor/plasteel/patterned/brushed, -/area/ruin/rockplanet/distillery/crew) "sx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 @@ -1610,17 +1627,6 @@ icon_state = "wood-broken2" }, /area/ruin/rockplanet/distillery/saloon) -"sQ" = ( -/obj/effect/turf_decal/industrial/outline/red, -/obj/structure/closet/crate/freezer, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/turf/open/floor/plasteel/patterned/brushed/rockplanet, -/area/ruin/rockplanet/distillery/crew) "tc" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 1 @@ -1646,12 +1652,12 @@ pixel_y = -1 }, /obj/item/reagent_containers/glass/beaker{ - pixel_x = -5; - list_reagents = list(/datum/reagent/oxygen = 50) + list_reagents = list(/datum/reagent/oxygen = 50); + pixel_x = -5 }, /obj/item/reagent_containers/glass/beaker{ - pixel_y = 12; - list_reagents = list(/datum/reagent/carbon = 50) + list_reagents = list(/datum/reagent/carbon = 50); + pixel_y = 12 }, /obj/item/reagent_containers/syringe{ pixel_y = 6 @@ -1695,8 +1701,8 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/structure/table, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 12; - pixel_x = 10 + pixel_x = 10; + pixel_y = 12 }, /obj/item/newspaper{ pixel_x = -4; @@ -1852,8 +1858,8 @@ req_one_access_txt = "10" }, /obj/structure/closet/wall/red/directional/west{ - secure = 1; - locked = 1 + locked = 1; + secure = 1 }, /obj/item/storage/toolbox/emergency/shuttle/electric, /obj/item/ammo_box/a44roum_speedloader, @@ -1884,8 +1890,8 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/structure/table/glass, /obj/item/seeds/corn{ - pixel_y = 6; - pixel_x = -2 + pixel_x = -2; + pixel_y = 6 }, /obj/item/seeds/corn{ pixel_y = 6 @@ -1894,12 +1900,12 @@ pixel_y = 6 }, /obj/item/reagent_containers/food/snacks/grown/corn{ - pixel_y = -2; - pixel_x = 3 + pixel_x = 3; + pixel_y = -2 }, /obj/item/reagent_containers/food/snacks/grown/corn{ - pixel_y = 3; - pixel_x = 4 + pixel_x = 4; + pixel_y = 3 }, /turf/open/floor/plating/rockplanet/lit{ icon_state = "panelscorched" @@ -2033,19 +2039,19 @@ "xc" = ( /obj/structure/table/wood/reinforced, /obj/item/paper_bin{ - pixel_y = 8; - pixel_x = -4 + pixel_x = -4; + pixel_y = 8 }, /obj/item/pen{ - pixel_y = 8; - pixel_x = -4 + pixel_x = -4; + pixel_y = 8 }, /obj/item/hand_labeler{ pixel_y = -4 }, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 12; - pixel_x = 8 + pixel_x = 8; + pixel_y = 12 }, /turf/open/floor/plasteel/patterned/brushed/rockplanet, /area/ruin/rockplanet/distillery) @@ -2109,8 +2115,8 @@ }, /obj/effect/decal/cleanable/dirt/dust, /mob/living/simple_animal/hostile/netherworld/migo{ - name = "Dog"; - faction = list("Frontiersmen") + faction = list("Frontiersmen"); + name = "Dog" }, /obj/structure/bed/dogbed, /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/skeleton, @@ -2141,14 +2147,14 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/rack, /obj/item/reagent_containers/condiment/sugar{ - pixel_y = 13; + layer = 2.8; pixel_x = -2; - layer = 2.8 + pixel_y = 13 }, /obj/item/reagent_containers/condiment/sugar{ - pixel_y = 7; + layer = 2.8; pixel_x = -2; - layer = 2.8 + pixel_y = 7 }, /obj/item/wrench{ pixel_y = 4 @@ -2178,18 +2184,6 @@ /obj/machinery/hydroponics/constructable, /turf/open/floor/plasteel/patterned/brushed/rockplanet, /area/ruin/rockplanet/distillery) -"yL" = ( -/obj/structure/closet/crate/bin, -/obj/effect/turf_decal/siding/white{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/spawner/random/maintenance/two, -/turf/open/floor/pod, -/area/ruin/rockplanet/distillery/office) "yO" = ( /obj/effect/turf_decal/siding/white{ dir = 9 @@ -2488,27 +2482,12 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/wood/rockplanet, /area/ruin/rockplanet/distillery/saloon) -"BT" = ( -/obj/effect/turf_decal/siding/wood, -/obj/structure/sign/poster/retro/radio{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1; - filter_types = list("co2","bz","water_vapor","miasma","freon","pluox","tritium","n20","no2","nob"); - widenet = 1 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/ruin/rockplanet/distillery/crew) "Ch" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/table/glass, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 12; - pixel_x = 8 + pixel_x = 8; + pixel_y = 12 }, /obj/item/clipboard{ pixel_x = -4; @@ -2567,9 +2546,9 @@ "CL" = ( /obj/structure/fluff/glowshroom, /obj/machinery/button/door{ - pixel_y = 26; + id = "dist_cargo"; name = "Cargo Door"; - id = "dist_cargo" + pixel_y = 26 }, /turf/open/floor/plating/rockplanet/lit, /area/ruin/rockplanet/distillery) @@ -2689,8 +2668,8 @@ layer = 2.7 }, /obj/item/reagent_containers/food/drinks/beer{ - pixel_y = 8; - pixel_x = 4 + pixel_x = 4; + pixel_y = 8 }, /obj/item/reagent_containers/food/drinks/mug/coco{ pixel_x = -6; @@ -2732,14 +2711,24 @@ dir = 6 }, /obj/effect/decal/cleanable/crayon{ + color = "#FF7742"; icon_state = "skull"; - pixel_x = -16; - color = "#FF7742" + pixel_x = -16 }, /obj/effect/decal/cleanable/garbage, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/patterned/brushed, /area/ruin/rockplanet/distillery/crew) +"Fe" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/obj/structure/fluff/glowshroom, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/crate/bin, +/obj/effect/spawner/random/maintenance/three, +/turf/open/floor/wood, +/area/ruin/rockplanet/distillery/crew) "Fk" = ( /obj/machinery/light/floor, /turf/open/floor/plating/rust/rockplanet/lit, @@ -2800,12 +2789,12 @@ "FI" = ( /obj/structure/table/wood/reinforced, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 12; - pixel_x = 8 + pixel_x = 8; + pixel_y = 12 }, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 14; - pixel_x = -4 + pixel_x = -4; + pixel_y = 14 }, /obj/item/newspaper{ pixel_x = -4 @@ -2909,6 +2898,23 @@ }, /turf/open/floor/plating/rockplanet/lit, /area/ruin/rockplanet/distillery) +"He" = ( +/obj/structure/closet/crate/bin, +/obj/machinery/firealarm/directional/south{ + buildstage = 0 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "1-5" + }, +/obj/machinery/light/small/directional/west, +/obj/effect/spawner/random/maintenance/four, +/turf/open/floor/wood/rockplanet{ + icon_state = "wood-broken6" + }, +/area/ruin/rockplanet/distillery) "Hf" = ( /obj/structure/chair/comfy/shuttle{ dir = 4; @@ -2920,26 +2926,26 @@ /obj/effect/turf_decal/industrial/traffic, /obj/machinery/button/door{ dir = 4; - pixel_y = -6; - pixel_x = -22; + id = "pod_aft"; name = "Aft Door"; - id = "pod_aft" + pixel_x = -22; + pixel_y = -6 }, /obj/machinery/button/door{ dir = 4; - pixel_x = -32; + id = "pod_window"; name = "Window Shutters"; - id = "pod_window" + pixel_x = -32 }, /obj/machinery/door/window/brigdoor/northleft{ req_one_access_txt = "10" }, /obj/machinery/button/door{ dir = 4; - pixel_y = 6; - pixel_x = -22; + id = "pod_fore"; name = "Fore Door"; - id = "pod_fore" + pixel_x = -22; + pixel_y = 6 }, /obj/effect/decal/cleanable/oil, /mob/living/simple_animal/hostile/human/frontier/ranged/internals, @@ -3029,15 +3035,6 @@ icon_state = "wood-broken7" }, /area/ruin/rockplanet/distillery/saloon) -"Iz" = ( -/obj/structure/closet/crate, -/obj/effect/turf_decal/industrial/outline/red, -/obj/effect/spawner/random/circuit/computer/common, -/obj/effect/spawner/random/maintenance/four, -/obj/effect/spawner/random/circuit/machine/common, -/obj/effect/spawner/random/circuit/machine/common, -/turf/open/floor/plasteel/patterned/brushed/rockplanet, -/area/ruin/rockplanet/distillery/crew) "IA" = ( /obj/effect/turf_decal/siding/wood, /obj/effect/turf_decal/siding/wood{ @@ -3098,13 +3095,13 @@ pixel_x = 3 }, /obj/machinery/button/door{ + dir = 4; + id = "frontier_armory"; name = "Armory Door Lock"; - pixel_y = -6; - pixel_x = -22; normaldoorcontrol = 1; - specialfunctions = 4; - id = "frontier_armory"; - dir = 4 + pixel_x = -22; + pixel_y = -6; + specialfunctions = 4 }, /turf/open/floor/plasteel/patterned/brushed, /area/ruin/rockplanet/distillery/office) @@ -3123,6 +3120,20 @@ dir = 8 }, /area/ruin/rockplanet/distillery/saloon) +"JA" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + filter_types = list("co2","bz","water_vapor","freon","tritium","n20"); + widenet = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/white{ + dir = 5 + }, +/obj/structure/closet/crate/bin, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small/broken/directional/east, +/obj/effect/spawner/random/maintenance/three, +/turf/open/floor/plasteel/patterned/brushed, +/area/ruin/rockplanet/distillery/crew) "JC" = ( /obj/item/chair, /obj/structure/railing{ @@ -3148,9 +3159,9 @@ /area/overmap_encounter/planetoid/rockplanet/explored) "JN" = ( /obj/structure/flora/driftlog{ - pixel_y = -15; + layer = 2.8; pixel_x = 9; - layer = 2.8 + pixel_y = -15 }, /turf/open/floor/plating/asteroid/rockplanet/lit, /area/overmap_encounter/planetoid/rockplanet/explored) @@ -3197,28 +3208,28 @@ "Ka" = ( /obj/structure/reagent_dispensers/beerkeg{ anchored = 1; - reagent_id = /datum/reagent/consumable/ethanol/moonshine; - name = "moonshine keg"; desc = "A keg full of liver-shredding spirits brewed by amateur bootleggers."; + layer = 2.8; + name = "moonshine keg"; pixel_x = -8; - layer = 2.8 + reagent_id = /datum/reagent/consumable/ethanol/moonshine }, /obj/structure/reagent_dispensers/beerkeg{ anchored = 1; - reagent_id = /datum/reagent/consumable/ethanol/moonshine; - name = "moonshine keg"; desc = "A keg full of liver-shredding spirits brewed by amateur bootleggers."; + name = "moonshine keg"; pixel_x = 8; - pixel_y = -2 + pixel_y = -2; + reagent_id = /datum/reagent/consumable/ethanol/moonshine }, /obj/structure/reagent_dispensers/beerkeg{ anchored = 1; - reagent_id = /datum/reagent/consumable/ethanol/moonshine; - name = "moonshine keg"; desc = "A keg full of liver-shredding spirits brewed by amateur bootleggers."; + layer = 3; + name = "moonshine keg"; pixel_x = -4; pixel_y = 14; - layer = 3 + reagent_id = /datum/reagent/consumable/ethanol/moonshine }, /obj/effect/turf_decal/industrial/outline/yellow, /obj/effect/turf_decal/spline/fancy/opaque/white{ @@ -3229,8 +3240,8 @@ "Kf" = ( /obj/structure/table/wood/reinforced, /obj/item/reagent_containers/food/drinks/bottle/whiskey{ - pixel_y = 12; - pixel_x = 6 + pixel_x = 6; + pixel_y = 12 }, /obj/item/reagent_containers/food/drinks/drinkingglass{ pixel_x = -8; @@ -3407,23 +3418,6 @@ /obj/machinery/light/small/broken/directional/east, /turf/open/floor/wood/rockplanet, /area/ruin/rockplanet/distillery/saloon) -"MS" = ( -/obj/structure/closet/crate/bin, -/obj/machinery/firealarm/directional/south{ - buildstage = 0 - }, -/obj/effect/turf_decal/siding/wood{ - dir = 10 - }, -/obj/structure/cable/yellow{ - icon_state = "1-5" - }, -/obj/machinery/light/small/directional/west, -/obj/effect/spawner/random/maintenance/four, -/turf/open/floor/wood/rockplanet{ - icon_state = "wood-broken6" - }, -/area/ruin/rockplanet/distillery) "Nj" = ( /obj/effect/turf_decal/siding/wood{ dir = 6 @@ -3461,8 +3455,8 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/item/cigbutt, /obj/item/cigbutt{ - pixel_y = 8; - pixel_x = 6 + pixel_x = 6; + pixel_y = 8 }, /obj/item/reagent_containers/food/drinks/bottle/moonshine{ pixel_x = -6; @@ -3496,10 +3490,10 @@ /area/ruin/rockplanet/distillery/crew) "NE" = ( /obj/structure/flora/ausbushes/sparsegrass/hell{ - name = "dead grass"; desc = "A sparse patch of grass without color."; + light_power = 1; light_range = 0; - light_power = 1 + name = "dead grass" }, /obj/machinery/light/directional/north, /turf/open/floor/plating/asteroid/rockplanet/wet/cracked/lit, @@ -3509,10 +3503,10 @@ dir = 1 }, /obj/machinery/computer/helm{ + desc = "No way you're getting this thing off the ground."; dir = 8; layer = 3.3; - name = "Locked Helm Console"; - desc = "No way you're getting this thing off the ground." + name = "Locked Helm Console" }, /obj/effect/turf_decal/techfloor{ dir = 1 @@ -3581,11 +3575,6 @@ icon_state = "panelscorched" }, /area/overmap_encounter/planetoid/rockplanet/explored) -"Os" = ( -/obj/effect/spawner/random/vending/snack, -/obj/effect/turf_decal/spline/fancy/opaque/white, -/turf/open/floor/plasteel/patterned/brushed, -/area/ruin/rockplanet/distillery/crew) "Ow" = ( /obj/structure/railing{ dir = 8 @@ -3711,6 +3700,17 @@ }, /turf/open/floor/plasteel/patterned/rockplanet/lit, /area/overmap_encounter/planetoid/rockplanet/explored) +"PW" = ( +/obj/effect/turf_decal/industrial/outline/red, +/obj/structure/closet/crate/freezer, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/turf/open/floor/plasteel/patterned/brushed/rockplanet, +/area/ruin/rockplanet/distillery/crew) "PZ" = ( /obj/structure/bed, /obj/structure/curtain/cloth/grey, @@ -3750,6 +3750,21 @@ "QP" = ( /turf/closed/wall/r_wall/rust, /area/ruin/rockplanet/distillery/engineering) +"Rb" = ( +/obj/effect/turf_decal/siding/wood, +/obj/structure/sign/poster/retro/radio{ + pixel_y = -32 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1; + filter_types = list("co2","bz","water_vapor","freon","tritium","n20"); + widenet = 1 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken4" + }, +/area/ruin/rockplanet/distillery/crew) "Rd" = ( /obj/structure/cable{ icon_state = "5-8" @@ -3773,8 +3788,8 @@ pixel_y = 4 }, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 12; - pixel_x = 8 + pixel_x = 8; + pixel_y = 12 }, /turf/open/floor/plasteel/patterned/brushed/rockplanet, /area/ruin/rockplanet/distillery/saloon) @@ -3811,8 +3826,8 @@ dir = 1 }, /obj/item/trash/popcorn{ - pixel_y = 12; - pixel_x = 7 + pixel_x = 7; + pixel_y = 12 }, /turf/open/floor/plasteel/patterned/brushed, /area/ruin/rockplanet/distillery/crew) @@ -3824,14 +3839,14 @@ dir = 5 }, /obj/effect/decal/cleanable/crayon{ + color = "#0094FF"; icon_state = "k"; - pixel_x = -5; - color = "#0094FF" + pixel_x = -5 }, /obj/effect/decal/cleanable/crayon{ + color = "#0094FF"; icon_state = "u"; - pixel_x = -16; - color = "#0094FF" + pixel_x = -16 }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ @@ -3929,24 +3944,24 @@ /area/ruin/rockplanet/distillery/saloon) "Ss" = ( /obj/structure/flora/driftlog{ - pixel_y = 2; - pixel_x = -6 + pixel_x = -6; + pixel_y = 2 }, /turf/open/floor/plating/asteroid/rockplanet/cracked/lit, /area/overmap_encounter/planetoid/rockplanet/explored) "Sx" = ( /obj/structure/table/wood/reinforced, /obj/item/reagent_containers/food/drinks/bottle/moonshine{ - pixel_y = 6; - pixel_x = 4 + pixel_x = 4; + pixel_y = 6 }, /obj/item/reagent_containers/food/drinks/bottle/moonshine{ - pixel_y = 2; - pixel_x = -6 + pixel_x = -6; + pixel_y = 2 }, /obj/item/reagent_containers/food/drinks/bottle/hooch{ - pixel_y = -4; - pixel_x = 7 + pixel_x = 7; + pixel_y = -4 }, /obj/machinery/light/small/directional/west, /turf/open/floor/plasteel/patterned/brushed/rockplanet, @@ -3983,8 +3998,8 @@ "Td" = ( /obj/structure/table, /obj/item/reagent_containers/glass/chem_jug{ - pixel_y = 4; - pixel_x = 5 + pixel_x = 5; + pixel_y = 4 }, /obj/effect/decal/cleanable/dirt/dust, /obj/item/reagent_containers/glass/filter{ @@ -4176,30 +4191,6 @@ }, /turf/open/floor/pod/rockplanet, /area/ruin/rockplanet/distillery/office) -"Vf" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 10 - }, -/obj/structure/fluff/glowshroom, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/closet/crate/bin, -/obj/effect/spawner/random/maintenance/three, -/turf/open/floor/wood, -/area/ruin/rockplanet/distillery/crew) -"Vg" = ( -/obj/effect/turf_decal/spline/fancy/opaque/white{ - dir = 5 - }, -/obj/structure/closet/crate/bin, -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - filter_types = list("co2","bz","water_vapor","miasma","freon","pluox","tritium","n20","no2","nob"); - widenet = 1 - }, -/obj/machinery/light/small/broken/directional/east, -/obj/effect/spawner/random/maintenance/three, -/turf/open/floor/plasteel/patterned/brushed, -/area/ruin/rockplanet/distillery/crew) "Vj" = ( /obj/effect/turf_decal/ntlogo, /obj/effect/turf_decal/spline/fancy/opaque/white{ @@ -4360,6 +4351,15 @@ /obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating/rust/rockplanet/lit, /area/overmap_encounter/planetoid/rockplanet/explored) +"Xc" = ( +/obj/structure/closet/crate, +/obj/effect/turf_decal/industrial/outline/red, +/obj/effect/spawner/random/circuit/computer/common, +/obj/effect/spawner/random/maintenance/four, +/obj/effect/spawner/random/circuit/machine/common, +/obj/effect/spawner/random/circuit/machine/common, +/turf/open/floor/plasteel/patterned/brushed/rockplanet, +/area/ruin/rockplanet/distillery/crew) "Xf" = ( /obj/structure/cable/yellow{ icon_state = "1-6" @@ -4396,12 +4396,12 @@ }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/button/door{ + id = "frontier_armory"; name = "Armory Door Lock"; - pixel_y = 24; - pixel_x = 6; normaldoorcontrol = 1; - specialfunctions = 4; - id = "frontier_armory" + pixel_x = 6; + pixel_y = 24; + specialfunctions = 4 }, /mob/living/simple_animal/hostile/human/frontier/ranged/officer/internals, /turf/open/floor/wood, @@ -4439,8 +4439,8 @@ /obj/effect/turf_decal/siding/white/corner, /obj/item/kirbyplants{ icon_state = "plant-25"; - pixel_y = 12; - pixel_x = -2 + pixel_x = -2; + pixel_y = 12 }, /obj/effect/decal/cleanable/glass, /obj/effect/decal/cleanable/ash, @@ -4530,9 +4530,9 @@ dir = 6 }, /obj/item/reagent_containers/food/snacks/deadmouse{ + layer = 2.9; pixel_x = 8; - pixel_y = 6; - layer = 2.9 + pixel_y = 6 }, /obj/structure/chair/sofa/brown/old/corner/directional/west, /turf/open/floor/plasteel/patterned/brushed/rockplanet, @@ -5134,7 +5134,7 @@ kO Rw zk tP -sm +cu RR wU ji @@ -5224,7 +5224,7 @@ uS zJ AY xT -Vg +JA jF RR RR @@ -5369,7 +5369,7 @@ aB tB eG sx -kd +jG RR Tl Ru @@ -5527,7 +5527,7 @@ rH mq qu uU -MS +He rH wX mX @@ -5558,7 +5558,7 @@ jM mk lE RR -Iz +Xc rT yS NE @@ -5600,12 +5600,12 @@ KA lL mv eh -yL +fG jM VO -Vf +Fe zk -sQ +PW rT yS qj @@ -5744,7 +5744,7 @@ UI SV jM xN -BT +Rb RR zk zk @@ -5794,7 +5794,7 @@ LD Rr zk tP -sm +cu RR NR KV @@ -5836,7 +5836,7 @@ Ja ql OV RR -dZ +aS Go Gd br @@ -5883,7 +5883,7 @@ KA cp yW RR -Os +kQ eF Ef RR diff --git a/_maps/configs/pgf_elated_bolide.json b/_maps/configs/pgf_elated_bolide.json new file mode 100644 index 000000000000..6c3fe8e153c0 --- /dev/null +++ b/_maps/configs/pgf_elated_bolide.json @@ -0,0 +1,56 @@ +{ + "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", + "faction": "/datum/faction/pgf", + "prefix": "PGFN", + "map_name": "Elated Bolide-Class Assault Lander", + "namelists": [ + "PGF" + ], + "map_short_name": "Elated Bolide-Class", + "description": "A somewhat stout design manufactured by the Etherbor PGFN Lihmona Navy Shipyard for service as an orbital assault ship, the Elated Bolide class has served with distinction in many minor conflicts and been sent on deployment to even more locales. Despite not carrying ship-to-ship weaponry (with the traditional mounting spot being taken up by a high-gain antenna), the Elated Bolide's Pioneers are well armed and well trained for orbital insertion, construction, and demolition.", + "tags": [ + "Combat", + "Engineering", + "RP Focus" + ], + "starting_funds": 1000, + "map_path": "_maps/shuttles/pgf/pgf_elated_bolide.dmm", + "limit": 1, + "job_slots": { + "Captain": { + "outfit": "/datum/outfit/job/gezena/captain", + "officer": true, + "slots": 1 + }, + "Marine Lieutenant": { + "outfit": "/datum/outfit/job/gezena/hos", + "officer":true, + "slots": 1 + }, + "Helmsman": { + "outfit": "/datum/outfit/job/gezena/assistant/bridge", + "slots": 1 + }, + "Navy Engineer": { + "outfit": "/datum/outfit/job/gezena/engineer", + "slots": 2 + }, + "Hospital Corpsman": { + "outfit": "/datum/outfit/job/gezena/doctor", + "slots": 1 + }, + "Marine": { + "outfit": "/datum/outfit/job/gezena/security", + "slots": 2 + }, + "Assault Pioneer":{ + "outfit": "/datum/outfit/job/gezena/security/sapper", + "slots":4 + }, + "Crewman": { + "outfit": "/datum/outfit/job/gezena/assistant", + "slots": 1 + } + }, + "enabled":true +} diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index 229134b7eac7..73f7f051e4fe 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -2647,7 +2647,7 @@ /obj/item/clothing/suit/armor/tdome/red, /obj/item/clothing/head/helmet/thunderdome, /obj/item/melee/baton/loaded, -/obj/item/melee/transforming/energy/sword/saber/red, +/obj/item/melee/energy/sword/saber/red, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, @@ -3948,7 +3948,7 @@ /obj/item/clothing/suit/armor/tdome/green, /obj/item/clothing/head/helmet/thunderdome, /obj/item/melee/baton/loaded, -/obj/item/melee/transforming/energy/sword/saber/green, +/obj/item/melee/energy/sword/saber/green, /obj/effect/turf_decal/industrial/warning{ dir = 8 }, @@ -3964,34 +3964,34 @@ /area/centcom/evac) "aLV" = ( /turf/closed/indestructible/riveted, -/area/awaymission/errorroom) +/area/errorroom) "aLW" = ( /turf/closed/mineral/ash_rock, -/area/awaymission/errorroom) +/area/errorroom) "aLX" = ( /obj/structure/speaking_tile, /turf/closed/mineral/ash_rock, -/area/awaymission/errorroom) +/area/errorroom) "aLY" = ( /obj/item/rupee, /turf/open/floor/plating/ashplanet/wateryrock{ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "aLZ" = ( /turf/open/floor/plating/ashplanet/wateryrock{ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "aMa" = ( /obj/effect/landmark/error, /turf/open/floor/plating/ashplanet/wateryrock{ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "aMb" = ( /obj/structure/signpost/salvation{ icon = 'icons/obj/structures.dmi'; @@ -4002,7 +4002,7 @@ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "aMc" = ( /obj/structure/lattice, /turf/open/space, @@ -6908,7 +6908,7 @@ /obj/effect/turf_decal/corner/opaque/blue{ dir = 8 }, -/obj/item/melee/transforming/energy/ctf, +/obj/item/melee/energy/ctf, /turf/open/floor/plasteel/dark, /area/ctf) "cEn" = ( @@ -7836,7 +7836,7 @@ /obj/effect/turf_decal/corner/opaque/red{ dir = 8 }, -/obj/item/melee/transforming/energy/ctf, +/obj/item/melee/energy/ctf, /turf/open/floor/plasteel/dark, /area/ctf) "eDS" = ( @@ -8387,7 +8387,7 @@ /obj/item/clothing/suit/armor/tdome/green, /obj/item/clothing/head/helmet/thunderdome, /obj/item/melee/baton/loaded, -/obj/item/melee/transforming/energy/sword/saber/green, +/obj/item/melee/energy/sword/saber/green, /obj/effect/turf_decal/industrial/warning{ dir = 8 }, @@ -14402,7 +14402,7 @@ /obj/item/clothing/suit/armor/tdome/red, /obj/item/clothing/head/helmet/thunderdome, /obj/item/melee/baton/loaded, -/obj/item/melee/transforming/energy/sword/saber/red, +/obj/item/melee/energy/sword/saber/red, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, diff --git a/_maps/map_files/generic/blank.dmm b/_maps/map_files/generic/blank.dmm index b918e3fcaead..522ed46ce706 100644 --- a/_maps/map_files/generic/blank.dmm +++ b/_maps/map_files/generic/blank.dmm @@ -4,17 +4,17 @@ /area/space) "b" = ( /turf/closed/indestructible/riveted, -/area/awaymission/errorroom) +/area/errorroom) "p" = ( /turf/closed/mineral/ash_rock, -/area/awaymission/errorroom) +/area/errorroom) "t" = ( /obj/effect/landmark/error, /turf/open/floor/plating/ashplanet/wateryrock{ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "D" = ( /turf/closed/indestructible/riveted, /area/start) @@ -24,7 +24,7 @@ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "I" = ( /turf/open/floor/holofloor/hyperspace, /area/space) @@ -49,17 +49,17 @@ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "R" = ( /obj/structure/speaking_tile, /turf/closed/mineral/ash_rock, -/area/awaymission/errorroom) +/area/errorroom) "T" = ( /turf/open/floor/plating/ashplanet/wateryrock{ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; planetary_atmos = 0 }, -/area/awaymission/errorroom) +/area/errorroom) "U" = ( /obj/effect/landmark/start/new_player, /turf/open/floor/plating, diff --git a/_maps/shuttles/independent/independent_lagoon.dmm b/_maps/shuttles/independent/independent_lagoon.dmm index 2855c6e0d686..6ef4d8035080 100644 --- a/_maps/shuttles/independent/independent_lagoon.dmm +++ b/_maps/shuttles/independent/independent_lagoon.dmm @@ -87,6 +87,12 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, /turf/open/floor/pod/light, /area/ship/hallway/port) +"av" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/effect/turf_decal/weather/sand, +/obj/machinery/light/directional/west, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "az" = ( /obj/machinery/door/poddoor/preopen{ id = "cruisebridge" @@ -426,6 +432,10 @@ }, /turf/open/floor/plasteel/white, /area/ship/medical) +"cL" = ( +/obj/structure/flora/ausbushes/brflowers, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "cM" = ( /obj/machinery/button/door{ dir = 4; @@ -477,9 +487,6 @@ }, /turf/open/floor/pod/dark, /area/ship/hallway/port) -"cP" = ( -/turf/open/floor/grass, -/area/ship/hallway/central) "cR" = ( /obj/machinery/computer/arcade/battle, /obj/machinery/firealarm/directional/north, @@ -553,6 +560,10 @@ /obj/effect/turf_decal/corner/opaque/white/border, /turf/open/floor/plasteel, /area/ship/hallway/starboard) +"dA" = ( +/obj/item/toy/seashell, +/turf/open/floor/plating/asteroid/sand/ship, +/area/ship/hallway/central) "dF" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 1 @@ -591,9 +602,6 @@ }, /turf/open/floor/wood, /area/ship/crew/canteen) -"dN" = ( -/turf/open/floor/plating/beach/water, -/area/ship/hallway/central) "dP" = ( /obj/effect/turf_decal/corner/opaque/white/border{ dir = 1 @@ -641,6 +649,11 @@ /obj/machinery/light/directional/west, /turf/open/floor/plasteel/stairs, /area/ship/bridge) +"ee" = ( +/obj/effect/turf_decal/weather/sand, +/obj/machinery/light/directional/east, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "ef" = ( /obj/item/kirbyplants/photosynthetic, /obj/effect/turf_decal/siding/thinplating/dark{ @@ -665,6 +678,12 @@ /obj/structure/chair, /turf/open/floor/plasteel, /area/ship/external) +"es" = ( +/obj/structure/flora/tree/jungle/small{ + randomize_icon = 0 + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "et" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ dir = 4 @@ -808,12 +827,6 @@ /obj/machinery/light/directional/west, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"fs" = ( -/obj/structure/flora/tree/jungle/small{ - randomize_icon = 0 - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "fu" = ( /obj/structure/cable{ icon_state = "0-8" @@ -879,6 +892,10 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) +"fH" = ( +/obj/item/reagent_containers/spray/spraytan, +/turf/open/floor/plating/asteroid/sand/ship, +/area/ship/hallway/central) "fI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /turf/open/floor/plating, @@ -937,12 +954,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/ship/hallway/port) -"gf" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/obj/effect/turf_decal/weather/sand, -/obj/machinery/light/directional/west, -/turf/open/floor/grass, -/area/ship/hallway/central) "gn" = ( /obj/structure/railing{ dir = 8; @@ -1009,10 +1020,6 @@ /obj/effect/turf_decal/corner/opaque/white/border, /turf/open/floor/plasteel, /area/ship/hallway/port) -"gM" = ( -/obj/structure/chair/comfy/grey/directional/east, -/turf/open/floor/grass, -/area/ship/hallway/central) "gR" = ( /obj/structure/sign/barsign{ pixel_y = 32 @@ -1092,6 +1099,17 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/engineering) +"hp" = ( +/obj/structure/flora/ausbushes/ppflowers, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) +"hq" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/chair/pew/left{ + dir = 4 + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "hr" = ( /obj/structure/cable{ icon_state = "4-8" @@ -1233,11 +1251,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"id" = ( -/obj/effect/turf_decal/weather/sand, -/obj/machinery/light/directional/east, -/turf/open/floor/grass, -/area/ship/hallway/central) "ie" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ dir = 8 @@ -1410,6 +1423,19 @@ }, /turf/open/floor/wood, /area/ship/crew/library) +"je" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "jf" = ( /obj/structure/cable{ icon_state = "4-8" @@ -1495,10 +1521,6 @@ }, /turf/open/floor/wood, /area/ship/crew) -"jI" = ( -/obj/item/toy/seashell, -/turf/open/floor/plating/beach/sand, -/area/ship/hallway/central) "jM" = ( /obj/machinery/libraryscanner, /obj/machinery/newscaster/directional/east, @@ -1868,6 +1890,10 @@ }, /turf/open/floor/wood, /area/ship/bridge) +"mn" = ( +/obj/effect/turf_decal/weather/sand, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "mp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -1924,6 +1950,11 @@ /obj/effect/turf_decal/corner/opaque/lightgrey/full, /turf/open/floor/plasteel/patterned/cargo_one, /area/ship/cargo) +"mH" = ( +/obj/structure/flora/ausbushes/ywflowers, +/obj/effect/turf_decal/weather/sand, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "mJ" = ( /obj/machinery/atmospherics/pipe/layer_manifold{ dir = 4 @@ -2125,6 +2156,19 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/engineering) +"oi" = ( +/obj/machinery/airalarm/directional/north, +/obj/structure/table/wood, +/obj/item/storage/bag/easterbasket{ + pixel_x = 5; + pixel_y = 9 + }, +/obj/item/reagent_containers/food/snacks/egg{ + pixel_x = -8; + pixel_y = 4 + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "oj" = ( /obj/structure/cable{ icon_state = "1-8" @@ -2164,6 +2208,10 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/plasteel, /area/ship/hallway/port) +"ow" = ( +/obj/structure/chair/comfy/grey/directional/east, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "oz" = ( /obj/machinery/door/airlock/titanium{ name = "Cabin 5" @@ -2474,6 +2522,12 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/plasteel/dark, /area/ship/security) +"qi" = ( +/obj/structure/chair/pew/right{ + dir = 4 + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "ql" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -2518,9 +2572,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"qx" = ( -/turf/open/floor/plating/beach/sand, -/area/ship/hallway/central) "qA" = ( /obj/structure/chair{ dir = 1 @@ -2730,6 +2781,10 @@ /obj/structure/flora/rock/icy, /turf/open/floor/grass/fairy, /area/ship/hallway/aft) +"rS" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "rV" = ( /obj/machinery/light/directional/east, /obj/machinery/vending/cigarette/beach, @@ -2738,6 +2793,11 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/port) +"rZ" = ( +/obj/structure/flora/ausbushes/ppflowers, +/obj/effect/turf_decal/weather/sand, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "sa" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/siding/thinplating/dark{ @@ -2873,9 +2933,6 @@ /obj/machinery/airalarm/directional/north, /turf/open/floor/light/colour_cycle/dancefloor_b, /area/ship/storage) -"ta" = ( -/turf/open/floor/plating/beach/coastline_t, -/area/ship/hallway/central) "tb" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/crew/dorm) @@ -2957,12 +3014,6 @@ /obj/effect/turf_decal/siding/thinplating/dark, /turf/open/floor/plasteel, /area/ship/external) -"tD" = ( -/obj/structure/chair/pew/right{ - dir = 4 - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "tH" = ( /obj/structure/cable{ icon_state = "1-4" @@ -3020,12 +3071,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/aft) -"uf" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/obj/structure/chair/comfy/grey/directional/east, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/grass, -/area/ship/hallway/central) "um" = ( /obj/structure/cable{ icon_state = "1-8" @@ -3399,6 +3444,10 @@ "wI" = ( /turf/closed/wall/mineral/titanium, /area/ship/crew/dorm) +"wO" = ( +/obj/structure/mineral_door/sandstone, +/turf/open/floor/plating/asteroid/sand/ship, +/area/ship/hallway/central) "wP" = ( /obj/structure/bed, /obj/item/bedsheet/black, @@ -3422,10 +3471,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"wV" = ( -/obj/structure/mineral_door/sandstone, -/turf/open/floor/plating/beach/sand, -/area/ship/hallway/central) "wX" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 1 @@ -3506,13 +3551,6 @@ /obj/machinery/smartfridge/food, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/crew/hydroponics) -"xz" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "xA" = ( /obj/structure/cable{ icon_state = "1-2" @@ -3580,6 +3618,23 @@ "xZ" = ( /turf/closed/wall/mineral/titanium, /area/ship/engineering) +"yb" = ( +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/light_switch{ + pixel_x = -13; + pixel_y = 23 + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) +"yc" = ( +/obj/structure/flora/tree/palm, +/obj/effect/overlay/coconut, +/turf/open/floor/plating/asteroid/sand/ship, +/area/ship/hallway/central) "yf" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -3788,10 +3843,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"zf" = ( -/obj/structure/flora/ausbushes/ppflowers, -/turf/open/floor/grass, -/area/ship/hallway/central) "zs" = ( /obj/structure/table/reinforced, /obj/item/reagent_containers/food/snacks/burger/fish, @@ -3803,6 +3854,9 @@ /obj/effect/turf_decal/corner/opaque/white/border, /turf/open/floor/plasteel, /area/ship/hallway/starboard) +"zE" = ( +/turf/open/water/ship, +/area/ship/hallway/central) "zI" = ( /turf/open/floor/pod/light, /area/ship/hallway/port) @@ -3819,18 +3873,6 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/carpet/black, /area/ship/crew/dorm) -"zP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "zQ" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/siding/wood/end{ @@ -3858,13 +3900,6 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"zW" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/obj/structure/chair/pew/left{ - dir = 4 - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "zX" = ( /obj/structure/disposalpipe/segment{ dir = 8 @@ -3989,10 +4024,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"AI" = ( -/obj/machinery/light/directional/south, -/turf/open/floor/plating/beach/water, -/area/ship/hallway/central) "AR" = ( /obj/structure/railing{ dir = 1 @@ -4110,23 +4141,6 @@ /obj/machinery/door/window/eastright, /turf/open/floor/plating, /area/ship/engineering) -"BB" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/grass, -/area/ship/hallway/central) -"BI" = ( -/obj/structure/flora/ausbushes/ywflowers, -/turf/open/floor/grass, -/area/ship/hallway/central) "BO" = ( /obj/machinery/door/airlock/public/glass, /obj/structure/cable{ @@ -4406,6 +4420,10 @@ /obj/effect/turf_decal/corner/opaque/white/border, /turf/open/floor/plasteel, /area/ship/hallway/aft) +"DN" = ( +/obj/structure/flora/ausbushes/ywflowers, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "DP" = ( /obj/machinery/atmospherics/pipe/simple/green/visible, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ @@ -4416,6 +4434,13 @@ }, /turf/open/floor/plating, /area/ship/engineering) +"DQ" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "DS" = ( /obj/structure/table/optable, /obj/machinery/defibrillator_mount/loaded{ @@ -4472,19 +4497,6 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood, /area/ship/crew/library) -"Eg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/mob/living/simple_animal/chick, -/turf/open/floor/grass, -/area/ship/hallway/central) "Ej" = ( /obj/structure/table/wood/poker, /obj/item/toy/cards/deck, @@ -4505,6 +4517,14 @@ /obj/effect/turf_decal/siding/wood/end, /turf/open/floor/wood, /area/ship/crew) +"Em" = ( +/obj/structure/bed, +/obj/effect/spawner/random/bedsheet, +/obj/effect/turf_decal/siding/wood{ + dir = 6 + }, +/turf/open/floor/wood, +/area/ship/crew) "Er" = ( /obj/structure/table/reinforced, /obj/item/table_bell, @@ -4583,6 +4603,11 @@ }, /turf/open/floor/carpet/black, /area/ship/crew/library) +"EI" = ( +/turf/open/water/ship{ + icon_state = "sandwater_t" + }, +/area/ship/hallway/central) "EM" = ( /obj/machinery/advanced_airlock_controller{ pixel_x = 25 @@ -4823,10 +4848,11 @@ /obj/structure/curtain/bounty, /turf/open/floor/plating, /area/ship/crew/office) -"Gw" = ( -/obj/structure/flora/ausbushes/ppflowers, -/obj/effect/turf_decal/weather/sand, -/turf/open/floor/grass, +"Gt" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/chair/comfy/grey/directional/east, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/grass/ship, /area/ship/hallway/central) "GA" = ( /obj/structure/disposalpipe/segment{ @@ -4871,14 +4897,6 @@ /obj/effect/turf_decal/corner/opaque/black/border, /turf/open/floor/plasteel, /area/ship/hallway/aft) -"GN" = ( -/obj/structure/bed, -/obj/effect/spawner/random/bedsheet, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/turf/open/floor/wood, -/area/ship/crew) "GO" = ( /obj/machinery/suit_storage_unit/standard_unit, /obj/effect/turf_decal/corner/opaque/lightgrey/border{ @@ -5107,6 +5125,10 @@ }, /turf/open/floor/wood, /area/ship/bridge) +"IF" = ( +/obj/item/clothing/shoes/sandal, +/turf/open/floor/plating/asteroid/sand/ship, +/area/ship/hallway/central) "IG" = ( /obj/structure/closet/crate{ name = "food crate" @@ -5133,6 +5155,12 @@ /obj/machinery/light/directional/west, /turf/open/floor/wood, /area/ship/crew/canteen) +"IM" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "IX" = ( /obj/structure/disposalpipe/segment{ dir = 8 @@ -5293,6 +5321,18 @@ "JJ" = ( /turf/open/floor/carpet/black, /area/ship/crew/office) +"JL" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "JN" = ( /obj/machinery/vending/wardrobe/jani_wardrobe, /turf/open/floor/plating, @@ -5327,10 +5367,6 @@ }, /turf/open/floor/plasteel, /area/ship/crew/janitor) -"Kd" = ( -/obj/item/toy/beach_ball, -/turf/open/floor/plating/beach/sand, -/area/ship/hallway/central) "Kh" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 4 @@ -5405,6 +5441,9 @@ /obj/item/radio/intercom/directional/east, /turf/open/floor/pod/light, /area/ship/hallway/fore) +"KN" = ( +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "KO" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/crew) @@ -5496,10 +5535,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, /turf/open/floor/carpet, /area/ship/crew/chapel) -"LD" = ( -/obj/item/reagent_containers/spray/spraytan, -/turf/open/floor/plating/beach/sand, -/area/ship/hallway/central) "LF" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 10 @@ -5523,19 +5558,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/plating, /area/ship/cargo) -"LV" = ( -/obj/structure/flora/ausbushes/brflowers, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "Md" = ( /obj/machinery/power/generator{ dir = 4 @@ -5600,10 +5622,9 @@ /obj/structure/closet/radiation, /turf/open/floor/plating, /area/ship/engineering) -"Mx" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/effect/turf_decal/weather/sand, -/turf/open/floor/grass, +"Ms" = ( +/obj/item/toy/beach_ball, +/turf/open/floor/plating/asteroid/sand/ship, /area/ship/hallway/central) "My" = ( /obj/effect/turf_decal/corner/opaque/white/border{ @@ -6153,14 +6174,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/port) -"QI" = ( -/obj/structure/bed, -/obj/effect/spawner/random/bedsheet, -/obj/effect/turf_decal/siding/wood{ - dir = 6 - }, -/turf/open/floor/wood, -/area/ship/crew) "QJ" = ( /obj/machinery/door/airlock/external{ dir = 4 @@ -6417,9 +6430,6 @@ }, /turf/open/floor/wood, /area/ship/crew/hydroponics) -"RR" = ( -/turf/open/floor/plating/beach/coastline_b, -/area/ship/hallway/central) "RS" = ( /obj/structure/window/plasma/reinforced/spawner/west, /obj/structure/window/plasma/reinforced/spawner/north, @@ -6525,6 +6535,19 @@ }, /turf/open/floor/plasteel/white, /area/ship/medical) +"SF" = ( +/obj/structure/flora/ausbushes/brflowers, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "SH" = ( /obj/structure/table/wood, /obj/effect/turf_decal/siding/wood, @@ -6548,6 +6571,14 @@ }, /turf/open/floor/plating, /area/ship/crew/janitor) +"SS" = ( +/obj/structure/bed, +/obj/effect/spawner/random/bedsheet, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/ship/crew) "ST" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable{ @@ -6594,10 +6625,6 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/plasteel, /area/ship/hallway/aft) -"Tt" = ( -/obj/effect/turf_decal/weather/sand, -/turf/open/floor/grass, -/area/ship/hallway/central) "Tw" = ( /obj/structure/cable{ icon_state = "1-2" @@ -6802,6 +6829,9 @@ }, /turf/open/floor/plating, /area/ship/engineering) +"Uz" = ( +/turf/open/floor/plating/asteroid/sand/ship, +/area/ship/hallway/central) "UE" = ( /obj/machinery/door/airlock/security{ req_access = list(1) @@ -6888,18 +6918,16 @@ }, /turf/open/floor/plating, /area/ship/engineering) +"Ve" = ( +/obj/machinery/light/directional/south, +/turf/open/water/ship, +/area/ship/hallway/central) "Vg" = ( /obj/structure/table/reinforced, /obj/machinery/microwave, /obj/effect/turf_decal/corner/opaque/white/diagonal, /turf/open/floor/plasteel, /area/ship/crew/canteen/kitchen) -"Vi" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "Vl" = ( /obj/structure/cable{ icon_state = "1-2" @@ -6937,21 +6965,6 @@ }, /turf/open/floor/circuit, /area/ship/hallway/fore) -"VE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "VF" = ( /obj/machinery/door/airlock/external{ dir = 4 @@ -7141,6 +7154,19 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/aft) +"WN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/mob/living/simple_animal/chick, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "WR" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 1 @@ -7158,10 +7184,6 @@ /obj/effect/turf_decal/corner/opaque/white/border, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"WW" = ( -/obj/structure/flora/ausbushes/brflowers, -/turf/open/floor/grass, -/area/ship/hallway/central) "WX" = ( /obj/machinery/suit_storage_unit/security, /obj/structure/cable{ @@ -7257,6 +7279,21 @@ /obj/machinery/power/apc/auto_name/directional/north, /turf/open/floor/plasteel, /area/ship/crew/janitor) +"Xp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/grass/ship, +/area/ship/hallway/central) "Xs" = ( /obj/structure/closet/secure_closet/personal/cabinet, /obj/item/clothing/under/suit/black/female, @@ -7275,28 +7312,16 @@ }, /turf/open/floor/wood, /area/ship/crew/chapel) +"XB" = ( +/turf/open/water/ship{ + icon_state = "sandwater_b" + }, +/area/ship/hallway/central) "XC" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, /obj/machinery/newscaster/directional/east, /turf/open/floor/carpet/black, /area/ship/crew) -"XI" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/grass, -/area/ship/hallway/central) -"XM" = ( -/obj/machinery/airalarm/directional/north, -/obj/structure/table/wood, -/obj/item/storage/bag/easterbasket{ - pixel_x = 5; - pixel_y = 9 - }, -/obj/item/reagent_containers/food/snacks/egg{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "XV" = ( /obj/item/kirbyplants/photosynthetic, /turf/open/floor/carpet/nanoweave/blue, @@ -7346,18 +7371,6 @@ }, /turf/open/floor/carpet/black, /area/ship/crew/dorm) -"Yh" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/machinery/light_switch{ - pixel_x = -13; - pixel_y = 23 - }, -/turf/open/floor/grass, -/area/ship/hallway/central) "Yl" = ( /obj/structure/cable{ icon_state = "2-4" @@ -7489,15 +7502,6 @@ }, /turf/open/floor/wood, /area/ship/crew/dorm) -"Zx" = ( -/obj/structure/flora/tree/palm, -/obj/effect/overlay/coconut, -/turf/open/floor/plating/beach/sand, -/area/ship/hallway/central) -"ZA" = ( -/obj/item/clothing/shoes/sandal, -/turf/open/floor/plating/beach/sand, -/area/ship/hallway/central) "ZH" = ( /obj/machinery/atmospherics/components/trinary/mixer/airmix/flipped/inverse{ dir = 1; @@ -8306,9 +8310,9 @@ pZ Qy Hx jC -GN +SS EX -QI +Em Kl IX uD @@ -8429,9 +8433,9 @@ Tz Qy Tf jC -GN +SS EX -QI +Em Kl FW yf @@ -8676,7 +8680,7 @@ Qy kl Kl RH -GN +SS dG Kl IX @@ -8838,7 +8842,7 @@ kv FX Pw Pw -wV +wO Pw Pw Pw @@ -8872,17 +8876,17 @@ vy vy vy cS -XM -tD -zW -LV -cP -gf -qx -Kd -ta -RR -AI +oi +qi +hq +SF +KN +av +Uz +Ms +EI +XB +Ve Pw on Bo @@ -8913,17 +8917,17 @@ SK SK SK RM -WW -cP -cP -BB -cP -Mx -Zx -qx -ta -RR -dN +cL +KN +KN +je +KN +mH +yc +Uz +EI +XB +zE Pw wU rI @@ -8954,17 +8958,17 @@ CD CD CD TH -cP -XI -fs -Eg -cP -Tt -qx -qx -ta -RR -dN +KN +rS +es +WN +KN +mn +Uz +Uz +EI +XB +zE Pw yn rI @@ -8995,17 +8999,17 @@ vy vy vy cS -Yh -Vi -xz -VE -cP -Gw -qx -LD -ta -RR -dN +yb +IM +DQ +Xp +KN +rZ +Uz +fH +EI +XB +zE Pw wU rI @@ -9036,17 +9040,17 @@ cS cS cS cS -uf -gM -zf -zP -BI -id -ZA -jI -ta -RR -AI +Gt +ow +hp +JL +DN +ee +IF +dA +EI +XB +Ve Pw zX hN diff --git a/_maps/shuttles/inteq/inteq_talos.dmm b/_maps/shuttles/inteq/inteq_talos.dmm index a8a0d61a43b2..14dace1773e6 100644 --- a/_maps/shuttles/inteq/inteq_talos.dmm +++ b/_maps/shuttles/inteq/inteq_talos.dmm @@ -217,6 +217,35 @@ }, /turf/open/floor/plasteel/tech, /area/ship/cargo) +"br" = ( +/obj/item/storage/backpack/industrial, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/gloves/color/yellow, +/obj/item/clothing/under/syndicate/inteq/artificer, +/obj/item/clothing/under/syndicate/inteq/skirt/artificer, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/hardhat, +/obj/item/clothing/shoes/combat, +/obj/item/storage/belt/utility/full, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/item/clothing/glasses/meson, +/obj/item/radio/intercom/directional/east, +/obj/structure/closet/secure_closet{ + anchored = 1; + icon_state = "eng_secure"; + name = "artificer's locker"; + req_access_txt = "11"; + req_one_access = null + }, +/obj/item/gear_pack/anglegrinder, +/obj/item/radio/headset/alt, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) "bx" = ( /obj/structure/cable{ icon_state = "2-8" @@ -661,35 +690,6 @@ }, /turf/open/floor/plasteel/tech, /area/ship/engineering/engine) -"es" = ( -/obj/item/storage/backpack/industrial, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/under/syndicate/inteq/artificer, -/obj/item/clothing/under/syndicate/inteq/skirt/artificer, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/hardhat, -/obj/item/clothing/shoes/combat, -/obj/item/storage/belt/utility/full, -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 8 - }, -/obj/item/clothing/glasses/meson, -/obj/item/radio/intercom/directional/east, -/obj/structure/closet/secure_closet{ - anchored = 1; - icon_state = "eng_secure"; - name = "artificer's locker"; - req_access_txt = "11"; - req_one_access = null - }, -/obj/item/gear_pack/anglegrinder, -/obj/item/radio/headset/alt, -/turf/open/floor/plasteel/tech/grid, -/area/ship/engineering) "eu" = ( /obj/machinery/cryopod{ dir = 4 @@ -4867,44 +4867,6 @@ }, /turf/open/floor/plasteel/dark, /area/ship/crew/canteen) -"EQ" = ( -/obj/item/storage/backpack/industrial, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/under/syndicate/inteq/artificer, -/obj/item/clothing/under/syndicate/inteq/skirt/artificer, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/hardhat, -/obj/item/clothing/shoes/combat, -/obj/structure/closet/secure_closet{ - anchored = 1; - icon_state = "eng_secure"; - name = "artificer's locker"; - req_access_txt = "11"; - req_one_access = null - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/power/apc/auto_name/directional/east, -/obj/machinery/light/directional/north, -/obj/item/storage/belt/utility/full, -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 8 - }, -/obj/item/clothing/glasses/meson, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 20; - pixel_y = 11 - }, -/obj/item/gear_pack/anglegrinder, -/obj/item/radio/headset/alt, -/turf/open/floor/plasteel/tech/grid, -/area/ship/engineering) "Fe" = ( /obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/layer2{ dir = 8 @@ -5226,6 +5188,23 @@ }, /turf/open/floor/carpet/black, /area/ship/crew/dorm) +"GU" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8; + filter_types = list("n2","co2","bz","water_vapor","miasma","freon","tritium","n20"); + id_tag = null + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/dark/hidden/layer1{ + dir = 10 + }, +/turf/open/floor/engine/vacuum, +/area/ship/engineering/engine) "GY" = ( /obj/structure/cable/yellow{ icon_state = "2-8" @@ -5506,23 +5485,6 @@ /obj/effect/turf_decal/siding/thinplating, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/port) -"Je" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8; - filter_types = list("n2","co2","bz","water_vapor","miasma","freon","pluox","tritium","n20","no2","nob"); - id_tag = null - }, -/obj/machinery/atmospherics/pipe/simple/purple/hidden{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/dark/hidden/layer1{ - dir = 10 - }, -/turf/open/floor/engine/vacuum, -/area/ship/engineering/engine) "Jk" = ( /obj/effect/spawner/random/maintenance, /turf/open/floor/plating/airless, @@ -5773,6 +5735,44 @@ }, /turf/open/floor/plating/airless, /area/ship/storage/starboard) +"KW" = ( +/obj/item/storage/backpack/industrial, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/gloves/color/yellow, +/obj/item/clothing/under/syndicate/inteq/artificer, +/obj/item/clothing/under/syndicate/inteq/skirt/artificer, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/hardhat, +/obj/item/clothing/shoes/combat, +/obj/structure/closet/secure_closet{ + anchored = 1; + icon_state = "eng_secure"; + name = "artificer's locker"; + req_access_txt = "11"; + req_one_access = null + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/apc/auto_name/directional/east, +/obj/machinery/light/directional/north, +/obj/item/storage/belt/utility/full, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/item/clothing/glasses/meson, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 20; + pixel_y = 11 + }, +/obj/item/gear_pack/anglegrinder, +/obj/item/radio/headset/alt, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) "KY" = ( /obj/effect/turf_decal/borderfloor, /obj/machinery/door/airlock/public/glass{ @@ -6256,35 +6256,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, /turf/open/floor/plasteel/tech, /area/ship/engineering) -"OJ" = ( -/obj/item/storage/backpack/industrial, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/under/syndicate/inteq/artificer, -/obj/item/clothing/under/syndicate/inteq/skirt/artificer, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/hardhat, -/obj/item/clothing/shoes/combat, -/obj/structure/railing, -/obj/item/storage/belt/utility/full, -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 8 - }, -/obj/item/clothing/glasses/meson, -/obj/structure/closet/secure_closet{ - anchored = 1; - icon_state = "eng_secure"; - name = "artificer's locker"; - req_access_txt = "11"; - req_one_access = null - }, -/obj/item/gear_pack/anglegrinder, -/obj/item/radio/headset/alt, -/turf/open/floor/plasteel/tech/grid, -/area/ship/engineering) "OK" = ( /obj/machinery/cryopod{ dir = 8 @@ -6536,21 +6507,6 @@ }, /turf/open/floor/engine/air, /area/ship/engineering/engine) -"QP" = ( -/obj/structure/rack, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster/official/ion_carbine{ - pixel_x = -32 - }, -/obj/item/attachment/rail_light, -/obj/item/attachment/rail_light, -/obj/item/attachment/rail_light, -/turf/open/floor/plasteel/tech/grid, -/area/ship/security/armory) "QR" = ( /obj/effect/turf_decal/corner/opaque/yellow, /obj/effect/turf_decal/corner/opaque/brown{ @@ -7281,6 +7237,37 @@ /obj/effect/spawner/structure/window/plasma/reinforced/plastitanium, /turf/open/floor/plating, /area/ship/crew) +"VD" = ( +/obj/structure/closet/secure_closet{ + anchored = 1; + icon_state = "ce"; + name = "honorable artificer's locker"; + req_access_txt = "56" + }, +/obj/item/clothing/under/syndicate/inteq/artificer, +/obj/item/clothing/under/syndicate/inteq/skirt/artificer, +/obj/item/storage/backpack/industrial, +/obj/item/clothing/suit/toggle/industrial, +/obj/item/clothing/head/hardhat/white, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/shoes/combat, +/obj/item/clothing/mask/gas/sechailer/balaclava/inteq, +/obj/item/clothing/gloves/combat, +/obj/item/megaphone/cargo{ + name = "engineering megaphone" + }, +/obj/item/stamp/inteq/artificer, +/obj/item/clothing/glasses/meson/engine, +/obj/item/clothing/glasses/welding, +/obj/item/pipe_dispenser, +/obj/item/storage/belt/utility/chief{ + name = "honorable artificer's toolbelt" + }, +/obj/machinery/airalarm/directional/west, +/obj/item/gear_pack/anglegrinder/energy, +/obj/item/radio/headset/alt, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/communications) "VG" = ( /obj/structure/cable{ icon_state = "4-8" @@ -7438,6 +7425,35 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/carpet/black, /area/ship/crew/dorm) +"WE" = ( +/obj/item/storage/backpack/industrial, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/gloves/color/yellow, +/obj/item/clothing/under/syndicate/inteq/artificer, +/obj/item/clothing/under/syndicate/inteq/skirt/artificer, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/hardhat, +/obj/item/clothing/shoes/combat, +/obj/structure/railing, +/obj/item/storage/belt/utility/full, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/item/clothing/glasses/meson, +/obj/structure/closet/secure_closet{ + anchored = 1; + icon_state = "eng_secure"; + name = "artificer's locker"; + req_access_txt = "11"; + req_one_access = null + }, +/obj/item/gear_pack/anglegrinder, +/obj/item/radio/headset/alt, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) "WF" = ( /obj/effect/turf_decal/corner/opaque/yellow, /obj/effect/turf_decal/corner/opaque/brown{ @@ -7501,6 +7517,21 @@ "Xg" = ( /turf/open/floor/carpet/black, /area/ship/crew/dorm) +"Xk" = ( +/obj/structure/rack, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/official/ion_carbine{ + pixel_x = -32 + }, +/obj/item/attachment/rail_light, +/obj/item/attachment/rail_light, +/obj/item/attachment/rail_light, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security/armory) "Xl" = ( /obj/machinery/power/shuttle/engine/fueled/plasma{ dir = 4 @@ -7803,37 +7834,6 @@ }, /turf/open/floor/plasteel/tech/grid, /area/ship/engineering/communications) -"ZA" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - icon_state = "ce"; - name = "honorable artificer's locker"; - req_access_txt = "56" - }, -/obj/item/clothing/under/syndicate/inteq/artificer, -/obj/item/clothing/under/syndicate/inteq/skirt/artificer, -/obj/item/storage/backpack/industrial, -/obj/item/clothing/suit/toggle/industrial, -/obj/item/clothing/head/hardhat/white, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/shoes/combat, -/obj/item/clothing/mask/gas/sechailer/balaclava/inteq, -/obj/item/clothing/gloves/combat, -/obj/item/megaphone/cargo{ - name = "engineering megaphone" - }, -/obj/item/stamp/inteq/artificer, -/obj/item/clothing/glasses/meson/engine, -/obj/item/clothing/glasses/welding, -/obj/item/pipe_dispenser, -/obj/item/storage/belt/utility/chief{ - name = "honorable artificer's toolbelt" - }, -/obj/machinery/airalarm/directional/west, -/obj/item/gear_pack/anglegrinder/energy, -/obj/item/radio/headset/alt, -/turf/open/floor/plasteel/tech/grid, -/area/ship/engineering/communications) "ZB" = ( /obj/machinery/firealarm/directional/west, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ @@ -8015,7 +8015,7 @@ iD Lo dw ge -Je +GU Yp ZE rV @@ -8074,7 +8074,7 @@ ZU eC Zu SK -ZA +VD vp HB MS @@ -8178,9 +8178,9 @@ aD MC zR vp -EQ -es -OJ +KW +br +WE Xn gP qh @@ -8601,7 +8601,7 @@ hT sq Rg Hq -QP +Xk bI Hv Hq diff --git a/_maps/shuttles/minutemen/minutemen_atlas.dmm b/_maps/shuttles/minutemen/minutemen_atlas.dmm index 1b9d5dc2dffb..ce0615b05334 100644 --- a/_maps/shuttles/minutemen/minutemen_atlas.dmm +++ b/_maps/shuttles/minutemen/minutemen_atlas.dmm @@ -2103,6 +2103,9 @@ /obj/structure/dresser{ dir = 1 }, +/obj/item/reagent_containers/food/drinks/beaglemug{ + pixel_y = 8 + }, /turf/open/floor/carpet/blue, /area/ship/crew) "vW" = ( diff --git a/_maps/shuttles/nanotrasen/nanotrasen_gecko.dmm b/_maps/shuttles/nanotrasen/nanotrasen_gecko.dmm index 1e65ca7f3773..5c143cbbb570 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_gecko.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_gecko.dmm @@ -1,4 +1,12 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"ad" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/starboard) "ae" = ( /obj/effect/turf_decal/industrial/warning, /obj/effect/turf_decal/number/one{ @@ -79,6 +87,16 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plating, /area/ship/maintenance/fore) +"aE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel, +/area/ship/hallway/aft) "aK" = ( /obj/machinery/atmospherics/pipe/simple/green/hidden, /obj/machinery/atmospherics/pipe/manifold/purple/hidden/layer1{ @@ -129,11 +147,15 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/aft) -"bh" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/ship/maintenance/fore) +"be" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/industrial/warning, +/obj/effect/spawner/random/salvage/half, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/starboard) "bk" = ( /obj/structure/sign/number/nine{ color = "#00000F"; @@ -166,6 +188,12 @@ }, /turf/open/floor/plating, /area/ship/bridge) +"bt" = ( +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "bw" = ( /obj/machinery/light/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ @@ -189,6 +217,18 @@ /obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo/starboard) +"bD" = ( +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/starboard) "bH" = ( /turf/closed/wall, /area/ship/maintenance/port) @@ -224,6 +264,13 @@ /obj/item/spacecash/bundle/c100, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) +"bP" = ( +/obj/effect/spawner/random/salvage/half, +/obj/effect/turf_decal/trimline/transparent/white/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ship/cargo/starboard) "bQ" = ( /obj/effect/turf_decal/siding/white{ dir = 4 @@ -234,6 +281,12 @@ /obj/machinery/atmospherics/pipe/layer_manifold, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/central) +"bR" = ( +/obj/effect/spawner/random/maintenance, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/ship/maintenance/port) "bU" = ( /turf/closed/wall, /area/ship/bridge) @@ -242,13 +295,6 @@ /obj/effect/decal/cleanable/dirt, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/external) -"ch" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/ship/maintenance/fore) "cj" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, @@ -262,6 +308,16 @@ dir = 1 }, /area/ship/maintenance/starboard) +"cs" = ( +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/button/ignition/incinerator/atmos{ + dir = 4; + pixel_x = -23; + pixel_y = -3 + }, +/turf/open/floor/plating, +/area/ship/engineering/engine) "cv" = ( /obj/machinery/igniter/incinerator_atmos, /obj/effect/decal/cleanable/dirt, @@ -318,12 +374,6 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/maintenance/fore) -"cP" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/fore) "cX" = ( /obj/machinery/door/airlock/mining{ name = "Starboard Cargo Bay" @@ -356,11 +406,6 @@ "dl" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/maintenance/fore) -"dp" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/starboard) "dq" = ( /obj/structure/cable{ icon_state = "4-8" @@ -434,13 +479,11 @@ /obj/effect/turf_decal/industrial/outline/yellow, /turf/open/floor/plasteel, /area/ship/cargo/starboard) -"ej" = ( -/obj/effect/spawner/random/salvage/half, +"eg" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/borderfloor, -/obj/structure/extinguisher_cabinet/directional/west, -/turf/open/floor/plasteel, -/area/ship/hallway/aft) +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plating, +/area/ship/engineering/engine) "ek" = ( /obj/structure/cable{ icon_state = "1-2" @@ -558,11 +601,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/engine/hull, /area/ship/external) -"eQ" = ( +"eZ" = ( /obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ + dir = 6 + }, /turf/open/floor/plating, /area/ship/maintenance/fore) "fb" = ( @@ -656,15 +700,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/engineering/atmospherics) -"ga" = ( -/obj/structure/bed, -/obj/effect/spawner/random/bedsheet, -/obj/structure/curtain/bounty, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ship/crew) "ge" = ( /obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ dir = 9 @@ -675,16 +710,6 @@ }, /turf/open/floor/plating, /area/ship/engineering/engine) -"gf" = ( -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/port) "gg" = ( /obj/effect/turf_decal/industrial/warning{ dir = 1 @@ -695,30 +720,19 @@ }, /turf/open/floor/plasteel/patterned, /area/ship/cargo/port) -"gh" = ( -/obj/effect/spawner/random/salvage/half, +"gi" = ( /obj/structure/cable{ - icon_state = "1-2" + icon_state = "2-4" }, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/starboard) +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/ship/maintenance/port) "gr" = ( /obj/machinery/light/small/directional/east, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/maintenance/fore) -"gw" = ( -/obj/effect/turf_decal/box/corners{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ - dir = 1 - }, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/starboard) "gB" = ( /obj/structure/sign/warning/nosmoking, /turf/closed/wall, @@ -769,18 +783,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/engine/hull, /area/ship/external) -"gQ" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/turf_decal/industrial/warning, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/fore) "gS" = ( /turf/closed/wall/mineral/titanium, /area/ship/bridge) @@ -795,6 +797,14 @@ /obj/effect/decal/fakelattice, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/engineering/engine) +"ho" = ( +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "hs" = ( /obj/machinery/atmospherics/components/binary/valve/digital{ name = "Engine Oxygen Input 1" @@ -813,11 +823,11 @@ }, /turf/open/floor/plasteel/tech/grid, /area/ship/crew) -"hA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/port) +"hI" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plating, +/area/ship/maintenance/port) "hL" = ( /obj/structure/cable{ icon_state = "2-8" @@ -827,6 +837,26 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/maintenance/port) +"hP" = ( +/obj/structure/table/reinforced, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/plasteel/grimy, +/area/ship/crew) +"hQ" = ( +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "hT" = ( /obj/effect/decal/fakelattice, /obj/machinery/power/smes/engineering, @@ -855,6 +885,11 @@ }, /turf/open/floor/plating, /area/ship/engineering/engine) +"ia" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "if" = ( /obj/machinery/light/directional/east, /obj/effect/turf_decal/industrial/warning{ @@ -891,25 +926,6 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/ship/engineering/atmospherics) -"iH" = ( -/obj/machinery/air_sensor/atmos/incinerator_tank{ - id_tag = "gecko_burn_sensor" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ - dir = 4; - filter_types = list("n2","co2","bz","water_vapor","miasma","freon","pluox","tritium","n20","no2","nob"); - id_tag = "incinerator_out" - }, -/turf/open/floor/engine/airless, -/area/ship/engineering/engine) -"iJ" = ( -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/starboard) "iK" = ( /obj/structure/cable{ icon_state = "4-8" @@ -927,14 +943,6 @@ }, /turf/open/floor/plasteel/tech, /area/ship/bridge) -"iT" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/port) "iZ" = ( /obj/item/radio/intercom/wideband/directional/south, /obj/structure/table/reinforced, @@ -942,14 +950,6 @@ /obj/item/megaphone/command, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) -"jc" = ( -/obj/structure/table/reinforced, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/plasteel/grimy, -/area/ship/crew) "jd" = ( /obj/structure/cable{ icon_state = "1-8" @@ -1142,17 +1142,21 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/engineering/engine) -"lb" = ( -/obj/structure/bed, -/obj/effect/spawner/random/bedsheet, -/obj/structure/curtain/bounty, -/turf/open/floor/plasteel/grimy, -/area/ship/crew) -"lE" = ( -/obj/effect/turf_decal/box/corners, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/starboard) +"lg" = ( +/obj/machinery/air_sensor/atmos/incinerator_tank{ + id_tag = "gecko_burn_sensor" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4; + filter_types = list("n2","co2","bz","water_vapor","miasma","freon","tritium","n20"); + id_tag = "incinerator_out" + }, +/turf/open/floor/engine/airless, +/area/ship/engineering/engine) "lM" = ( /obj/effect/turf_decal/box/corners{ dir = 4 @@ -1161,6 +1165,12 @@ /obj/structure/ore_box, /turf/open/floor/plasteel/patterned/cargo_one, /area/ship/cargo/port) +"lN" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel, +/area/ship/cargo/starboard) "lS" = ( /obj/structure/tank_dispenser/oxygen, /obj/structure/sign/warning/vacuum/external{ @@ -1174,14 +1184,6 @@ }, /turf/open/floor/plasteel/dark, /area/ship/hallway/central) -"lT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) "lU" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable{ @@ -1217,11 +1219,6 @@ }, /turf/open/floor/plasteel, /area/ship/cargo/port) -"mb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/starboard) "mm" = ( /obj/machinery/door/poddoor/shutters{ id = "gecko_port" @@ -1289,6 +1286,10 @@ /obj/machinery/light/directional/south, /turf/open/floor/plasteel, /area/ship/hallway/aft) +"mP" = ( +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "mS" = ( /obj/machinery/atmospherics/pipe/simple/green/hidden{ dir = 10 @@ -1327,6 +1328,15 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/tech, /area/ship/engineering/atmospherics) +"nn" = ( +/obj/structure/bed, +/obj/effect/spawner/random/bedsheet, +/obj/structure/curtain/bounty, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ship/crew) "nq" = ( /obj/machinery/atmospherics/components/unary/portables_connector/layer2{ dir = 8 @@ -1398,32 +1408,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/central) -"oJ" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/fore) -"oM" = ( -/obj/machinery/light_switch{ - dir = 1; - pixel_x = 5; - pixel_y = -25 - }, -/obj/item/reagent_containers/food/snacks/canned/beans, -/obj/item/reagent_containers/food/snacks/canned/beans, -/obj/item/reagent_containers/food/snacks/canned/beans, -/obj/item/reagent_containers/food/snacks/canned/beans, -/obj/structure/closet/crate, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/obj/effect/spawner/random/food_or_drink/ration, -/turf/open/floor/plasteel/patterned, -/area/ship/storage) "oR" = ( /obj/effect/turf_decal/industrial/warning{ dir = 1 @@ -1469,6 +1453,17 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) +"po" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/port) "pr" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 1 @@ -1484,6 +1479,14 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/fore) +"pv" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/port) "pD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 6 @@ -1510,6 +1513,15 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/ship/maintenance/fore) +"pL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/obj/machinery/airalarm/directional/south, +/obj/effect/turf_decal/trimline/transparent/white/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ship/cargo/port) "pO" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 8 @@ -1554,6 +1566,14 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/plating, /area/ship/maintenance/fore) +"pY" = ( +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/starboard) "qb" = ( /obj/machinery/atmospherics/pipe/simple/dark/hidden/layer5{ dir = 8 @@ -1577,20 +1597,14 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/plasteel/patterned, /area/ship/storage) -"qn" = ( -/obj/machinery/power/apc/auto_name/directional/west, -/obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_y = 12; - pixel_x = -20 +"qe" = ( +/obj/effect/turf_decal/box/corners{ + dir = 1 }, -/turf/open/floor/plating, -/area/ship/maintenance/fore) +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "qp" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/cable{ @@ -1603,11 +1617,6 @@ }, /turf/open/floor/plating, /area/ship/maintenance/port) -"qu" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/fore) "qv" = ( /obj/effect/turf_decal/borderfloor, /obj/machinery/status_display/shuttle{ @@ -1618,6 +1627,18 @@ }, /turf/open/floor/plasteel/dark, /area/ship/bridge) +"qx" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/industrial/warning, +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/starboard) "qB" = ( /obj/structure/cable{ icon_state = "2-4" @@ -1680,22 +1701,6 @@ "qO" = ( /turf/closed/wall/mineral/titanium, /area/ship/maintenance/fore) -"qT" = ( -/obj/effect/turf_decal/box/corners{ - dir = 1 - }, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) -"qY" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/ship/maintenance/fore) "rd" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -1814,6 +1819,25 @@ }, /turf/open/floor/plasteel/dark, /area/ship/bridge) +"rQ" = ( +/obj/machinery/atmospherics/pipe/simple/green/hidden{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 9 + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plating, +/area/ship/engineering/engine) "rU" = ( /obj/effect/turf_decal/industrial/warning/fulltile, /obj/effect/decal/cleanable/dirt, @@ -1822,6 +1846,16 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/central) +"rY" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plasteel/stairs{ + dir = 1 + }, +/area/ship/maintenance/starboard) "sg" = ( /obj/machinery/door/airlock/mining{ frequency = 1331; @@ -1871,6 +1905,20 @@ /obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo/port) +"sB" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/effect/spawner/random/maintenance, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/light_switch{ + dir = 4; + pixel_y = 12; + pixel_x = -20 + }, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "sJ" = ( /obj/machinery/atmospherics/pipe/simple/green/visible, /obj/machinery/atmospherics/pipe/simple/dark/visible/layer5{ @@ -1942,6 +1990,14 @@ }, /turf/open/floor/plating, /area/ship/bridge) +"tf" = ( +/obj/machinery/light/directional/north, +/obj/effect/spawner/random/salvage/half, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ship/hallway/aft) "tB" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/maintenance/port) @@ -1950,20 +2006,6 @@ /obj/machinery/recharger, /turf/open/floor/plasteel/telecomms_floor, /area/ship/engineering/communications) -"tN" = ( -/obj/effect/turf_decal/box/corners{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 9 - }, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/starboard) "tQ" = ( /obj/machinery/light/directional/west, /obj/effect/turf_decal/industrial/warning, @@ -2073,15 +2115,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/fore) -"uP" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/light/small/directional/south, -/obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/starboard) "uW" = ( /obj/effect/turf_decal/industrial/warning, /obj/effect/decal/cleanable/dirt, @@ -2112,10 +2145,11 @@ /obj/item/storage/box/bodybags, /turf/open/floor/plasteel/patterned, /area/ship/storage) -"vi" = ( -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/ship/maintenance/fore) +"vd" = ( +/obj/effect/spawner/random/salvage/half, +/obj/effect/turf_decal/industrial/outline/yellow, +/turf/open/floor/plasteel, +/area/ship/cargo/port) "vl" = ( /obj/effect/turf_decal/number/five{ dir = 4 @@ -2157,14 +2191,6 @@ }, /turf/open/floor/plastic, /area/ship/crew/toilet) -"vG" = ( -/obj/effect/spawner/random/salvage/half, -/obj/effect/turf_decal/borderfloor{ - dir = 1 - }, -/obj/machinery/airalarm/directional/east, -/turf/open/floor/plasteel, -/area/ship/hallway/aft) "vJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 @@ -2266,11 +2292,6 @@ }, /turf/open/floor/plasteel/tech, /area/ship/engineering/communications) -"wP" = ( -/obj/effect/spawner/random/salvage/half, -/obj/effect/turf_decal/industrial/outline/yellow, -/turf/open/floor/plasteel, -/area/ship/cargo/port) "wR" = ( /obj/machinery/light/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, @@ -2293,12 +2314,6 @@ }, /turf/open/floor/plating, /area/ship/engineering/engine) -"xd" = ( -/obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/ship/maintenance/port) "xh" = ( /obj/structure/cable{ icon_state = "0-4" @@ -2319,27 +2334,49 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, -/turf/open/floor/plasteel/patterned/grid, -/area/ship/hallway/central) -"xm" = ( -/obj/effect/turf_decal/industrial/outline/yellow, -/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/patterned/grid, +/area/ship/hallway/central) +"xm" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/cargo/starboard) +"xr" = ( +/obj/effect/turf_decal/trimline/transparent/white/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ship/cargo/port) +"xw" = ( +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 5; + pixel_y = -25 + }, +/obj/item/reagent_containers/food/snacks/canned/beans, +/obj/item/reagent_containers/food/snacks/canned/beans, +/obj/item/reagent_containers/food/snacks/canned/beans, +/obj/item/reagent_containers/food/snacks/canned/beans, +/obj/structure/closet/crate, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/obj/effect/spawner/random/food_or_drink/ration, +/turf/open/floor/plasteel/patterned, +/area/ship/storage) +"xy" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/spawner/random/maintenance, /obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel, -/area/ship/cargo/starboard) -"xr" = ( -/obj/effect/turf_decal/trimline/transparent/white/filled/warning{ - dir = 4 +/obj/structure/sign/warning/electricshock{ + pixel_y = -32 }, -/turf/open/floor/plasteel, -/area/ship/cargo/port) -"xG" = ( -/obj/item/radio/intercom/directional/north, -/obj/effect/spawner/random/salvage/half, -/obj/effect/turf_decal/industrial/outline/yellow, -/turf/open/floor/plasteel, -/area/ship/cargo/port) +/turf/open/floor/plating, +/area/ship/maintenance/port) "xJ" = ( /obj/effect/spawner/structure/window/shutters, /turf/open/floor/plating, @@ -2392,16 +2429,6 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/fore) -"ye" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plasteel/stairs{ - dir = 1 - }, -/area/ship/maintenance/starboard) "yj" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -2430,6 +2457,18 @@ dir = 4 }, /area/ship/storage) +"yr" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/turf_decal/industrial/warning, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "yw" = ( /obj/machinery/door/airlock/maintenance_hatch{ dir = 4 @@ -2449,13 +2488,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/maintenance/fore) -"yD" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plasteel/stairs, -/area/ship/maintenance/port) "yG" = ( /obj/effect/turf_decal/siding/white, /obj/effect/turf_decal/siding/white{ @@ -2466,6 +2498,13 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/crew) +"yI" = ( +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/starboard) "yM" = ( /obj/machinery/light/small/directional/south, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ @@ -2474,6 +2513,15 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plastic, /area/ship/crew/toilet) +"yO" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plating, +/area/ship/maintenance/starboard) "yQ" = ( /obj/effect/turf_decal/industrial/warning, /obj/effect/decal/cleanable/dirt, @@ -2523,12 +2571,8 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/engineering/communications) -"zv" = ( +"zs" = ( /obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/ntspaceworks_big/six{ - dir = 4 - }, /turf/open/floor/plating, /area/ship/engineering/engine) "zE" = ( @@ -2600,6 +2644,19 @@ /obj/machinery/atmospherics/pipe/simple/green/hidden, /turf/open/floor/plating, /area/ship/engineering/engine) +"Af" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plating, +/area/ship/maintenance/fore) +"Ar" = ( +/obj/item/radio/intercom/directional/north, +/obj/effect/spawner/random/salvage/half, +/obj/effect/turf_decal/industrial/outline/yellow, +/turf/open/floor/plasteel, +/area/ship/cargo/port) "As" = ( /obj/structure/cable{ icon_state = "4-8" @@ -2636,11 +2693,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/engineering/engine) -"AD" = ( -/obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/ship/maintenance/starboard) "AG" = ( /obj/machinery/atmospherics/pipe/manifold/cyan{ dir = 4 @@ -2681,12 +2733,6 @@ }, /turf/open/floor/plasteel/patterned, /area/ship/cargo/starboard) -"AN" = ( -/obj/item/radio/intercom/directional/south, -/obj/effect/turf_decal/industrial/outline/yellow, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel, -/area/ship/cargo/starboard) "AW" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -2709,6 +2755,13 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/plating, /area/ship/engineering/engine) +"Bk" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "BB" = ( /obj/machinery/atmospherics/pipe/layer_manifold{ dir = 4 @@ -2728,13 +2781,6 @@ }, /turf/open/floor/plasteel/tech/grid, /area/ship/crew) -"BM" = ( -/obj/effect/spawner/random/salvage/half, -/obj/effect/turf_decal/trimline/transparent/white/filled/warning{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ship/cargo/starboard) "BP" = ( /obj/effect/turf_decal/industrial/loading{ dir = 1 @@ -2747,29 +2793,6 @@ }, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/maintenance/fore) -"BV" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/port) -"Cc" = ( -/obj/machinery/light/directional/west, -/obj/effect/turf_decal/industrial/warning, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/starboard) "Ce" = ( /obj/effect/turf_decal/industrial/fire{ dir = 8 @@ -2835,6 +2858,11 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/maintenance/fore) +"CC" = ( +/obj/effect/turf_decal/box/corners, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/starboard) "CE" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, @@ -2930,6 +2958,11 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/maintenance/fore) +"Di" = ( +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/starboard) "Du" = ( /obj/machinery/firealarm/directional/south, /obj/effect/decal/cleanable/dirt, @@ -2948,6 +2981,14 @@ }, /turf/open/floor/plasteel, /area/ship/cargo/starboard) +"DI" = ( +/obj/effect/spawner/random/salvage/half, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/obj/machinery/airalarm/directional/east, +/turf/open/floor/plasteel, +/area/ship/hallway/aft) "DQ" = ( /obj/machinery/door/poddoor/shutters{ id = "gecko_starboard" @@ -3029,6 +3070,12 @@ }, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/maintenance/fore) +"Ex" = ( +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel, +/area/ship/cargo/starboard) "EA" = ( /obj/machinery/light/directional/south, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ @@ -3076,12 +3123,18 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/aft) -"EK" = ( +"EL" = ( /obj/effect/turf_decal/box/corners{ - dir = 8 + dir = 1 }, +/obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, /turf/open/floor/plasteel/patterned/cargo_one, /area/ship/cargo/starboard) "EM" = ( @@ -3224,6 +3277,14 @@ }, /turf/open/floor/plating, /area/ship/engineering/engine) +"GK" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "GM" = ( /obj/machinery/atmospherics/components/unary/tank/toxins{ dir = 4 @@ -3343,18 +3404,18 @@ /obj/machinery/modular_computer/console/preset/id, /turf/open/floor/plasteel/dark, /area/ship/bridge) -"HK" = ( -/obj/machinery/light/directional/north, +"HA" = ( /obj/effect/spawner/random/salvage/half, -/obj/effect/turf_decal/borderfloor{ - dir = 1 +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/starboard) +"HQ" = ( +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/ntspaceworks_big/six{ + dir = 4 }, -/turf/open/floor/plasteel, -/area/ship/hallway/aft) -"HN" = ( -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) +/turf/open/floor/plating, +/area/ship/engineering/engine) "HT" = ( /obj/machinery/light/small/directional/north, /obj/structure/cable{ @@ -3378,6 +3439,13 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/central) +"Ie" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plasteel/stairs, +/area/ship/maintenance/port) "Ig" = ( /obj/machinery/light/directional/north, /obj/structure/closet/secure_closet{ @@ -3431,15 +3499,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/aft) -"In" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/ship/maintenance/starboard) "Is" = ( /obj/effect/turf_decal/borderfloor{ dir = 1 @@ -3527,6 +3586,19 @@ "Jc" = ( /turf/closed/wall, /area/ship/maintenance/fore) +"Ji" = ( +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "Jj" = ( /obj/effect/turf_decal/siding/white{ dir = 4 @@ -3540,12 +3612,6 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/central) -"Jk" = ( -/obj/effect/turf_decal/industrial/outline/yellow, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel, -/area/ship/cargo/starboard) "Jn" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /obj/effect/turf_decal/siding/white{ @@ -3564,13 +3630,6 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/plasteel, /area/ship/hallway/fore) -"JD" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/ship/maintenance/fore) "JL" = ( /obj/structure/closet/firecloset/full, /obj/effect/turf_decal/industrial/outline/yellow, @@ -3627,6 +3686,11 @@ /obj/effect/decal/cleanable/dirt, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/maintenance/port) +"Km" = ( +/obj/effect/spawner/random/maintenance, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/ship/maintenance/starboard) "Ko" = ( /obj/structure/table/reinforced, /obj/machinery/microwave, @@ -3698,6 +3762,24 @@ }, /turf/open/floor/plating, /area/ship/maintenance/fore) +"Le" = ( +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/port) +"Ln" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "Lo" = ( /turf/closed/wall, /area/ship/cargo/starboard) @@ -3708,40 +3790,21 @@ /turf/open/floor/plating, /area/ship/engineering/engine) "Lr" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/effect/turf_decal/siding/yellow, -/obj/structure/railing, -/turf/open/floor/plasteel/stairs{ - dir = 8 - }, -/area/ship/engineering/engine) -"Lw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/ship/maintenance/fore) -"LH" = ( -/obj/machinery/atmospherics/pipe/simple/green/hidden{ - dir = 9 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 5 +/obj/structure/cable/yellow{ + icon_state = "1-4" }, -/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ - dir = 9 +/obj/effect/turf_decal/siding/yellow, +/obj/structure/railing, +/turf/open/floor/plasteel/stairs{ + dir = 8 }, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, /area/ship/engineering/engine) +"Lw" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "LK" = ( /obj/machinery/cryopod{ dir = 4 @@ -3755,6 +3818,14 @@ /obj/effect/decal/cleanable/dirt, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/maintenance/starboard) +"LP" = ( +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/starboard) "LU" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 @@ -3767,17 +3838,6 @@ }, /turf/open/floor/plasteel, /area/ship/cargo/starboard) -"LY" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/sign/warning/electricshock{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/ship/maintenance/starboard) "LZ" = ( /obj/effect/turf_decal/borderfloor, /turf/open/floor/plasteel, @@ -3852,6 +3912,32 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/aft) +"MJ" = ( +/obj/effect/spawner/random/salvage/half, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/borderfloor, +/obj/structure/extinguisher_cabinet/directional/west, +/turf/open/floor/plasteel, +/area/ship/hallway/aft) +"MR" = ( +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/ship/maintenance/fore) +"MW" = ( +/obj/effect/spawner/random/salvage/half, +/obj/machinery/firealarm/directional/north, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/starboard) +"MY" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/light/small/directional/south, +/obj/effect/spawner/random/maintenance, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/starboard) "Nq" = ( /obj/machinery/firealarm/directional/north, /obj/effect/turf_decal/borderfloor{ @@ -3873,11 +3959,6 @@ /obj/effect/turf_decal/borderfloor, /turf/open/floor/plasteel, /area/ship/hallway/aft) -"Nz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) "NC" = ( /obj/machinery/door/poddoor/shutters{ id = "gecko_starboard" @@ -3899,6 +3980,11 @@ "NP" = ( /turf/open/floor/plating, /area/ship/maintenance/fore) +"NX" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/port) "Oe" = ( /obj/machinery/light/directional/north, /obj/effect/turf_decal/industrial/outline/yellow, @@ -3908,6 +3994,13 @@ }, /turf/open/floor/plasteel, /area/ship/cargo/port) +"Oh" = ( +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "Om" = ( /obj/machinery/atmospherics/components/unary/tank/oxygen{ dir = 8 @@ -3926,6 +4019,15 @@ /obj/machinery/atmospherics/pipe/simple/supplymain/visible/layer2, /turf/open/floor/plasteel/tech, /area/ship/engineering/atmospherics) +"Os" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "Ov" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/cable{ @@ -3938,18 +4040,6 @@ /obj/machinery/door/firedoor/border_only, /turf/open/floor/plasteel/tech/techmaint, /area/ship/maintenance/fore) -"Ow" = ( -/obj/effect/turf_decal/industrial/warning, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/arrows{ - dir = 1 - }, -/obj/effect/spawner/random/salvage/half, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/starboard) "OB" = ( /obj/structure/sign/warning/nosmoking, /turf/closed/wall, @@ -3968,11 +4058,14 @@ }, /turf/open/floor/engine/hull/reinforced, /area/ship/external) -"OZ" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/ship/engineering/engine) +"OV" = ( +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/effect/spawner/random/salvage/half, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/port) "Pc" = ( /obj/effect/spawner/structure/window/shutters, /turf/open/floor/plating, @@ -4076,14 +4169,17 @@ "PF" = ( /turf/closed/wall, /area/ship/engineering/engine) -"PG" = ( +"PM" = ( /obj/structure/cable{ icon_state = "4-8" }, /obj/effect/spawner/random/trash/grille_or_waste, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/warning/electricshock{ + pixel_y = 32 + }, /turf/open/floor/plating, -/area/ship/maintenance/fore) +/area/ship/maintenance/starboard) "PQ" = ( /obj/machinery/light/directional/east, /obj/structure/chair/comfy/shuttle{ @@ -4156,13 +4252,6 @@ }, /turf/open/floor/plasteel/tech, /area/ship/engineering/atmospherics) -"Qv" = ( -/obj/effect/turf_decal/box/corners{ - dir = 4 - }, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/starboard) "Qz" = ( /obj/machinery/door/airlock/command{ name = "Communications" @@ -4211,6 +4300,13 @@ }, /turf/open/floor/plating, /area/ship/engineering/engine) +"QM" = ( +/obj/effect/spawner/random/salvage/half, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/starboard) "QY" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 @@ -4239,14 +4335,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/storage) -"Rc" = ( -/obj/effect/turf_decal/box/corners{ - dir = 8 - }, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/starboard) "Rh" = ( /obj/machinery/atmospherics/pipe/simple/dark/hidden/layer5{ dir = 8 @@ -4315,15 +4403,6 @@ }, /turf/open/floor/plasteel/tech, /area/ship/engineering/atmospherics) -"Sa" = ( -/obj/machinery/light/directional/east, -/obj/effect/turf_decal/industrial/warning, -/obj/effect/spawner/random/salvage/half, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/starboard) "Se" = ( /obj/structure/chair/comfy/shuttle, /obj/effect/landmark/start/assistant, @@ -4333,16 +4412,6 @@ }, /turf/open/floor/plasteel/grimy, /area/ship/crew) -"Sj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ - dir = 8 - }, -/obj/effect/turf_decal/borderfloor{ - dir = 1 - }, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel, -/area/ship/hallway/aft) "Sl" = ( /obj/structure/cable/yellow{ icon_state = "0-8" @@ -4378,14 +4447,6 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/maintenance/port) -"Sy" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/ship/maintenance/starboard) "SE" = ( /obj/machinery/door/airlock/mining{ frequency = 1331; @@ -4399,15 +4460,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/cargo/port) -"SK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/airalarm/directional/south, -/obj/effect/turf_decal/trimline/transparent/white/filled/warning{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ship/cargo/port) "SM" = ( /obj/structure/cable{ icon_state = "1-2" @@ -4415,10 +4467,6 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/maintenance/fore) -"SQ" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/ship/engineering/engine) "SV" = ( /obj/structure/chair/comfy/shuttle{ dir = 8 @@ -4477,18 +4525,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/engineering/engine) -"Th" = ( -/obj/effect/turf_decal/box/corners{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) "Tl" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 9 @@ -4502,6 +4538,10 @@ /obj/effect/turf_decal/industrial/warning, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/aft) +"Tn" = ( +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "Tq" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -4523,14 +4563,6 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/central) -"TF" = ( -/obj/effect/turf_decal/box/corners{ - dir = 1 - }, -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) "TK" = ( /obj/machinery/atmospherics/components/unary/tank/toxins{ dir = 4 @@ -4541,6 +4573,11 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/plating, /area/ship/engineering/engine) +"TU" = ( +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/maintenance/fore) "Ug" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/engineering/engine) @@ -4570,19 +4607,6 @@ /obj/structure/sign/nanotrasen, /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/hallway/central) -"UC" = ( -/obj/effect/spawner/random/salvage/half, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) "UI" = ( /obj/machinery/door/poddoor/shutters{ id = "gecko_starboard" @@ -4638,14 +4662,6 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/central) -"UV" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/ship/maintenance/port) "UW" = ( /obj/machinery/atmospherics/components/binary/valve/digital{ dir = 4 @@ -4699,14 +4715,12 @@ }, /turf/open/floor/plasteel, /area/ship/cargo/starboard) -"Vw" = ( -/obj/effect/turf_decal/box/corners{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/salvage/half, -/turf/open/floor/plasteel/patterned/cargo_one, -/area/ship/cargo/port) +"Vv" = ( +/obj/structure/bed, +/obj/effect/spawner/random/bedsheet, +/obj/structure/curtain/bounty, +/turf/open/floor/plasteel/grimy, +/area/ship/crew) "Vz" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -4843,11 +4857,6 @@ }, /turf/open/floor/plasteel/patterned/cargo_one, /area/ship/cargo/port) -"Wo" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/ship/maintenance/port) "Wq" = ( /obj/structure/cable{ icon_state = "1-8" @@ -4931,6 +4940,11 @@ /obj/machinery/atmospherics/pipe/simple/supplymain/visible/layer2, /turf/open/floor/plasteel/tech, /area/ship/engineering/atmospherics) +"WY" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/salvage/half, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo/starboard) "Xh" = ( /obj/machinery/atmospherics/pipe/simple/dark/hidden/layer5{ dir = 8 @@ -5001,6 +5015,18 @@ }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/engineering/engine) +"XG" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/obj/effect/spawner/random/salvage/half, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo/starboard) "XN" = ( /obj/structure/sign/number/four{ color = "#00000F"; @@ -5102,17 +5128,6 @@ }, /turf/open/floor/plating, /area/ship/maintenance/fore) -"YG" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/sign/warning/electricshock{ - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/ship/maintenance/port) "YH" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, @@ -5247,16 +5262,6 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/fore) -"ZS" = ( -/obj/effect/spawner/random/maintenance, -/obj/effect/turf_decal/industrial/outline/yellow, -/obj/machinery/button/ignition/incinerator/atmos{ - dir = 4; - pixel_x = -23; - pixel_y = -3 - }, -/turf/open/floor/plating, -/area/ship/engineering/engine) "ZX" = ( /obj/structure/table, /obj/effect/turf_decal/techfloor{ @@ -5264,11 +5269,6 @@ }, /turf/open/floor/plasteel/tech/grid, /area/ship/crew) -"ZY" = ( -/obj/effect/spawner/random/salvage/half, -/obj/machinery/firealarm/directional/north, -/turf/open/floor/plasteel/patterned, -/area/ship/cargo/starboard) (1,1,1) = {" hu @@ -5341,7 +5341,7 @@ Ug Iv Ug Ug -iH +lg cv VT Ug @@ -5394,11 +5394,11 @@ hu hu hu Ug -OZ +eg Ml Tb Tb -ZS +cs WN Sv uz @@ -5455,13 +5455,13 @@ Ug Iz DS sS -zv +HQ yc nH UP hX Cj -SQ +zs QD kL Hg @@ -5520,7 +5520,7 @@ kZ aK oT zZ -LH +rQ wV wB wB @@ -5534,11 +5534,11 @@ wB (10,1,1) = {" tB dq -YG +xy tB tB tB -UV +gi qp jd zM @@ -5552,11 +5552,11 @@ YH CN pH Ze -In +yO wB wB wB -LY +PM iK wB "} @@ -5566,7 +5566,7 @@ hL qB fK fK -yD +Ie As bH re @@ -5583,15 +5583,15 @@ re Au HT cr -ye +rY cr CQ -uP +MY wB "} (12,1,1) = {" tB -Wo +hI VC tB tB @@ -5620,12 +5620,12 @@ wB "} (13,1,1) = {" tB -xd +bR Sx tB hu tB -iT +pv bH Oe zI @@ -5639,12 +5639,12 @@ xm QY ef Au -Sy +ad wB hu wB -AD -dp +Km +Di wB "} (14,1,1) = {" @@ -5656,17 +5656,17 @@ hu Vq GN Lo -xG +Ar lZ -wP +vd re Im Rh aq re -Jk +lN Vr -AN +Ex Lo vy Vq @@ -5687,7 +5687,7 @@ Lo Lo xr Zb -SK +pL PF Iy Yf @@ -5695,7 +5695,7 @@ PF PF Dw LU -BM +bP Lo Lo Vq @@ -5714,18 +5714,18 @@ hu tQ zS gF -qT -Th +qe +hQ Gj Kc fn EE -ej +MJ yX cj -gw -EK -Cc +bD +LP +qx DQ eI hu @@ -5743,8 +5743,8 @@ hu IQ dC kr -lT -UC +GK +Ji Qg sg Vm @@ -5753,7 +5753,7 @@ QC cX fD XY -gh +QM AM UI oR @@ -5771,18 +5771,18 @@ hu hu uW dC -BV -Vw +po +ho Wj Du kq -Sj +aE bb ov uv -ZY +MW oW -lE +CC eE NC oR @@ -5802,7 +5802,7 @@ ae dC gg jO -gf +Le df EB Is @@ -5812,7 +5812,7 @@ Pg BP Vn vL -Ow +XG NC vS zQ @@ -5830,17 +5830,17 @@ hu uW sy Eh -TF +OV mX Iu VE -HK +tf bb mN Lo wR -tN -Rc +EL +pY ih UI Xs @@ -5859,8 +5859,8 @@ hu IQ mm gg -HN -Nz +mP +ia sj SE Ct @@ -5868,8 +5868,8 @@ VU Tl GZ Ek -mb -mb +WY +WY yQ NC Xs @@ -5890,16 +5890,16 @@ up if lM oi -hA +NX Kc -vG +DI IK Nu yX -iJ -Qv +HA +yI tU -Sa +be bB Qp hu @@ -5987,7 +5987,7 @@ GR Ba hy Jc -cP +bt dl hu hu @@ -6014,7 +6014,7 @@ KA jC Gm zE -lb +Vv Jc CE dl @@ -6043,7 +6043,7 @@ KH jC wh yG -lb +Vv jC lU eC @@ -6060,11 +6060,11 @@ hu hu dl aD -gQ +yr Ov vc qc -oM +xw WT pu yd @@ -6072,10 +6072,10 @@ WJ jC Se YR -ga +nn Jc Ho -qu +TU dl hu hu @@ -6103,7 +6103,7 @@ rF Hc Ru Jc -PG +Ln dl qO hu @@ -6129,7 +6129,7 @@ rd LZ jC Ko -jc +hP ro Jc ms @@ -6161,7 +6161,7 @@ vv vv vv Jc -PG +Ln dl hu hu @@ -6190,7 +6190,7 @@ vz Kv eD Jc -PG +Ln dl hu hu @@ -6205,7 +6205,7 @@ hu hu qO dl -ch +Bk Jc XR pD @@ -6262,7 +6262,7 @@ hu hu hu dl -bh +MR nP Jc ZB @@ -6278,7 +6278,7 @@ fS fS Jc Yv -oJ +Os dl hu hu @@ -6321,7 +6321,7 @@ hu KQ hu ze -PG +Ln Jc qL ku @@ -6393,7 +6393,7 @@ gB yw Jc Jc -PG +Ln EO hu hu @@ -6408,7 +6408,7 @@ hu Qc hu bk -eQ +Oh bU rM Zr @@ -6420,7 +6420,7 @@ Mn dd Dv gE -qn +sB cL GT ez @@ -6450,7 +6450,7 @@ ek FQ Wq rs -JD +Af qO qO hu @@ -6473,7 +6473,7 @@ EQ qv bU bs -vi +Tn NP UK NP @@ -6530,7 +6530,7 @@ YM JX iZ bU -qY +eZ AG kC Vz @@ -6562,7 +6562,7 @@ rh CL gr Om -vi +Tn Cv gr Om diff --git a/_maps/shuttles/pgf/pgf_elated_bolide.dmm b/_maps/shuttles/pgf/pgf_elated_bolide.dmm new file mode 100644 index 000000000000..3077b2001a8d --- /dev/null +++ b/_maps/shuttles/pgf/pgf_elated_bolide.dmm @@ -0,0 +1,9890 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aq" = ( +/obj/effect/turf_decal/atmos/air{ + dir = 1 + }, +/turf/open/floor/engine/air, +/area/ship/engineering) +"ar" = ( +/obj/structure/railing{ + dir = 10 + }, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 4 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/ccommons) +"au" = ( +/obj/machinery/computer/atmos_control/ship/bolide{ + dir = 8; + icon_state = "computer-right" + }, +/obj/effect/turf_decal/techfloor{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"aw" = ( +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bombs"; + dir = 4; + name = "High Explosives Storage" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/storage/port) +"ay" = ( +/obj/structure/chair/handrail{ + dir = 4 + }, +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/structure/closet/crate/engineering/electrical, +/obj/item/electronics/advanced_airlock_controller, +/obj/item/electronics/advanced_airlock_controller, +/obj/item/electronics/advanced_airlock_controller, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airalarm, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/apc, +/obj/item/electronics/apc, +/obj/item/electronics/apc, +/obj/item/electronics/apc, +/obj/item/electronics/firealarm, +/obj/item/electronics/firealarm, +/obj/item/electronics/firealarm, +/obj/item/electronics/firealarm, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"az" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/effect/turf_decal/steeldecal/steel_decals_central7{ + dir = 8 + }, +/obj/structure/cable, +/obj/machinery/light/small/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/crew/cryo) +"aD" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"aE" = ( +/obj/machinery/shower{ + pixel_y = 18 + }, +/obj/effect/turf_decal/borderfloor, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"aI" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"aK" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"aO" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay_win_1" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/office) +"aT" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/extinguisher_cabinet/directional/west, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 9 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"be" = ( +/obj/machinery/door/airlock/engineering{ + req_one_access = list(1, 10); + name = "Port Engines" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/effect/turf_decal/techfloor/orange, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/port) +"bf" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"bh" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/machinery/button/door{ + name = "privacy lock"; + dir = 1; + pixel_y = -21; + pixel_x = -10; + id = "bol_priv"; + specialfunctions = 4; + normaldoorcontrol = 1 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = -2; + pixel_y = -20 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 6 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/captain) +"bl" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"bm" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"bx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/engine/air, +/area/ship/engineering) +"bH" = ( +/obj/item/radio/intercom/directional/north, +/obj/machinery/iv_drip, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"bL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 5 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"bO" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/machinery/light/floor, +/obj/machinery/camera/autoname{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"bR" = ( +/obj/structure/rack, +/obj/machinery/light/small/directional/south, +/obj/item/stack/sheet/glass/fifty{ + pixel_x = 5 + }, +/obj/item/stack/sheet/metal/fifty{ + pixel_x = -9 + }, +/obj/item/pipe_dispenser, +/obj/effect/turf_decal/techfloor, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"bT" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"cc" = ( +/obj/machinery/door/airlock/command{ + name = "Captain's Quarters"; + id_tag = "bol_priv"; + req_access = list(20) + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/crew/dorm/captain) +"ce" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"ch" = ( +/obj/structure/sign/number/random{ + dir = 1; + layer = 2.9 + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"cn" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"co" = ( +/obj/structure/table/wood, +/obj/item/radio/intercom/directional/north, +/obj/item/clothing/head/gezena/marine/lead{ + pixel_y = 5; + pixel_x = 7 + }, +/obj/item/flashlight/lamp/green{ + pixel_y = 12; + pixel_x = -7 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 8 + }, +/obj/item/desk_flag/gezena{ + pixel_x = -11; + pixel_y = 5 + }, +/obj/item/storage/briefcase{ + pixel_y = -7 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"cr" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/closet/firecloset/wall/directional/east, +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/warning, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"cH" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"cM" = ( +/obj/item/radio/intercom/directional/west, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"cT" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"cZ" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/security) +"dg" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/ccommons) +"dk" = ( +/obj/machinery/airalarm/directional/west, +/obj/structure/table/reinforced, +/obj/machinery/recharger{ + pixel_y = 4; + pixel_x = -5 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"dn" = ( +/obj/structure/sign/warning/incident{ + pixel_y = 30 + }, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/techfloor/orange, +/obj/item/storage/toolbox/mechanical{ + pixel_y = 9; + pixel_x = -4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"dp" = ( +/obj/machinery/atmospherics/components/unary/portables_connector{ + dir = 4 + }, +/obj/effect/turf_decal/box, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"dq" = ( +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 6 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"dt" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay_win_2"; + dir = 4 + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/office) +"du" = ( +/obj/structure/rack, +/obj/machinery/light/directional/east, +/obj/item/stack/sheet/metal/five{ + pixel_x = 7 + }, +/obj/item/stack/sheet/glass/fifty{ + pixel_x = -5; + pixel_y = 5 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"dw" = ( +/obj/structure/chair/handrail, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"dx" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/effect/turf_decal/steeldecal/steel_decals_central6, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/industrial/warning, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -20; + pixel_y = -11 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"dE" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"dF" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"eb" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/structure/sign/warning/docking{ + pixel_x = 23; + pixel_y = 25 + }, +/obj/effect/turf_decal/borderfloor/corner, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"em" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/captain) +"eq" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"er" = ( +/obj/effect/decal/cleanable/food/flour, +/obj/structure/table/reinforced, +/obj/machinery/microwave{ + pixel_y = 7 + }, +/obj/structure/sign/poster/contraband/pgf{ + pixel_x = -28 + }, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"eC" = ( +/obj/structure/grille, +/obj/structure/window/plasma/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"eE" = ( +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"eH" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"eI" = ( +/obj/structure/grille, +/obj/docking_port/mobile{ + can_move_docking_ports = 1; + name = "bolide docking port"; + port_direction = 4; + preferred_direction = 4 + }, +/turf/open/floor/plating, +/area/ship/external/dark) +"eM" = ( +/obj/effect/turf_decal/techfloor{ + dir = 8 + }, +/obj/structure/table/reinforced, +/obj/item/radio/intercom/wideband/table{ + dir = 8; + pixel_x = -5; + pixel_y = -1 + }, +/obj/item/radio/intercom/directional/north{ + pixel_x = -3 + }, +/obj/item/desk_flag/gezena{ + pixel_x = -10; + pixel_y = 16 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"eX" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/item/radio/intercom/directional/north, +/obj/item/paper_bin{ + pixel_x = -6; + pixel_y = 7 + }, +/obj/item/clipboard{ + pixel_x = -1; + pixel_y = -7 + }, +/obj/item/pen/fourcolor{ + pixel_x = -2; + pixel_y = -5 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/ccommons) +"eZ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/machinery/camera/autoname, +/obj/item/kirbyplants{ + icon_state = "plant-14"; + pixel_y = 10; + pixel_x = 3 + }, +/obj/machinery/firealarm/directional/north, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"fg" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/structure/sign/warning{ + pixel_y = -22 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"fl" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm) +"fo" = ( +/obj/machinery/atmospherics/pipe/manifold4w/orange/visible, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/effect/turf_decal/corner_techfloor_gray, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"fp" = ( +/obj/machinery/suit_storage_unit/inherit, +/obj/item/clothing/suit/space/gezena, +/obj/item/clothing/head/helmet/space/gezena, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas, +/obj/machinery/light/small/directional/north, +/obj/structure/sign/warning/vacuum{ + pixel_x = 3; + pixel_y = -22 + }, +/obj/effect/turf_decal/industrial/warning/cee{ + dir = 8 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/storage/starboard) +"fr" = ( +/obj/machinery/power/apc/auto_name/directional/south, +/obj/effect/turf_decal/steeldecal/steel_decals_central7{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 11; + pixel_y = -16 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"ft" = ( +/obj/machinery/door/airlock/medical{ + name = "Medical" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/medical) +"fy" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm/captain) +"fG" = ( +/obj/machinery/power/shuttle/engine/fire{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/port) +"fO" = ( +/obj/structure/chair/handrail{ + dir = 4 + }, +/obj/structure/closet/crate/engineering/electrical, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/electronics/firelock, +/obj/item/storage/box/lights/mixed, +/obj/item/storage/box/lights/mixed, +/obj/item/storage/box/lights/mixed, +/obj/item/storage/box/lights/mixed, +/obj/item/storage/box/lights/mixed, +/obj/item/storage/box/lights/mixed, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"fR" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"fU" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/opaque/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"fW" = ( +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 4 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/bridge) +"fY" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/light/floor, +/obj/machinery/camera/autoname{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"ge" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"gf" = ( +/obj/machinery/power/shuttle/engine/fire{ + dir = 4 + }, +/obj/structure/sign/warning{ + pixel_x = -10; + pixel_y = 23 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/port) +"gg" = ( +/obj/machinery/light/directional/south, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"gj" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"gA" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/item/radio/intercom/directional/north{ + pixel_x = 3 + }, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/obj/machinery/button/door{ + dir = 2; + pixel_y = 21; + pixel_x = -12; + id = "bolide_engine_3"; + name = "engine access" + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"gB" = ( +/obj/structure/chair/handrail{ + dir = 8 + }, +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/effect/turf_decal/box/corners, +/obj/structure/floodlight_frame, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"gC" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/cryo) +"gE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/firealarm/directional/west, +/obj/machinery/light/small/directional/west{ + pixel_y = 9 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 10 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"gI" = ( +/obj/structure/table/wood, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/obj/item/modular_computer/laptop/preset, +/obj/item/flashlight/lamp/green{ + pixel_y = 16; + pixel_x = 16 + }, +/obj/item/desk_flag/gezena{ + pixel_x = -12; + pixel_y = 12 + }, +/obj/machinery/button/door{ + dir = 4; + pixel_y = 2; + pixel_x = -22; + name = "internal window shutters"; + id = "bolide_win_2" + }, +/obj/machinery/button/door{ + dir = 4; + pixel_y = 13; + pixel_x = -22; + name = "external window shutters"; + id = "bolide_win_1" + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/captain) +"gP" = ( +/obj/machinery/power/shuttle/engine/fire{ + dir = 4 + }, +/obj/structure/sign/warning{ + pixel_x = -10; + pixel_y = -21 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/port) +"gU" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_2" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/dorm/captain) +"gV" = ( +/obj/machinery/newscaster/directional/east, +/obj/structure/crate_shelf{ + capacity = 2 + }, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"ha" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/etherbor/center, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"hd" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"hi" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 4 + }, +/area/ship/hallway/central) +"hj" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/visible, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"hk" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 9 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm) +"hw" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/structure/rack, +/obj/item/clothing/suit/bomb_suit{ + pixel_x = -3; + pixel_y = -1 + }, +/obj/item/clothing/head/bomb_hood{ + pixel_y = 9; + pixel_x = -3 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = -7; + pixel_x = 3 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = -10; + pixel_y = -1 + }, +/obj/item/storage/toolbox/explosives{ + pixel_x = -7; + pixel_y = -8 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/item/clothing/gloves/gezena/engi, +/obj/item/radio/headset/pgf/alt, +/obj/machinery/light/small/directional/east, +/obj/item/gps, +/obj/item/clothing/under/gezena/marine{ + pixel_y = 8; + pixel_x = 6 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"hO" = ( +/obj/structure/closet/wall/directional/west, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/obj/item/radio/headset/pgf, +/obj/item/radio/headset/pgf, +/obj/item/radio/headset/pgf, +/obj/item/radio/headset/pgf, +/obj/item/radio/headset/pgf, +/obj/item/radio/headset/pgf, +/obj/item/radio/headset/pgf, +/obj/item/radio/headset/pgf, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/item/radio{ + pixel_x = 7 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/cryo) +"hP" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/structure/table/reinforced, +/obj/machinery/button/door{ + dir = 4; + pixel_y = 7; + pixel_x = -9; + name = "bay window shutters"; + id = "bolide_bay_win_2" + }, +/obj/machinery/button/door{ + dir = 4; + pixel_y = 7; + name = "external window shutters"; + id = "bolide_bay_win_1"; + pixel_x = 1 + }, +/obj/machinery/button/door{ + dir = 4; + pixel_y = -4; + name = "cargo bay controls"; + id = "bolide_bay"; + pixel_x = -9 + }, +/obj/machinery/button/shieldwallgen{ + dir = 4; + pixel_y = -4; + pixel_x = 3; + id = "elated_bolide_bay"; + name = "cargobay holofield switch" + }, +/obj/machinery/turretid/ship{ + pixel_y = 24; + id = "bolide_grid" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"id" = ( +/obj/machinery/atmospherics/components/unary/portables_connector{ + dir = 8 + }, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"ih" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/techfloor{ + dir = 6 + }, +/obj/machinery/fax{ + pixel_y = 7 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/item/folder/pgf/empty_sheets{ + pixel_x = -2; + pixel_y = 5 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"ij" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/structure/table/reinforced, +/obj/item/radio/intercom/wideband/table{ + dir = 1; + pixel_x = -5; + pixel_y = 4 + }, +/obj/item/desk_flag/gezena{ + pixel_x = -12; + pixel_y = 0 + }, +/obj/machinery/light/small/directional/west, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"in" = ( +/obj/effect/decal/cleanable/food/flour, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"iq" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/obj/item/grenade/c4/x4{ + pixel_y = 7; + pixel_x = -9 + }, +/obj/item/grenade/c4/x4{ + pixel_y = 7; + pixel_x = -2 + }, +/obj/item/grenade/c4/x4{ + pixel_y = 7; + pixel_x = 6 + }, +/obj/item/grenade/c4/x4{ + pixel_y = 7; + pixel_x = 13 + }, +/obj/item/grenade/c4/x4{ + pixel_y = -5; + pixel_x = 13 + }, +/obj/item/grenade/c4/x4{ + pixel_y = -5; + pixel_x = 6 + }, +/obj/item/grenade/c4/x4{ + pixel_y = -5; + pixel_x = -2 + }, +/obj/item/grenade/c4/x4{ + pixel_y = -5; + pixel_x = -8 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/storage/port) +"it" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"iu" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"iv" = ( +/obj/effect/turf_decal/techfloor, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"iz" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_airlock"; + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/hallway/fore) +"iE" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/structure/cable, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_2" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/dorm/captain) +"iN" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/mono, +/area/ship/crew/dorm) +"iO" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_engine_1"; + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"iS" = ( +/obj/structure/table/reinforced, +/obj/item/screwdriver{ + pixel_y = 3 + }, +/obj/item/screwdriver{ + pixel_y = 3; + pixel_x = -7 + }, +/obj/item/screwdriver{ + pixel_y = 3; + pixel_x = 8 + }, +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"iW" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"iY" = ( +/obj/structure/table, +/obj/item/paper_bin{ + pixel_y = 3; + pixel_x = -6 + }, +/obj/item/pen{ + pixel_x = -6; + pixel_y = 3 + }, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"jc" = ( +/obj/effect/turf_decal/borderfloorblack{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/sign/flag/gezena{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"jf" = ( +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 1 + }, +/obj/structure/rack, +/obj/item/storage/box/flares{ + pixel_x = 7 + }, +/obj/item/storage/box/flares{ + pixel_x = -5 + }, +/obj/item/storage/box/flares{ + pixel_x = -7; + pixel_y = 10 + }, +/obj/item/storage/box/flares{ + pixel_x = 7; + pixel_y = 10 + }, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/vault, +/area/ship/security/armory) +"jg" = ( +/obj/structure/closet/wall/red/directional/east, +/obj/item/megaphone{ + pixel_x = 8; + pixel_y = 7 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/obj/item/clothing/mask/whistle{ + name = "marine whistle" + }, +/obj/item/clothing/mask/whistle/trench{ + pixel_x = 9; + pixel_y = -4 + }, +/obj/item/clipboard{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/clipboard{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/clipboard{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/storage/box/holodisc{ + pixel_x = 7 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/office) +"ji" = ( +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/floordetail/traction, +/obj/effect/turf_decal/steeldecal/steel_decals9{ + dir = 1 + }, +/obj/effect/turf_decal/steeldecal/steel_decals9{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"jm" = ( +/obj/structure/closet/secure_closet{ + anchored = 1; + can_be_unanchored = 1; + icon_state = "warden"; + name = "Lieutenant's locker"; + req_access_txt = "3"; + req_access = list(3) + }, +/obj/item/radio/headset/pgf/alt/captain{ + pixel_y = 11; + pixel_x = 5 + }, +/obj/item/clothing/neck/cloak/gezena/lead{ + pixel_y = 3; + pixel_x = -3 + }, +/obj/item/clothing/suit/armor/gezena/marine{ + pixel_y = 8 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -6; + pixel_y = -7 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_x = 3; + pixel_y = -6 + }, +/obj/item/storage/belt/military/gezena{ + pixel_y = 1 + }, +/obj/item/storage/backpack/security{ + pixel_y = -6 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 8 + }, +/obj/item/clothing/accessory/medal/silver/valor, +/obj/item/clothing/mask/whistle{ + name = "marine whistle" + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/item/clothing/head/gezena/flap/marine/lead{ + pixel_x = -4 + }, +/obj/item/storage/guncase/pistol/kalixpistol, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"jn" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/airlock/engineering{ + req_one_access = list(1, 10); + name = "Engineering" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/storage/starboard) +"js" = ( +/obj/structure/bed/roller, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/firealarm/directional/south, +/obj/effect/turf_decal/industrial/hatch/blue, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"jA" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"jB" = ( +/obj/structure/sink{ + pixel_y = 18; + dir = 2 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"jE" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/office) +"jF" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_armory"; + dir = 4; + name = "Armory" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security/armory) +"jI" = ( +/obj/structure/grille, +/obj/structure/window/plasma/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"jJ" = ( +/obj/machinery/atmospherics/components/unary/portables_connector{ + dir = 1 + }, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"jN" = ( +/obj/machinery/door/airlock/security{ + dir = 4; + name = "Engineering Storage"; + req_one_access_txt = "1" + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/storage/port) +"jR" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"jT" = ( +/obj/machinery/power/apc/auto_name/directional/south, +/obj/effect/turf_decal/steeldecal/steel_decals_central7, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/light_switch{ + pixel_x = -13; + pixel_y = -16; + dir = 1 + }, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ship/medical) +"jZ" = ( +/obj/structure/table, +/obj/structure/bedsheetbin{ + pixel_y = 3; + pixel_x = -4 + }, +/obj/effect/turf_decal/borderfloorblack, +/obj/machinery/light/directional/north, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/crew/dorm) +"ka" = ( +/obj/effect/turf_decal/box, +/obj/machinery/light/floor, +/obj/machinery/porta_turret/ship/pgf/heavy{ + dir = 2; + id = "bolide_grid" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"kc" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/floordetail/traction, +/obj/effect/turf_decal/steeldecal/steel_decals9{ + dir = 4 + }, +/obj/effect/turf_decal/steeldecal/steel_decals9{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"kg" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay_win_2"; + dir = 4 + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/office) +"kh" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/airlock/security{ + dir = 8; + req_access = list(3) + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_armory"; + dir = 4; + name = "Armory" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security/armory) +"km" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 2 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"ks" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/security/armory) +"kG" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"kI" = ( +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/airlock/mining{ + name = "Cargo Bay" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/tech/grid, +/area/ship/cargo) +"kM" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"kQ" = ( +/obj/machinery/airalarm/directional/north, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 10 + }, +/obj/item/paper/guides/jobs/engi/combustion_thruster{ + pixel_y = 10 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"kS" = ( +/obj/structure/sign/number/random{ + dir = 1; + layer = 2.9 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"kT" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/industrial/fire{ + dir = 1 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"kU" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge_1"; + dir = 4 + }, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"kZ" = ( +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/storage/starboard) +"le" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/storage/port) +"lf" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/crew/dorm/captain) +"lg" = ( +/obj/item/radio/intercom/directional/north, +/obj/item/kirbyplants{ + icon_state = "plant-08"; + pixel_y = 5 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"lj" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black/corner, +/obj/machinery/telecomms/relay/preset/pgf, +/obj/effect/turf_decal/techfloor{ + dir = 6 + }, +/obj/structure/window/reinforced, +/obj/machinery/door/window/brigdoor/westleft{ + req_one_access = list(20, 57, 58) + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"lo" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 6 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"lq" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"lu" = ( +/obj/machinery/door/window/brigdoor{ + dir = 8; + req_access = list(3) + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"lx" = ( +/obj/effect/turf_decal/trimline/opaque/green/filled/line, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"ly" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"mh" = ( +/obj/structure/railing{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 5 + }, +/obj/structure/rack, +/obj/item/multitool, +/obj/item/screwdriver, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"mo" = ( +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plating, +/area/ship/storage/starboard) +"mp" = ( +/obj/docking_port/stationary{ + height = 15; + width = 15; + dwidth = 7; + name = "bolide exterior dock" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"ms" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/light/floor, +/obj/machinery/camera/autoname{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"mz" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/machinery/computer/cargo{ + dir = 4; + icon_state = "computer-left" + }, +/obj/machinery/light/small/directional/south, +/obj/machinery/computer/helm/viewscreen/directional/west, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"mA" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"mC" = ( +/obj/structure/railing, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"mF" = ( +/obj/structure/bed/dogbed{ + name = "Saperzy's bed"; + desc = "A comfy-looking fox bed. You can even strap your pet in, in case the gravity turns off." + }, +/obj/effect/turf_decal/siding/wood{ + dir = 6 + }, +/mob/living/simple_animal/pet/fox/bolide, +/obj/machinery/light/directional/south, +/obj/machinery/newscaster/directional/east, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/captain) +"mJ" = ( +/obj/machinery/camera/autoname{ + dir = 4 + }, +/obj/structure/table/reinforced, +/obj/machinery/light/small/directional/west, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 9 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"mR" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"mW" = ( +/obj/structure/mirror{ + pixel_x = -24; + pixel_y = 4 + }, +/obj/structure/sink{ + dir = 4; + pixel_y = 4; + pixel_x = -13 + }, +/obj/effect/turf_decal/steeldecal/steel_decals_central4, +/obj/machinery/button/door{ + name = "privacy lock"; + dir = 2; + pixel_y = 22; + pixel_x = 10; + id = "bol_priv2"; + specialfunctions = 4; + normaldoorcontrol = 1 + }, +/turf/open/floor/plasteel/mono, +/area/ship/crew/ccommons) +"mZ" = ( +/obj/structure/railing{ + dir = 6 + }, +/obj/effect/turf_decal/borderfloorblack/corner{ + dir = 4 + }, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/ccommons) +"nb" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"ne" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"ng" = ( +/obj/structure/table/reinforced, +/obj/item/paper_bin{ + pixel_x = 7; + pixel_y = -7 + }, +/obj/item/pen/fourcolor{ + pixel_x = 7; + pixel_y = -5 + }, +/obj/item/pen{ + pixel_x = 7; + pixel_y = 9 + }, +/obj/item/pen/fountain{ + pixel_x = 3; + pixel_y = 6 + }, +/obj/item/clipboard{ + pixel_x = -6; + pixel_y = -10 + }, +/obj/item/folder/pgf/blue/bolide{ + pixel_x = -8; + pixel_y = 3 + }, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/borderfloorblack{ + dir = 8 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"nk" = ( +/obj/structure/table/chem, +/obj/item/storage/backpack/duffelbag/med/surgery{ + pixel_y = 9 + }, +/obj/item/reagent_containers/glass/bottle/formaldehyde, +/obj/item/reagent_containers/glass/bottle/formaldehyde{ + pixel_x = 7 + }, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"nq" = ( +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 8 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/ccommons) +"nz" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"nC" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/light_switch{ + dir = 4; + pixel_y = -12; + pixel_x = -21 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"nJ" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/item/flashlight/seclite{ + pixel_y = -1; + pixel_x = 5 + }, +/obj/item/flashlight/seclite{ + pixel_y = -7; + pixel_x = 5 + }, +/obj/item/flashlight/seclite{ + pixel_y = -1 + }, +/obj/item/flashlight/seclite{ + pixel_y = -7 + }, +/obj/item/melee/knife/survival{ + pixel_y = 6; + pixel_x = 1 + }, +/obj/item/melee/knife/survival{ + pixel_y = 6; + pixel_x = 13 + }, +/obj/item/melee/sword/mass{ + pixel_y = 6; + pixel_x = -3 + }, +/obj/item/melee/sword/mass{ + pixel_y = 6; + pixel_x = -9 + }, +/obj/item/melee/knife/survival{ + pixel_y = 6; + pixel_x = 8 + }, +/obj/item/melee/knife/survival{ + pixel_y = 6; + pixel_x = 13 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"nL" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/obj/machinery/firealarm/directional/east, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"nM" = ( +/obj/machinery/light/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"nS" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/structure/sign/warning/securearea{ + pixel_x = -8; + pixel_y = -21 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"nT" = ( +/obj/machinery/advanced_airlock_controller{ + pixel_y = -22 + }, +/obj/machinery/light/small/directional/north, +/obj/effect/turf_decal/industrial/warning/cee{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/storage/starboard) +"nV" = ( +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"ob" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/sign/warning{ + pixel_y = 24 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"oc" = ( +/obj/machinery/airalarm/directional/north, +/obj/machinery/vending/coffee, +/obj/effect/turf_decal/box/corners, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"og" = ( +/obj/machinery/power/apc/auto_name/directional/south, +/obj/effect/turf_decal/steeldecal/steel_decals_central7, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 11; + pixel_y = -16 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/office) +"oj" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"ol" = ( +/obj/machinery/shower{ + pixel_y = 0; + dir = 1 + }, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"om" = ( +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/structure/table/reinforced, +/obj/machinery/newscaster/directional/east, +/obj/machinery/button/door{ + dir = 8; + pixel_y = 7; + pixel_x = -5; + name = "fore airlock shutters"; + id = "bolide_airlock" + }, +/obj/machinery/button/door{ + dir = 8; + pixel_y = -5; + id = "bolide_win_bridge"; + name = "window shutters"; + pixel_x = -5 + }, +/obj/machinery/recharger{ + pixel_x = 6; + pixel_y = 6 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"oD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/cable, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 2 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"oE" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"oJ" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"oK" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/closet/firecloset/wall/directional/east, +/obj/effect/turf_decal/industrial/stand_clear, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"oO" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/hallway/central) +"oV" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/plasteel, +/area/ship/hallway/central) +"oY" = ( +/turf/template_noop, +/area/template_noop) +"pf" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 2 + }, +/area/ship/cargo) +"pl" = ( +/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_engine_3"; + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/starboard) +"po" = ( +/obj/structure/filingcabinet/double/grey, +/obj/machinery/newscaster/directional/east, +/obj/effect/turf_decal/borderfloorblack{ + dir = 8 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"ps" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/components/binary/dp_vent_pump/on/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"pu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/sign/poster/contraband/pgf{ + pixel_x = 28; + pixel_y = -30 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"pB" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 2 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"pG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "2-9" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/obj/effect/turf_decal/corner_steel_grid, +/obj/effect/turf_decal/spline/fancy/opaque/green/corner, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"pI" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/storage/starboard) +"pM" = ( +/obj/structure/sink{ + dir = 8; + pixel_x = 13; + pixel_y = 5 + }, +/obj/structure/mirror{ + pixel_x = 26; + pixel_y = 5 + }, +/turf/open/floor/plasteel/mono, +/area/ship/crew/dorm) +"qa" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/obj/item/kirbyplants{ + icon_state = "plant-08"; + pixel_y = 19; + pixel_x = 10 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"qd" = ( +/obj/effect/turf_decal/box, +/obj/machinery/light/floor, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 8; + id = "bolide_grid" + }, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"qe" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/light/small/directional/east, +/obj/structure/table/wood, +/obj/item/reagent_containers/food/drinks/coffee{ + pixel_y = 11; + pixel_x = -5 + }, +/obj/item/reagent_containers/food/drinks/coffee{ + pixel_y = 7; + pixel_x = 3 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"ql" = ( +/obj/effect/turf_decal/box, +/obj/machinery/light/floor, +/obj/machinery/porta_turret/ship/pgf/heavy{ + dir = 1; + id = "bolide_grid" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"qm" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"qq" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"qr" = ( +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 9 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"qH" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 9 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"qJ" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"qQ" = ( +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"qW" = ( +/obj/machinery/power/shuttle/engine/electric{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"qX" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"rb" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 6 + }, +/obj/machinery/light/floor, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"rc" = ( +/obj/machinery/firealarm/directional/north, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"rn" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/caution, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"ro" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"ru" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"rw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"rB" = ( +/obj/machinery/power/shuttle/engine/fire{ + dir = 4 + }, +/obj/structure/sign/warning{ + pixel_x = -10; + pixel_y = -21 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/starboard) +"rJ" = ( +/obj/machinery/door/airlock{ + name = "Cryo Head" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/tech/grid, +/area/ship/crew/dorm) +"rN" = ( +/obj/effect/turf_decal/trimline/opaque/green/filled/corner, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"rP" = ( +/obj/machinery/atmospherics/components/unary/portables_connector, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/box, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/obj/effect/decal/cleanable/molten_object{ + pixel_x = 10; + pixel_y = -12 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"rR" = ( +/obj/structure/chair/handrail{ + dir = 4 + }, +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/effect/turf_decal/box/corners, +/obj/structure/closet/crate/engineering, +/obj/item/stack/sheet/glass/twenty{ + pixel_x = -3 + }, +/obj/item/stack/sheet/metal/twenty{ + pixel_x = 5 + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"rU" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/item/storage/box/metalfoam{ + pixel_x = 7; + pixel_y = -3 + }, +/obj/item/storage/box/metalfoam{ + pixel_x = 2; + pixel_y = -3 + }, +/obj/item/storage/box/smokebombs{ + pixel_x = -9; + pixel_y = -3 + }, +/obj/item/storage/box/smokebombs{ + pixel_x = -4; + pixel_y = -3 + }, +/obj/structure/sign/warning/nosmoking{ + pixel_y = 28 + }, +/obj/item/gun/grenadelauncher{ + pixel_y = 6 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"rV" = ( +/obj/structure/window/plasma/reinforced/fulltile, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/engineering) +"rZ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/structure/reagent_dispensers/water_cooler, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"sb" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"si" = ( +/obj/machinery/power/apc/auto_name/directional/south, +/obj/effect/turf_decal/steeldecal/steel_decals_central7{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/machinery/button/door{ + dir = 1; + pixel_y = -17; + name = "cargo bay controls"; + id = "bolide_bay"; + pixel_x = -15 + }, +/obj/machinery/button/shieldwallgen{ + dir = 1; + pixel_y = -16; + pixel_x = 12; + id = "elated_bolide_bay"; + name = "cargobay holofield switch" + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"su" = ( +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/effect/turf_decal/steeldecal/steel_decals_central7{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"sw" = ( +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/obj/item/reagent_containers/glass/chem_jug/thermite{ + pixel_y = 5; + pixel_x = 6 + }, +/obj/item/reagent_containers/glass/chem_jug/thermite{ + pixel_y = 5; + pixel_x = -4 + }, +/obj/structure/closet/crate/chem, +/obj/machinery/light/directional/west, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/storage/port) +"sy" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"sE" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/storage/port) +"sG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"sO" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 1 + }, +/area/ship/crew/ccommons) +"sT" = ( +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 1 + }, +/obj/structure/sign/poster/rilena/timeline{ + pixel_x = 28 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/vault, +/area/ship/security/armory) +"te" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 2 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"th" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"tm" = ( +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"tq" = ( +/obj/structure/sign/warning/nosmoking{ + pixel_y = 28 + }, +/obj/machinery/autolathe, +/obj/effect/turf_decal/industrial/outline/yellow, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"tr" = ( +/obj/structure/bed, +/obj/item/bedsheet/hos{ + name = "Lieutenant's Bedsheet"; + desc = "It is decorated with a shield emblem." + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 4 + }, +/obj/structure/sign/flag/gezena{ + pixel_y = 32; + pixel_x = 5 + }, +/obj/item/toy/plush/spider{ + pixel_y = -4 + }, +/obj/machinery/button/door{ + name = "privacy lock"; + dir = 2; + pixel_y = 22; + pixel_x = -10; + id = "bol_priv3"; + specialfunctions = 4; + normaldoorcontrol = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"tv" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"tB" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/item/kirbyplants{ + icon_state = "plant-05"; + pixel_y = 7; + pixel_x = -11 + }, +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 1 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"tI" = ( +/obj/machinery/door/airlock{ + dir = 4; + name = "Cryogenic Storage" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/crew/cryo) +"tL" = ( +/obj/machinery/atmospherics/components/unary/portables_connector{ + dir = 4 + }, +/obj/effect/turf_decal/box, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/structure/sign/poster/contraband/tools{ + pixel_x = -28 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"tU" = ( +/obj/machinery/computer/station_alert{ + dir = 8; + icon_state = "computer-left" + }, +/obj/effect/turf_decal/techfloor{ + dir = 5 + }, +/obj/structure/sign/poster/contraband/cardinal_port_starboard{ + pixel_y = 30 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"ud" = ( +/obj/structure/cable{ + icon_state = "5-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/closet/emcloset/wall/directional/south, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"ul" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 1 + }, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"up" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"uq" = ( +/obj/machinery/power/shuttle/engine/fire{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/starboard) +"ur" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"uu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/steeldecal/steel_decals10{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"ux" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/purple/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"uC" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/structure/noticeboard{ + pixel_y = 25 + }, +/obj/effect/turf_decal/techfloor{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"uD" = ( +/obj/structure/sign/warning/electricshock{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"uE" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/sign/warning/docking{ + pixel_x = 7; + pixel_y = 25 + }, +/obj/structure/crate_shelf{ + capacity = 2 + }, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/ridged, +/area/ship/cargo) +"uN" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/etherbor/right, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"uR" = ( +/obj/structure/railing, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/techfloor, +/obj/effect/turf_decal/techfloor{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"uW" = ( +/obj/machinery/computer/helm{ + dir = 8; + icon_state = "computer-middle" + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"vc" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/corner_steel_grid/full, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"vf" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/obj/item/grenade/c4{ + pixel_x = -6; + pixel_y = 6 + }, +/obj/item/grenade/c4{ + pixel_y = 6 + }, +/obj/item/grenade/c4{ + pixel_y = 6; + pixel_x = 6 + }, +/obj/item/grenade/c4{ + pixel_y = 6; + pixel_x = 12 + }, +/obj/item/grenade/c4{ + pixel_y = -4; + pixel_x = 12 + }, +/obj/item/grenade/c4{ + pixel_y = -4; + pixel_x = 6 + }, +/obj/item/grenade/c4{ + pixel_y = -4 + }, +/obj/item/grenade/c4{ + pixel_y = -4; + pixel_x = -7 + }, +/obj/item/grenade/c4{ + pixel_y = 2; + pixel_x = 14 + }, +/obj/item/grenade/c4{ + pixel_y = 2; + pixel_x = -7 + }, +/obj/item/grenade/c4{ + pixel_y = 2 + }, +/obj/item/grenade/c4{ + pixel_y = 2; + pixel_x = 7 + }, +/obj/item/grenade/c4{ + pixel_y = 2; + pixel_x = 14 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/storage/port) +"vl" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"vm" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"vo" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/crate_shelf{ + capacity = 2 + }, +/turf/open/floor/plasteel/patterned/ridged, +/area/ship/cargo) +"vp" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/item/radio/intercom/directional/south{ + pixel_x = 3 + }, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/obj/machinery/button/door{ + dir = 1; + pixel_y = -20; + pixel_x = -12; + id = "bolide_engine_2"; + name = "engine access" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"vt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/visible{ + dir = 10 + }, +/obj/machinery/atmospherics/components/binary/valve/layer2, +/obj/effect/turf_decal/corner_techfloor_grid, +/obj/effect/turf_decal/techfloor/corner, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"vx" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/effect/landmark/start/station_engineer, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"vJ" = ( +/obj/effect/turf_decal/spline/fancy/opaque/grey/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"vS" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/structure/table/reinforced, +/obj/item/radio/intercom/table{ + dir = 1; + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/binoculars, +/obj/machinery/light/small/directional/east, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"we" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"wk" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"wt" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"ww" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/medical) +"wx" = ( +/obj/structure/table/reinforced, +/obj/machinery/fax{ + pixel_y = 0 + }, +/obj/machinery/camera/autoname{ + dir = 10 + }, +/obj/effect/turf_decal/borderfloorblack/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"wy" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"wC" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/closet/cabinet, +/obj/structure/curtain/cloth/grey, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"wD" = ( +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_engineering"; + dir = 4; + name = "Secure Storage" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/storage/starboard) +"wP" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"wT" = ( +/obj/structure/filingcabinet/double/grey, +/obj/item/taperecorder, +/obj/item/tape/random, +/obj/item/tape/random, +/obj/item/tape/random, +/obj/item/tape/random, +/obj/item/tape/random, +/obj/item/tape/random, +/obj/structure/sign/warning/securearea{ + pixel_x = -9; + pixel_y = -21 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"xe" = ( +/obj/machinery/atmospherics/components/unary/shuttle/fire_heater{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_engine_2"; + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/port) +"xl" = ( +/obj/machinery/atmospherics/components/binary/valve/layer4, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"xq" = ( +/obj/structure/railing, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/ccommons) +"xs" = ( +/obj/structure/railing{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/techfloor/corner{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor{ + dir = 10 + }, +/obj/structure/rack, +/obj/item/screwdriver, +/obj/item/multitool{ + pixel_x = 4 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"xu" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/trimline/opaque/green/filled/corner{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"xw" = ( +/obj/structure/railing/corner{ + dir = 1 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"xA" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm) +"xC" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 4 + }, +/obj/structure/sign/warning/securearea{ + pixel_x = -10; + pixel_y = -20 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 4 + }, +/obj/machinery/button/door{ + dir = 1; + pixel_y = -20; + id = "bolide_engineering"; + req_one_access = list(1, 10) + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"xE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{ + dir = 1 + }, +/turf/open/floor/engine/hydrogen_fuel, +/area/ship/engineering/engines/starboard) +"xG" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/structure/closet/firecloset/wall/directional/south, +/obj/machinery/airalarm/directional/east, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"xM" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/storage/starboard) +"xQ" = ( +/obj/effect/turf_decal/spline/fancy/opaque/grey/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"xX" = ( +/obj/structure/railing{ + dir = 4 + }, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 1 + }, +/area/ship/crew/dorm) +"yi" = ( +/obj/machinery/recharge_station, +/obj/structure/curtain/cloth/grey, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"ym" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/external/dark) +"yq" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_x = 5; + pixel_y = -2 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 6; + pixel_x = 5 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 6; + pixel_x = -8 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_x = -8; + pixel_y = -2 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_x = -8 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_x = 4 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 11; + pixel_x = -8 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 10; + pixel_x = 2 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_x = -6; + pixel_y = -4 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_x = 5; + pixel_y = -2 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 6; + pixel_x = -8 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 10; + pixel_x = 2 + }, +/obj/structure/sign/poster/contraband/eoehoma{ + pixel_x = -32 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"yu" = ( +/obj/structure/sign/warning/fire{ + pixel_x = 10; + pixel_y = -21 + }, +/obj/structure/sign/warning/nosmoking/circle{ + pixel_y = -21 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/item/radio/intercom/directional/west, +/obj/machinery/firealarm/directional/south{ + pixel_x = -11 + }, +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"yv" = ( +/obj/structure/railing/corner, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/effect/turf_decal/corner_steel_grid, +/obj/effect/turf_decal/spline/fancy/opaque/green/corner, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"yy" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/layer_manifold, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_1" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/hallway/fore) +"yD" = ( +/obj/machinery/suit_storage_unit/inherit, +/obj/item/clothing/suit/space/gezena, +/obj/item/clothing/head/helmet/space/gezena, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"yJ" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"yK" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/crate_shelf{ + capacity = 2 + }, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/ridged, +/area/ship/cargo) +"yN" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/structure/extinguisher_cabinet/directional/south, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"yR" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/engineering/engines/port) +"yT" = ( +/obj/structure/chair, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/obj/machinery/light_switch{ + pixel_x = 21; + dir = 8; + pixel_y = 13 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/cryo) +"yZ" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"za" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"zc" = ( +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"zd" = ( +/obj/item/mop, +/obj/item/mop, +/obj/item/reagent_containers/glass/bucket, +/obj/item/reagent_containers/glass/bucket, +/obj/item/reagent_containers/glass/rag, +/obj/item/reagent_containers/glass/rag, +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/obj/item/storage/bag/trash{ + pixel_x = 10; + pixel_y = -3 + }, +/obj/item/storage/bag/trash{ + pixel_x = 10; + pixel_y = -3 + }, +/obj/structure/closet/crate/trashcart, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"zi" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/railing, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/techfloor, +/obj/effect/turf_decal/techfloor{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"zj" = ( +/obj/effect/turf_decal/techfloor, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/computer/security{ + dir = 1 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"zs" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/structure/railing{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 6 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"zw" = ( +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/cargo) +"zM" = ( +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"zS" = ( +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/hand_labeler{ + pixel_y = 15 + }, +/obj/item/paper_bin{ + pixel_x = -6; + pixel_y = 8 + }, +/obj/item/pen/fourcolor{ + pixel_y = 9; + pixel_x = -6 + }, +/obj/item/folder/pgf{ + pixel_x = 5; + pixel_y = 1 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_armory"; + dir = 4; + name = "Armory" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security/armory) +"zX" = ( +/obj/structure/chair/comfy/grey/directional/north, +/obj/item/storage/secure/safe{ + dir = 8; + pixel_x = -32 + }, +/obj/item/radio/intercom/directional/west{ + pixel_y = 20 + }, +/obj/effect/landmark/start/captain, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/captain) +"zY" = ( +/obj/structure/sign/number/random{ + dir = 1; + layer = 2.9 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"Ae" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ship/medical) +"Ag" = ( +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 8 + }, +/obj/structure/sign/warning/explosives/alt{ + pixel_x = -30; + pixel_y = -5 + }, +/obj/structure/table/reinforced, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/item/storage/toolbox/explosives{ + pixel_y = 9 + }, +/obj/effect/turf_decal/techfloor/orange, +/obj/machinery/light_switch{ + pixel_x = -12; + dir = 2; + pixel_y = 21 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"Ao" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 10 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"As" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/techfloor{ + dir = 1 + }, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"Az" = ( +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 1 + }, +/obj/structure/closet/secure_closet{ + anchored = 1; + can_be_unanchored = 1; + icon_state = "sec"; + name = "uniforms locker"; + req_access_txt = "1" + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -7 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -7 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -7 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -7 + }, +/obj/item/clothing/head/gezena/flap/marine, +/obj/item/clothing/head/gezena/flap/marine, +/obj/item/clothing/head/gezena/flap/marine, +/obj/item/clothing/head/gezena/marine{ + pixel_x = -6; + pixel_y = 9 + }, +/obj/item/clothing/head/gezena/marine{ + pixel_x = -6; + pixel_y = 9 + }, +/obj/item/clothing/head/gezena/marine{ + pixel_x = -6; + pixel_y = 9 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 10; + pixel_x = 8 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 10; + pixel_x = 8 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 10; + pixel_x = 8 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/item/storage/backpack/industrial{ + pixel_x = 7 + }, +/obj/item/storage/backpack/industrial{ + pixel_x = 7 + }, +/obj/item/storage/backpack/industrial{ + pixel_x = 7 + }, +/obj/item/storage/backpack/security{ + pixel_y = -6 + }, +/obj/item/storage/backpack/security{ + pixel_y = -6 + }, +/obj/item/radio/headset/pgf/alt, +/obj/item/radio/headset/pgf/alt, +/obj/item/radio/headset/pgf/alt, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 20; + pixel_y = 12 + }, +/obj/machinery/light/directional/south, +/obj/machinery/button/door{ + dir = 8; + id = "bolide_armory"; + name = "armory access"; + pixel_x = 19; + pixel_y = 1; + req_access = list(3) + }, +/obj/item/clothing/head/gezena/flap/marine, +/obj/item/clothing/head/gezena/flap/marine, +/obj/item/clothing/head/gezena/flap/marine, +/obj/item/clothing/head/gezena/flap/marine, +/obj/item/clothing/head/gezena/marine{ + pixel_x = -6; + pixel_y = 9 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 10; + pixel_x = 8 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 10; + pixel_x = 8 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 10; + pixel_x = 8 + }, +/obj/item/radio/headset/pgf/alt, +/obj/item/radio/headset/pgf/alt, +/obj/item/radio/headset/pgf/alt, +/turf/open/floor/vault, +/area/ship/security/armory) +"AC" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"AE" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/button/door{ + dir = 4; + id = "bolide_armory"; + name = "armory access"; + pixel_x = -5; + pixel_y = -5; + req_access = list(3) + }, +/obj/machinery/button/door{ + dir = 4; + id = "bolide_bomb_suit"; + name = "specialist equipment access"; + pixel_x = -5; + pixel_y = 6; + req_access = list(3) + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"AH" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"AI" = ( +/obj/item/kirbyplants{ + icon_state = "plant-12"; + pixel_x = 10; + pixel_y = 17 + }, +/obj/item/kirbyplants{ + icon_state = "plant-11"; + pixel_x = 8; + pixel_y = 3 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"AJ" = ( +/obj/structure/rack, +/obj/item/storage/toolbox/electrical{ + pixel_x = -3; + pixel_y = -4 + }, +/obj/item/storage/toolbox/electrical{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/item/clothing/glasses/welding{ + pixel_y = -5; + pixel_x = 8 + }, +/obj/item/clothing/glasses/welding{ + pixel_y = 5; + pixel_x = 1 + }, +/obj/effect/turf_decal/techfloor, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"AS" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"AY" = ( +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = 2 + }, +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = 2 + }, +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = 2 + }, +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = 2 + }, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = -7; + pixel_x = 3 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = -7; + pixel_x = 3 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = -7; + pixel_x = 3 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = -7; + pixel_x = 3 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/structure/closet{ + name = "spare uniforms" + }, +/obj/item/clothing/head/gezena, +/obj/item/clothing/head/gezena, +/obj/item/clothing/head/gezena, +/obj/item/clothing/head/gezena, +/obj/effect/turf_decal/borderfloorblack, +/obj/structure/noticeboard{ + pixel_y = 25 + }, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/crew/dorm) +"Ba" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"Bm" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/engineering/engines/starboard) +"Bq" = ( +/obj/machinery/light/directional/north, +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Br" = ( +/obj/structure/table/reinforced, +/obj/item/table_bell{ + pixel_y = 9; + pixel_x = -6 + }, +/obj/item/folder/pgf{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/folder/pgf{ + pixel_x = 3; + pixel_y = 1 + }, +/obj/item/folder/pgf{ + pixel_x = 9; + pixel_y = 6 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"Bs" = ( +/obj/structure/window/plasma/reinforced/fulltile, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"Bv" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Bz" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"BA" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/high_volume, +/turf/open/floor/engine/hydrogen_fuel, +/area/ship/engineering/engines/port) +"BC" = ( +/obj/machinery/door/airlock{ + dir = 8; + name = "Showers" + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/hallway/central) +"BF" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"BG" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/obj/effect/turf_decal/steeldecal/steel_decals6{ + dir = 4 + }, +/obj/effect/turf_decal/steeldecal/steel_decals6, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"BJ" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/office) +"BQ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"Cg" = ( +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"Cn" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Cp" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 1 + }, +/obj/effect/turf_decal/floordetail/pryhole, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Cr" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/techfloor, +/obj/effect/turf_decal/techfloor{ + dir = 1 + }, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"Cu" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"Cv" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"CA" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger{ + pixel_y = 8; + pixel_x = -5 + }, +/obj/machinery/light/small/directional/west, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"CE" = ( +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 8 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"CL" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"CM" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"CV" = ( +/obj/machinery/door/airlock/external, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/storage/starboard) +"CY" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"CZ" = ( +/obj/machinery/power/smes/engineering{ + charge = 1e+006 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"Da" = ( +/obj/structure/sink{ + dir = 4; + pixel_y = 1; + pixel_x = -15 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"Dd" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/office) +"De" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"Dk" = ( +/obj/machinery/light/floor, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Dp" = ( +/obj/structure/railing, +/turf/open/floor/plasteel/stairs/old{ + dir = 4 + }, +/area/ship/crew/cryo) +"Ds" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Dt" = ( +/obj/machinery/holopad/secure, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"Dx" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"Dy" = ( +/obj/structure/tank_dispenser/oxygen, +/obj/machinery/light_switch{ + pixel_y = 21; + pixel_x = 11 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"DO" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"DP" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/structure/sign/warning{ + pixel_y = -22; + pixel_x = 24 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Ea" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Ee" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Eh" = ( +/obj/machinery/holopad/secure, +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/captain) +"En" = ( +/obj/machinery/atmospherics/pipe/simple/supply/visible{ + dir = 6 + }, +/obj/effect/turf_decal/corner_techfloor_grid{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/corner{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"Eo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_2" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/dorm/captain) +"Et" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1 + }, +/obj/machinery/air_sensor/ship/bolide/fuel_2{ + pixel_x = 16; + pixel_y = -10 + }, +/obj/structure/sign/warning/fire{ + pixel_y = -22; + pixel_x = 16 + }, +/turf/open/floor/engine/hydrogen_fuel, +/area/ship/engineering/engines/starboard) +"Eu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/opaque/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"Ey" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/railing, +/obj/structure/pitgrate, +/turf/open/floor/plasteel/elevatorshaft, +/area/ship/hallway/central) +"EC" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"ED" = ( +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"EE" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 4 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"EM" = ( +/obj/machinery/power/port_gen/pacman/super, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/effect/turf_decal/techfloor{ + dir = 5 + }, +/obj/machinery/light/directional/north, +/obj/item/wrench{ + pixel_x = 6; + pixel_y = 6 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"EO" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"EP" = ( +/obj/machinery/cryopod{ + dir = 4 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/pod/dark, +/area/ship/crew/cryo) +"ER" = ( +/obj/machinery/photocopier, +/obj/item/radio/intercom/directional/east, +/obj/machinery/light_switch{ + pixel_y = 21; + pixel_x = -11 + }, +/obj/machinery/computer/helm/viewscreen/directional/north{ + pixel_x = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"ES" = ( +/obj/machinery/door/window/brigdoor{ + dir = 1; + req_access = list(3) + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"EX" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"Fa" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/item/kirbyplants{ + icon_state = "plant-18"; + pixel_x = 11; + pixel_y = 21 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Fg" = ( +/obj/structure/sign/warning/nosmoking{ + pixel_y = -28 + }, +/obj/structure/rack, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/machinery/light_switch{ + pixel_x = -12; + dir = 1; + pixel_y = -20 + }, +/obj/item/reagent_containers/glass/concrete_bag{ + pixel_x = -5 + }, +/obj/item/reagent_containers/glass/concrete_bag, +/obj/item/reagent_containers/glass/concrete_bag{ + pixel_x = 5 + }, +/obj/item/reagent_containers/glass/concrete_bag{ + pixel_x = -2 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"Fl" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Fm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{ + dir = 1 + }, +/turf/open/floor/engine/air, +/area/ship/engineering) +"Fr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Fs" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Ft" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"FB" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/atmospherics/pipe/layer_manifold, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_1" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/hallway/fore) +"FC" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/structure/table/reinforced, +/obj/item/radio/intercom/table{ + dir = 1; + pixel_y = 4; + pixel_x = -18 + }, +/obj/item/radio/intercom/table{ + dir = 1; + pixel_x = 18; + pixel_y = 4 + }, +/obj/item/radio/intercom/table{ + dir = 1; + pixel_y = 4 + }, +/obj/item/radio/intercom/table{ + dir = 1; + pixel_y = 4; + pixel_x = -18 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"FJ" = ( +/obj/machinery/power/smes/engineering{ + charge = 1e+006 + }, +/obj/structure/railing{ + dir = 6 + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"FN" = ( +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 4 + }, +/obj/structure/sign/warning/securearea{ + pixel_y = 26; + pixel_x = -6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"FO" = ( +/obj/structure/bed/double{ + dir = 4 + }, +/obj/item/bedsheet/double{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/captain) +"FP" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/mining{ + name = "Cargo Bay" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/cargo) +"FR" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/hallway/fore) +"FS" = ( +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"Gh" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Gi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/extinguisher_cabinet/directional/west, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/effect/turf_decal/corner_steel_grid/full, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 10 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Gm" = ( +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/cargo) +"Gv" = ( +/obj/structure/chair/office{ + dir = 1 + }, +/obj/effect/landmark/start/head_of_security, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"Gw" = ( +/obj/structure/rack, +/obj/effect/turf_decal/borderfloor/full, +/obj/item/towel{ + pixel_x = -4; + pixel_y = -1 + }, +/obj/item/towel{ + pixel_x = 8; + pixel_y = 10 + }, +/obj/item/towel{ + pixel_x = -5; + pixel_y = 10 + }, +/obj/item/towel{ + pixel_x = 8; + pixel_y = -1 + }, +/obj/item/soap/deluxe, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"GD" = ( +/obj/machinery/atmospherics/components/trinary/mixer/flipped, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"GG" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"GM" = ( +/obj/machinery/holopad/secure, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"GN" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/steeldecal/steel_decals10{ + dir = 9 + }, +/obj/structure/rack, +/obj/item/multitool{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/screwdriver{ + pixel_x = 4; + pixel_y = -3 + }, +/obj/item/wrench{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/wirecutters, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"GP" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/light/directional/west, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = -10; + pixel_y = -20 + }, +/obj/machinery/button/door{ + dir = 1; + pixel_y = -21; + pixel_x = -1; + name = "privacy shutter"; + id = "bolide_win_bridge_1" + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"GS" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"GT" = ( +/obj/structure/chair/handrail{ + dir = 8 + }, +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/structure/floodlight_frame, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"GY" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/sign/flag/gezena{ + dir = 1; + pixel_y = -28 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/captain) +"Hj" = ( +/obj/machinery/blackbox_recorder, +/obj/effect/turf_decal/techfloor{ + dir = 5 + }, +/obj/machinery/light/directional/east, +/obj/machinery/door/window/brigdoor/westright{ + req_one_access = list(20, 57, 58) + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"Ho" = ( +/obj/machinery/suit_storage_unit/inherit, +/obj/item/clothing/suit/space/gezena, +/obj/item/clothing/head/helmet/space/gezena, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/obj/machinery/light/directional/east, +/obj/structure/noticeboard{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"Hr" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger{ + pixel_y = 8; + pixel_x = 8 + }, +/obj/machinery/recharger{ + pixel_y = 8; + pixel_x = -8 + }, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/vault, +/area/ship/security/armory) +"Hv" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/floordetail/pryhole, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"HB" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/captain) +"HD" = ( +/obj/structure/railing/corner{ + dir = 1; + pixel_y = -22 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 8 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"HU" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/external/dark) +"HW" = ( +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/ship/storage/starboard) +"Ia" = ( +/obj/structure/closet/crate/internals, +/obj/item/tank/internals/oxygen/red, +/obj/item/tank/internals/oxygen/red, +/obj/item/tank/internals/oxygen/red, +/obj/item/tank/internals/oxygen/red, +/obj/item/tank/internals/oxygen/red, +/obj/item/tank/internals/oxygen/red, +/obj/item/tank/internals/oxygen/yellow, +/obj/item/tank/internals/oxygen/yellow, +/obj/item/tank/internals/oxygen/yellow, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"If" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"Im" = ( +/obj/structure/window/plasma/reinforced/fulltile, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/visible, +/turf/open/floor/plating, +/area/ship/engineering) +"In" = ( +/obj/machinery/atmospherics/components/unary/passive_vent/layer4, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"Iu" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"Iw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"IF" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 8 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"IH" = ( +/obj/machinery/holopad/secure, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/office) +"II" = ( +/obj/structure/sign/warning{ + pixel_y = 24 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"IK" = ( +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 1 + }, +/obj/structure/closet/secure_closet{ + anchored = 1; + can_be_unanchored = 1; + icon_state = "armory"; + name = "armor locker"; + req_access_txt = "1" + }, +/obj/item/clothing/suit/armor/gezena/marinecoat, +/obj/item/clothing/suit/armor/gezena/marinecoat, +/obj/item/clothing/suit/armor/gezena/marinecoat, +/obj/item/clothing/suit/armor/gezena/marinecoat, +/obj/item/storage/belt/military/gezena, +/obj/item/storage/belt/military/gezena, +/obj/item/storage/belt/military/gezena, +/obj/item/storage/belt/military/gezena, +/obj/item/storage/belt/military/gezena, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/machinery/light/directional/south, +/obj/item/clothing/suit/armor/gezena/marine, +/obj/item/clothing/suit/armor/gezena/marine, +/obj/item/storage/belt/military/gezena, +/turf/open/floor/vault, +/area/ship/security/armory) +"IM" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/captain) +"IN" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"IV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"IY" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 6 + }, +/obj/effect/decal/cleanable/oil{ + pixel_y = 4; + pixel_x = 2 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"Jd" = ( +/obj/machinery/door/airlock{ + name = "Dormitories" + }, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/crew/dorm) +"Je" = ( +/obj/machinery/shower{ + pixel_y = 0; + dir = 1 + }, +/obj/effect/turf_decal/borderfloor/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"Jh" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/effect/turf_decal/steeldecal/steel_decals10{ + dir = 4 + }, +/obj/effect/turf_decal/steeldecal/steel_decals10, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"Jm" = ( +/obj/structure/bed, +/obj/structure/railing{ + dir = 1 + }, +/obj/item/bedsheet/dorms, +/obj/structure/curtain/cloth/grey, +/obj/structure/sign/poster/rilena/run{ + pixel_y = 30 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"Js" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/structure/railing, +/obj/structure/closet/secure_closet/engineering_electrical, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"Jv" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Jx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"JG" = ( +/obj/machinery/atmospherics/pipe/manifold4w/orange/visible, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/effect/turf_decal/corner_techfloor_gray{ + dir = 6 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"JJ" = ( +/obj/machinery/shower{ + pixel_y = 18 + }, +/obj/effect/turf_decal/borderfloor/corner, +/obj/machinery/light/small/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"JK" = ( +/obj/structure/sign/warning/securearea{ + pixel_x = -24; + pixel_y = 10 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/structure/closet/firecloset/wall/directional/south, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"JS" = ( +/obj/structure/closet/secure_closet{ + icon_state = "blueshield"; + req_access = list(20); + name = "captain's locker" + }, +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/obj/item/radio/headset/pgf/alt/captain, +/obj/item/clothing/under/gezena/captain{ + pixel_x = 5; + pixel_y = -5 + }, +/obj/item/clothing/neck/cloak/gezena/captain, +/obj/item/clothing/gloves/gezena/captain{ + pixel_y = 4 + }, +/obj/item/clothing/accessory/medal/silver/valor, +/obj/item/clothing/mask/whistle{ + name = "marine whistle" + }, +/obj/item/storage/box/holodisc{ + pixel_x = 7 + }, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/head/gezena/captain, +/obj/item/clothing/suit/armor/gezena/captain, +/obj/item/storage/guncase/pistol/kalixpistol, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/captain) +"JY" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"JZ" = ( +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 1 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"Kh" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 5 + }, +/obj/machinery/light/floor, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Kk" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Kn" = ( +/obj/structure/table/reinforced, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/security/armory) +"Ko" = ( +/obj/structure/chair/handrail{ + dir = 8 + }, +/obj/structure/floodlight_frame, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"Kp" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/item/gun/energy/kalix/pgf/heavy{ + pixel_y = 11; + pixel_x = -3 + }, +/obj/item/gun/energy/kalix/pistol{ + pixel_x = 4; + pixel_y = -5 + }, +/obj/item/gun/energy/kalix/pistol{ + pixel_x = -6; + pixel_y = 2 + }, +/obj/item/gun/energy/kalix/pistol{ + pixel_x = 3; + pixel_y = 2 + }, +/obj/item/gun/energy/kalix/pistol{ + pixel_x = -6; + pixel_y = -5 + }, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/vault, +/area/ship/security/armory) +"Kt" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/sign/warning{ + pixel_y = -22 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Kv" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/techfloor/orange{ + dir = 9 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/clipboard{ + pixel_y = -6; + pixel_x = -4 + }, +/obj/item/hand_labeler{ + pixel_y = 10; + pixel_x = 4 + }, +/obj/item/paper_bin{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/pen/fourcolor{ + pixel_y = -1; + pixel_x = 2 + }, +/obj/item/flashlight/lamp{ + pixel_y = -12 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"Ky" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/security/armory) +"KA" = ( +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"KC" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/airlock/command{ + req_access = list(3) + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/crew/office) +"KG" = ( +/obj/machinery/atmospherics/components/unary/portables_connector, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/box, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"KI" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/techfloor{ + dir = 10 + }, +/obj/item/reagent_containers/food/drinks/mug/tea{ + pixel_y = 10; + pixel_x = 12 + }, +/obj/item/paper_bin{ + pixel_x = -3; + pixel_y = 11 + }, +/obj/item/pen/fourcolor{ + pixel_x = -4; + pixel_y = 12 + }, +/obj/item/pen/fountain{ + pixel_x = 5; + pixel_y = 4 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"KL" = ( +/obj/structure/rack, +/obj/structure/sign/warning/nosmoking{ + pixel_x = 24 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 10 + }, +/obj/item/crowbar/large{ + pixel_x = 7 + }, +/obj/item/crowbar/large, +/obj/item/crowbar/large, +/obj/item/crowbar/large{ + pixel_x = -8 + }, +/obj/item/shovel{ + pixel_y = -4 + }, +/obj/item/shovel{ + pixel_x = 11; + pixel_y = -7 + }, +/obj/item/shovel{ + pixel_x = 6; + pixel_y = -5 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"KM" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"KQ" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/effect/turf_decal/steeldecal/steel_decals_central6, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -20; + pixel_y = 12 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"Lh" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 4 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"Li" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"Lj" = ( +/obj/machinery/door/airlock{ + dir = 8; + name = "Head"; + id_tag = "bol_priv2" + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/crew/ccommons) +"Ll" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"Lm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 20; + pixel_y = 12 + }, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Lt" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 4 + }, +/area/ship/bridge) +"Lu" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/light/small/directional/south, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/closet/cabinet, +/obj/structure/curtain/cloth/grey, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"Lw" = ( +/obj/machinery/computer/crew{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/opaque/blue/filled/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"LA" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/drinks/coffee, +/obj/item/reagent_containers/food/drinks/coffee{ + pixel_x = -5; + pixel_y = 7 + }, +/obj/item/reagent_containers/food/drinks/coffee{ + pixel_x = 11; + pixel_y = 9 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/cryo) +"LG" = ( +/obj/machinery/power/shuttle/engine/fire{ + dir = 4 + }, +/obj/structure/sign/warning{ + pixel_x = -10; + pixel_y = 23 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/starboard) +"LH" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 2 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"LL" = ( +/obj/structure/closet/crate{ + name = "CLIP lend-lease" + }, +/obj/item/clothing/mask/gas/clip, +/obj/item/clothing/mask/gas/clip, +/obj/item/clothing/mask/gas/clip, +/obj/item/clothing/mask/gas/clip, +/obj/item/clothing/mask/gas/clip, +/obj/item/clothing/mask/gas/clip, +/obj/item/clothing/mask/gas/clip, +/obj/item/clothing/mask/gas/clip, +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/obj/item/storage/box/flares, +/obj/item/storage/box/flares, +/obj/item/storage/box/flares, +/obj/item/storage/box/flares, +/obj/item/storage/box/flares, +/obj/item/storage/box/flares, +/obj/item/storage/box/flares, +/obj/item/storage/box/flares, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"LN" = ( +/obj/item/radio/intercom/directional/west, +/obj/structure/closet/crate/freezer/blood, +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"LQ" = ( +/obj/effect/turf_decal/techfloor, +/obj/machinery/modular_computer/console/preset/command{ + dir = 1 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"LR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"LS" = ( +/obj/machinery/shower{ + pixel_y = 18 + }, +/obj/effect/turf_decal/borderfloor/corner{ + dir = 8 + }, +/obj/machinery/firealarm/directional/east, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"LY" = ( +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + id = "elated_bolide_bay"; + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/cargo) +"Mz" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/sign/warning{ + pixel_y = -22; + pixel_x = -24 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"MC" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1 + }, +/turf/open/floor/engine/air, +/area/ship/engineering) +"ME" = ( +/obj/structure/crate_shelf{ + capacity = 2 + }, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/ridged, +/area/ship/cargo) +"MH" = ( +/obj/structure/chair/office{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"MJ" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/office) +"MP" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/advanced_airlock_controller{ + pixel_x = -26; + pixel_y = 3 + }, +/obj/machinery/light/floor, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/suit_storage_unit/inherit, +/obj/item/clothing/head/helmet/space/gezena, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas, +/obj/item/clothing/suit/space/gezena, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"MS" = ( +/obj/machinery/atmospherics/components/unary/portables_connector{ + dir = 4 + }, +/obj/effect/turf_decal/box, +/obj/item/wrench{ + pixel_x = -8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"MU" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/machinery/light/floor, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Nb" = ( +/obj/machinery/power/port_gen/pacman/super, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/effect/turf_decal/techfloor{ + dir = 9 + }, +/obj/structure/sign/poster/contraband/missing_gloves{ + pixel_y = 30 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"Ng" = ( +/obj/machinery/door/airlock/engineering{ + req_one_access = list(1, 10); + name = "Starboard Engines" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/effect/turf_decal/techfloor/orange, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering/engines/starboard) +"Nl" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/engineering) +"Np" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"Nq" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 6 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"Nv" = ( +/obj/structure/rack, +/obj/item/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -3 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = 6 + }, +/obj/machinery/light/small/directional/south, +/obj/effect/turf_decal/techfloor, +/obj/item/gear_pack/anglegrinder, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"Ny" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber, +/turf/open/floor/engine/hydrogen_fuel, +/area/ship/engineering/engines/port) +"NG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/airalarm/directional/west, +/obj/effect/turf_decal/borderfloorblack/corner, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"NK" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/effect/turf_decal/steeldecal/steel_decals_central7, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"NQ" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"NU" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 10 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"On" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/effect/turf_decal/steeldecal/steel_decals_central7{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Ot" = ( +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + id = "elated_bolide_bay"; + dir = 8 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/cargo) +"Ov" = ( +/obj/structure/chair/office{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/opaque/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"Oz" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm) +"OA" = ( +/obj/structure/rack, +/obj/structure/extinguisher_cabinet/directional/east, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/item/clothing/head/welding{ + pixel_x = -8; + pixel_y = 8 + }, +/obj/item/gear_pack/anglegrinder{ + pixel_x = 3 + }, +/obj/item/clothing/glasses/welding{ + pixel_y = 9; + pixel_x = -6 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"OB" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/structure/sign/warning{ + pixel_y = 24 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"OL" = ( +/obj/structure/table/chem, +/obj/item/storage/box/bodybags{ + pixel_x = 9; + pixel_y = 5 + }, +/obj/item/storage/box/syringes{ + pixel_y = 0; + pixel_x = -6 + }, +/obj/machinery/light/small/directional/east, +/obj/structure/sign/poster/official/cleanliness{ + pixel_y = 30 + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"OT" = ( +/obj/machinery/power/ship_gravity, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/sign/poster/contraband/hacking_guide{ + pixel_x = -28 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"OU" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Pb" = ( +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/techfloor{ + dir = 10 + }, +/obj/effect/turf_decal/techfloor/corner{ + dir = 4 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"Pc" = ( +/obj/structure/closet/crate/radiation, +/obj/item/stack/sheet/mineral/uranium/twenty, +/obj/structure/sign/poster/contraband/missing_gloves{ + pixel_x = -28 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"Pr" = ( +/obj/structure/sign/warning/nosmoking{ + pixel_x = -24 + }, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/crate_shelf{ + capacity = 2 + }, +/turf/open/floor/plasteel/patterned/ridged, +/area/ship/cargo) +"Ps" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"Px" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"PB" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"PC" = ( +/obj/structure/toilet{ + dir = 8; + pixel_x = 5; + pixel_y = 4 + }, +/obj/structure/curtain, +/obj/effect/turf_decal/steeldecal/steel_decals_central4{ + dir = 1 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/plasteel/mono, +/area/ship/crew/ccommons) +"PD" = ( +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 2 + }, +/area/ship/cargo) +"PI" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"PQ" = ( +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/siding/wood{ + dir = 6 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"PS" = ( +/obj/structure/table/reinforced, +/obj/machinery/cell_charger{ + pixel_y = 7; + pixel_x = 2 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"PZ" = ( +/obj/effect/turf_decal/corner/transparent/bottlegreen/border{ + dir = 1 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/ccommons) +"Qa" = ( +/obj/structure/closet/secure_closet/wall/directional/east{ + icon_state = "cargo_wall" + }, +/obj/item/storage/backpack/satchel/eng, +/obj/item/clothing/suit/armor/gezena/engi{ + pixel_y = -4; + pixel_x = -3 + }, +/obj/item/clothing/neck/cloak/gezena/engi{ + pixel_y = 6; + pixel_x = -9 + }, +/obj/item/clothing/glasses/meson{ + pixel_y = 11 + }, +/obj/item/storage/belt/utility/full{ + pixel_y = -6; + pixel_x = -5 + }, +/obj/item/storage/backpack/duffelbag/engineering{ + pixel_y = -6; + pixel_x = 5 + }, +/obj/item/clothing/gloves/gezena/engi{ + pixel_x = -3; + pixel_y = -2 + }, +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = 2 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/storage/backpack/industrial{ + pixel_x = 7 + }, +/obj/structure/table/reinforced, +/obj/item/geiger_counter, +/obj/item/radio/headset/pgf/alt, +/obj/item/clothing/head/gezena, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"Qb" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/machinery/computer/crew{ + dir = 4; + icon_state = "computer-right" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"Qg" = ( +/obj/machinery/door/airlock{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/crew/ccommons) +"Qu" = ( +/obj/structure/curtain/cloth/grey, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/bed, +/obj/item/bedsheet/dorms, +/obj/item/storage/crayons{ + pixel_x = -2; + pixel_y = -5 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"QH" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"QK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/obj/item/radio/intercom/directional/east, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 21; + pixel_y = 13 + }, +/obj/effect/turf_decal/borderfloorblack/corner{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"QR" = ( +/obj/machinery/computer/atmos_control/ship/bolide{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"QT" = ( +/obj/machinery/camera/autoname, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"QU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/borderfloor{ + dir = 5 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel, +/area/ship/medical) +"QW" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/effect/turf_decal/techfloor/orange, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/security{ + dir = 2; + name = "Armory"; + req_one_access_txt = "1" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"QZ" = ( +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bomb_suit"; + name = "Bomb Disposal Gear" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"Rg" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Rk" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"Rm" = ( +/obj/structure/table/wood, +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black, +/obj/item/paper_bin{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/folder/pgf/blue{ + pixel_y = 3; + pixel_x = -2 + }, +/obj/item/folder/pgf/red{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/item/pen/fourcolor{ + pixel_x = -5; + pixel_y = 3 + }, +/obj/item/folder/pgf/blue/bolide{ + pixel_x = 5; + pixel_y = -7 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/captain) +"Rt" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"Rv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay_win_1" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/office) +"Ry" = ( +/obj/machinery/door/airlock/engineering{ + req_one_access = list(1, 10); + name = "Engineering Storage" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/storage/port) +"Rz" = ( +/obj/machinery/door/airlock/command{ + dir = 4; + name = "Bridge"; + req_one_access = list(20, 57, 58) + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/bridge) +"RB" = ( +/obj/structure/table/reinforced, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/techfloor/orange/corner{ + dir = 8 + }, +/obj/machinery/camera/autoname, +/obj/item/stack/sheet/metal/twenty{ + pixel_x = 5 + }, +/obj/item/stack/sheet/glass/twenty{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weldingtool{ + pixel_x = 6; + pixel_y = 5 + }, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"RH" = ( +/obj/structure/crate_shelf, +/obj/structure/sign/poster/contraband/gec{ + pixel_y = 30 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/techfloor{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"RJ" = ( +/obj/machinery/door/airlock/engineering{ + dir = 4; + req_one_access = list(1, 10); + name = "Engineering" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"RO" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"RQ" = ( +/obj/structure/railing/corner, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"RS" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/structure/sign/warning/securearea{ + pixel_x = 9; + pixel_y = -21 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"RT" = ( +/obj/structure/chair/office, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"Se" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/machinery/light/floor, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Sj" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = -11; + pixel_y = -20 + }, +/obj/effect/turf_decal/corner_steel_grid/full, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 10 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"Sr" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/techfloor{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/engineering) +"Su" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/crate_shelf{ + capacity = 2 + }, +/obj/machinery/airalarm/directional/north, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/ridged, +/area/ship/cargo) +"SD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay_win_2"; + dir = 4 + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/office) +"SE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/airalarm/directional/west, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"SH" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/structure/rack, +/obj/item/clothing/suit/bomb_suit{ + pixel_x = -3; + pixel_y = -1 + }, +/obj/item/clothing/head/bomb_hood{ + pixel_y = 9; + pixel_x = -3 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = -7; + pixel_x = 3 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/item/storage/toolbox/explosives{ + pixel_x = -1; + pixel_y = -8 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/item/clothing/gloves/gezena/engi, +/obj/item/radio/headset/pgf/alt, +/obj/item/gps, +/obj/machinery/light/small/directional/west, +/obj/item/clothing/under/gezena/marine{ + pixel_x = 8; + pixel_y = 9 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"SO" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"SS" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/fire, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"SU" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security/armory) +"SY" = ( +/obj/structure/closet/crate/rations, +/obj/item/reagent_containers/food/drinks/waterbottle/large, +/obj/item/reagent_containers/food/drinks/waterbottle/large, +/obj/item/reagent_containers/food/drinks/waterbottle/large, +/obj/item/reagent_containers/food/drinks/waterbottle/large, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"Tf" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_1" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/hallway/fore) +"Tn" = ( +/obj/machinery/atmospherics/components/binary/dp_vent_pump/on/layer2{ + dir = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/industrial/warning, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/storage/starboard) +"To" = ( +/obj/machinery/light_switch{ + dir = 2; + pixel_x = -11; + pixel_y = 20 + }, +/obj/machinery/vending/cigarette, +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"Ty" = ( +/obj/effect/turf_decal/floordetail/tiled, +/obj/effect/turf_decal/techfloor{ + dir = 1 + }, +/obj/machinery/light/small/directional/north, +/obj/item/radio/intercom/wideband/directional/west, +/obj/structure/chair/comfy/shuttle{ + dir = 4; + name = "grav couch" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"TA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/structure/cable{ + icon_state = "1-6" + }, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 9 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/dorm) +"TB" = ( +/obj/effect/turf_decal/floordetail/tiled, +/obj/effect/turf_decal/techfloor, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/item/radio/intercom/directional/south, +/obj/structure/chair/comfy/shuttle{ + dir = 4; + name = "grav couch" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"TC" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"TG" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/light/floor, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"TK" = ( +/obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/steeldecal/steel_decals_central7{ + dir = 1 + }, +/obj/machinery/light_switch{ + dir = 8; + pixel_y = 10; + pixel_x = 20 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"TN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"TR" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/item/kirbyplants{ + icon_state = "plant-21"; + pixel_y = 0 + }, +/obj/machinery/newscaster/directional/south, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"TS" = ( +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-10" + }, +/obj/structure/cable{ + icon_state = "1-6" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"TV" = ( +/obj/machinery/cryopod{ + dir = 4 + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/pod/dark, +/area/ship/crew/cryo) +"TW" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer4, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Uc" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/turf_decal/steeldecal/steel_decals_central7{ + dir = 8 + }, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -21; + pixel_y = -12 + }, +/obj/structure/closet/crate/bin{ + pixel_y = 4 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Ud" = ( +/obj/effect/turf_decal/etherbor/left, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Ug" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"Uj" = ( +/obj/structure/curtain, +/obj/structure/toilet{ + dir = 4; + pixel_y = 6; + pixel_x = -6 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/light/small/directional/west, +/obj/effect/turf_decal/steeldecal/steel_decals_central4{ + dir = 4 + }, +/turf/open/floor/plasteel/mono, +/area/ship/crew/dorm) +"Ul" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_2" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/dorm/captain) +"Up" = ( +/obj/structure/table/chem, +/obj/item/storage/firstaid/regular{ + pixel_x = 9; + pixel_y = 20 + }, +/obj/item/storage/firstaid/regular{ + pixel_x = 9; + pixel_y = 9 + }, +/obj/item/reagent_containers/glass/bottle/morphine{ + pixel_x = -4; + pixel_y = 14 + }, +/obj/item/reagent_containers/glass/bottle/morphine{ + pixel_x = -4; + pixel_y = 9 + }, +/obj/item/reagent_containers/glass/bottle/morphine{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/reagent_containers/glass/bottle/morphine{ + pixel_x = -4; + pixel_y = -1 + }, +/obj/item/storage/firstaid/medical{ + pixel_x = 9; + pixel_y = -2 + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"Us" = ( +/obj/structure/sign/warning/explosives/alt{ + pixel_y = 2; + pixel_x = -32 + }, +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/steeldecal/steel_decals6{ + dir = 8 + }, +/obj/machinery/button/door{ + dir = 1; + pixel_x = -10; + pixel_y = -20; + name = "secure storage access"; + id = "bolide_bombs"; + req_access = list(3) + }, +/obj/machinery/firealarm/directional/south{ + pixel_x = 5 + }, +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"Ut" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/trimline/opaque/green/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"Uu" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/cargo) +"Uz" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"UF" = ( +/obj/machinery/air_sensor/ship/bolide/air, +/turf/open/floor/engine/air, +/area/ship/engineering) +"UK" = ( +/obj/structure/table/reinforced, +/obj/machinery/cell_charger{ + pixel_y = 7; + pixel_x = 2 + }, +/obj/item/desk_flag/gezena{ + pixel_x = -11; + pixel_y = 10 + }, +/obj/item/stock_parts/cell/high{ + pixel_y = -2; + pixel_x = -2 + }, +/obj/item/stock_parts/cell/high{ + pixel_x = 10; + pixel_y = 3 + }, +/obj/machinery/firealarm/directional/east, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"UR" = ( +/obj/structure/toilet/secret/bolide{ + dir = 4; + pixel_x = -6; + pixel_y = 6 + }, +/obj/structure/window/reinforced, +/obj/structure/curtain, +/obj/machinery/light/small/directional/west, +/obj/effect/turf_decal/steeldecal/steel_decals_central4{ + dir = 4 + }, +/obj/effect/decal/cleanable/vomit/old, +/turf/open/floor/plasteel/mono, +/area/ship/crew/dorm) +"UT" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay_win_1" + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/office) +"Vd" = ( +/obj/structure/closet/wall/white/directional/south, +/obj/item/storage/ration/crayons, +/obj/structure/table/reinforced, +/obj/machinery/door/airlock/security{ + dir = 2; + name = "Engineering Storage"; + req_one_access_txt = "1" + }, +/turf/open/floor/plasteel/mono/white, +/area/ship/crew/ccommons) +"Ve" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/steeldecal/steel_decals9, +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/borderfloor/corner{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"Vg" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/machinery/computer/cryopod/directional/north, +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 8 + }, +/obj/machinery/light_switch{ + pixel_x = -15; + pixel_y = 24 + }, +/obj/machinery/light/small/directional/east, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"Vj" = ( +/obj/structure/closet/crate/freezer/surplus_limbs, +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"Vo" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/bridge) +"Vq" = ( +/obj/structure/bed/roller, +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/hatch/blue, +/obj/effect/decal/cleanable/blood{ + icon_state = "floor5" + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"Vy" = ( +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plating, +/area/ship/storage/starboard) +"Vz" = ( +/obj/structure/rack, +/obj/item/reagent_containers/glass/bucket{ + name = "concrete bucket"; + desc = "It's a bucket... for concrete...."; + pixel_x = 8; + pixel_y = -7 + }, +/obj/item/reagent_containers/glass/bucket{ + name = "concrete bucket"; + desc = "It's a bucket... for concrete...."; + pixel_x = -10; + pixel_y = -6 + }, +/obj/item/reagent_containers/glass/bucket{ + name = "concrete bucket"; + desc = "It's a bucket... for concrete...."; + pixel_y = -7 + }, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/techfloor/orange{ + dir = 9 + }, +/obj/item/storage/box/emptysandbags{ + pixel_y = 8; + pixel_x = -11 + }, +/obj/item/storage/box/emptysandbags{ + pixel_y = 8; + pixel_x = -4 + }, +/obj/item/storage/box/emptysandbags{ + pixel_y = 8; + pixel_x = 3 + }, +/obj/item/storage/box/emptysandbags{ + pixel_y = 8; + pixel_x = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/storage/port) +"VC" = ( +/obj/structure/closet/secure_closet/wall/directional/east{ + icon_state = "cargo_wall" + }, +/obj/item/storage/backpack/satchel/eng, +/obj/item/clothing/suit/armor/gezena/engi{ + pixel_y = -4; + pixel_x = -3 + }, +/obj/item/clothing/neck/cloak/gezena/engi{ + pixel_y = 6; + pixel_x = -9 + }, +/obj/item/clothing/glasses/meson{ + pixel_y = 11 + }, +/obj/item/storage/belt/utility/full{ + pixel_y = -6; + pixel_x = -6 + }, +/obj/item/storage/backpack/duffelbag/engineering{ + pixel_y = -6; + pixel_x = 5 + }, +/obj/item/clothing/gloves/gezena/engi{ + pixel_x = -3; + pixel_y = -2 + }, +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = 2 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/storage/backpack/industrial{ + pixel_x = 7 + }, +/obj/structure/table/reinforced, +/obj/item/geiger_counter, +/obj/item/radio/headset/pgf/alt, +/obj/item/clothing/head/gezena, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"VF" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/bridge) +"VW" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/machinery/light/small/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"VX" = ( +/obj/machinery/door/airlock/external, +/obj/machinery/atmospherics/pipe/layer_manifold, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/storage/starboard) +"VY" = ( +/obj/structure/window/plasma/reinforced/fulltile, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/ship/engineering) +"Wk" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_airlock"; + dir = 4 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/hallway/fore) +"Wp" = ( +/obj/machinery/atmospherics/components/binary/valve, +/obj/effect/turf_decal/industrial/shutoff, +/obj/effect/turf_decal/techfloor{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"Ws" = ( +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 2 + }, +/area/ship/engineering) +"Wy" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/spline/fancy/transparent/bottlegreen{ + dir = 1 + }, +/obj/machinery/firealarm/directional/east, +/obj/machinery/light_switch{ + pixel_x = 20; + pixel_y = 10; + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"WA" = ( +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay" + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/cargo) +"WN" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_bay_win_2"; + dir = 4 + }, +/turf/open/floor/engine/hull/interior, +/area/ship/crew/office) +"WS" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 4 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"WV" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/sign/warning/vacuum{ + pixel_x = 28; + pixel_y = -8 + }, +/obj/structure/chair/handrail{ + dir = 8 + }, +/obj/item/radio/intercom/directional/east{ + pixel_y = 6 + }, +/obj/machinery/light/floor, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"WY" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/security) +"Xc" = ( +/obj/structure/chair/office{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/office) +"Xd" = ( +/obj/machinery/computer/security, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/light/small/directional/east, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"Xi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"Xo" = ( +/obj/effect/turf_decal/trimline/opaque/green/filled, +/turf/open/floor/plasteel/mono/white, +/area/ship/security) +"Xr" = ( +/obj/structure/window/plasma/reinforced/fulltile, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"Xu" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"Xx" = ( +/obj/machinery/door/airlock/command{ + req_access = list(3); + id_tag = "bol_priv3"; + name = "Marine Lieutenant's Quarters" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/techfloor/orange, +/obj/effect/turf_decal/techfloor/orange{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/tech/grid, +/area/ship/security) +"XA" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/light/directional/north, +/obj/machinery/firealarm/directional/east{ + pixel_y = 6 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"XB" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"XJ" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 8 + }, +/area/ship/bridge) +"XU" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/binary/dp_vent_pump/on/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/hallway/fore) +"XY" = ( +/obj/structure/sign/departments/medbay/alt{ + pixel_y = 28 + }, +/obj/structure/chair, +/obj/machinery/light/small/directional/east, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/hallway/central) +"Yb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"Yg" = ( +/obj/machinery/shower{ + pixel_y = 0; + dir = 1 + }, +/obj/effect/turf_decal/borderfloor/corner{ + dir = 4 + }, +/obj/machinery/light/small/directional/west, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) +"Yi" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"Yl" = ( +/obj/machinery/washing_machine, +/obj/item/toy/plush/rilena{ + pixel_y = 13 + }, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/crew/dorm) +"Yq" = ( +/obj/effect/turf_decal/trimline/opaque/green/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/security) +"Yt" = ( +/obj/machinery/photocopier, +/obj/machinery/airalarm/directional/south, +/obj/item/folder/pgf/empty_sheets{ + pixel_x = 3; + pixel_y = 1 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 9 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"Yv" = ( +/obj/effect/turf_decal/spline/fancy/opaque/black/corner{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green/corner{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"YM" = ( +/obj/structure/sign/warning/securearea{ + pixel_x = 24; + pixel_y = -4 + }, +/obj/machinery/light/small/directional/north, +/obj/structure/closet/secure_closet/medical3{ + name = "medic's locker"; + populate = 0 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = 3; + pixel_y = 11 + }, +/obj/item/clothing/head/gezena/medic{ + pixel_y = 4; + pixel_x = 7 + }, +/obj/item/clothing/neck/cloak/gezena/med{ + pixel_y = -4; + pixel_x = 1 + }, +/obj/item/clothing/head/gezena/flap/medic{ + pixel_y = 1; + pixel_x = 12 + }, +/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 7; + pixel_y = -7 + }, +/obj/item/storage/backpack/satchel/med{ + pixel_x = 7; + pixel_y = -10 + }, +/obj/item/clothing/suit/armor/gezena{ + pixel_y = 9; + pixel_x = -9 + }, +/obj/item/clothing/under/gezena{ + pixel_x = -9; + pixel_y = -5 + }, +/obj/item/storage/belt/medical/gezena{ + pixel_x = -9; + pixel_y = 3 + }, +/obj/effect/turf_decal/box, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"YN" = ( +/obj/structure/cable{ + icon_state = "4-9" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/green, +/turf/open/floor/plasteel/mono/dark, +/area/ship/crew/ccommons) +"YQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/opaque/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/medical) +"YS" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 6 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"YT" = ( +/obj/structure/table/reinforced, +/obj/structure/closet/secure_closet/wall/directional/east{ + icon_state = "cargo_wall" + }, +/obj/item/storage/toolbox/mechanical{ + pixel_x = 4; + pixel_y = 9 + }, +/obj/item/storage/toolbox/electrical{ + pixel_x = -3; + pixel_y = -1 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"YV" = ( +/obj/machinery/airalarm/directional/south, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"YY" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) +"YZ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/structure/table/reinforced, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/item/megaphone{ + pixel_y = -2; + pixel_x = 4 + }, +/obj/item/paper_bin{ + pixel_x = -8; + pixel_y = 9 + }, +/obj/item/pen/fourcolor{ + pixel_x = -9; + pixel_y = 10 + }, +/obj/item/reagent_containers/food/drinks/mug/tea{ + pixel_y = 9; + pixel_x = 8 + }, +/obj/item/reagent_containers/food/drinks/soda_cans/tadrixx{ + pixel_y = 20 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/office) +"Zc" = ( +/obj/effect/turf_decal/spline/fancy/opaque/grey{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/stand_clear{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned/cargo_one, +/area/ship/cargo) +"Zd" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/sign/warning/fire{ + pixel_y = 23; + pixel_x = 10 + }, +/obj/structure/sign/warning/nosmoking/circle{ + pixel_y = 23 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 4 + }, +/obj/item/multitool{ + pixel_x = 2; + pixel_y = -9 + }, +/obj/machinery/button/door{ + dir = 2; + pixel_y = 21; + pixel_x = -12; + id = "bolide_engine_1"; + name = "engine access" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"Zf" = ( +/obj/machinery/airalarm/directional/north, +/turf/open/floor/plasteel/stairs/old{ + dir = 4 + }, +/area/ship/crew/cryo) +"Zg" = ( +/obj/machinery/air_sensor/ship/bolide/fuel, +/obj/structure/sign/warning/fire{ + pixel_y = 22 + }, +/obj/effect/turf_decal/atmos/mix, +/turf/open/floor/engine/hydrogen_fuel, +/area/ship/engineering/engines/port) +"Zm" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/effect/turf_decal/industrial/stand_clear, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Zp" = ( +/obj/structure/railing, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"Zt" = ( +/obj/structure/rack, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/item/gun/energy/kalix/pgf{ + pixel_y = 6 + }, +/obj/item/gun/energy/kalix/pgf{ + pixel_y = 12 + }, +/obj/item/gun/energy/kalix/pgf{ + pixel_y = 6 + }, +/obj/item/gps{ + pixel_y = -6; + pixel_x = 10 + }, +/obj/item/gps{ + pixel_y = -6 + }, +/obj/item/gps{ + pixel_y = -6; + pixel_x = -10 + }, +/obj/machinery/light/directional/north, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/vault, +/area/ship/security/armory) +"Zu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/north, +/obj/structure/closet/secure_closet/engineering_welding, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"ZC" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "bolide_win_bridge"; + dir = 4 + }, +/obj/machinery/door/firedoor/window, +/turf/open/floor/engine/hull/interior, +/area/ship/bridge) +"ZI" = ( +/obj/machinery/door/airlock{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/hallway/central) +"ZL" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"ZS" = ( +/obj/structure/closet/crate/engineering/electrical, +/obj/item/storage/bag/construction, +/obj/item/storage/bag/construction, +/obj/item/storage/bag/construction, +/obj/item/storage/bag/construction, +/turf/open/floor/plasteel/tech, +/area/ship/storage/starboard) +"ZT" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/black{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"ZY" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/obj/structure/dresser, +/obj/item/toy/plush/flushed{ + pixel_x = 3; + pixel_y = 8 + }, +/obj/item/desk_flag/gezena{ + pixel_x = -10; + pixel_y = 7 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"ZZ" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 4 + }, +/obj/effect/turf_decal/steeldecal/steel_decals6{ + dir = 8 + }, +/obj/effect/turf_decal/steeldecal/steel_decals6{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hallway/central) + +(1,1,1) = {" +oY +oY +oY +yR +gf +fG +gP +yR +oY +oY +oY +oY +oY +oY +oY +oY +oY +Bm +LG +uq +rB +Bm +oY +oY +oY +oY +oY +"} +(2,1,1) = {" +oY +oY +yR +yR +xe +xe +xe +yR +ym +ym +ym +oY +oY +oY +ym +ym +ym +Bm +pl +pl +pl +Bm +Bm +oY +oY +oY +oY +"} +(3,1,1) = {" +oY +yR +yR +yR +XA +fo +vp +yR +yR +qd +yR +qW +qW +qW +Nl +qd +Bm +Bm +gA +JG +nL +Bm +Bm +Bm +oY +oY +oY +"} +(4,1,1) = {" +oY +TG +yR +yR +yR +kQ +Yb +yR +yR +yR +yR +iO +iO +iO +Nl +Nl +Bm +Bm +uu +YV +Bm +Bm +Bm +Se +oY +oY +oY +"} +(5,1,1) = {" +oY +hd +yR +Ny +jI +Ao +ZT +dp +tL +dx +yR +Zd +Cu +IY +Ft +yu +Bm +KQ +yJ +ru +Bs +Et +Bm +Ea +oY +oY +oY +"} +(6,1,1) = {" +oY +ms +yR +Zg +jI +nz +mA +ux +Cv +cr +be +kT +EO +Ll +ly +SS +Ng +oK +BQ +rP +Xr +xE +Bm +bO +oY +oY +oY +"} +(7,1,1) = {" +oY +yR +yR +BA +eC +jJ +KG +GD +qX +yR +Nl +uD +Ws +JY +MS +Hv +Bm +Bm +Bm +Bm +Bm +Bm +Bm +xM +xM +oY +oY +"} +(8,1,1) = {" +oY +oY +yR +yR +yR +yR +yR +yR +yR +yR +Nb +Sr +xs +ur +vt +hj +VY +bx +MC +xM +As +Pc +Nv +xM +MU +oY +oY +"} +(9,1,1) = {" +oY +oY +fY +le +le +sw +vf +iq +sE +le +EM +Pb +uR +JY +iv +QR +rV +aq +UF +xM +RH +ZS +AJ +xM +Ea +oY +oY +"} +(10,1,1) = {" +oY +oY +hd +le +le +aw +aw +aw +aw +le +Nl +Cr +zi +JY +En +Wp +Im +bx +Fm +xM +uC +Rk +bR +xM +Se +oY +oY +"} +(11,1,1) = {" +oY +oY +TG +le +Ag +Px +Cg +dF +PI +Us +le +CZ +FJ +JY +id +ED +Nl +xM +xM +xM +wD +wD +xM +xM +xM +oY +oY +"} +(12,1,1) = {" +oY +oY +hd +le +dn +Rt +PB +PB +PB +Li +Ry +AS +AS +vm +iW +fr +Nl +GN +OT +Zp +vx +xC +xM +fp +xM +oY +oY +"} +(13,1,1) = {" +oY +oY +TG +le +RB +OA +KL +SO +Vz +Fg +le +tq +eE +ro +RO +ly +jn +kZ +HW +Vy +mo +iu +CV +Tn +VX +oY +oY +"} +(14,1,1) = {" +oY +oY +Uu +Uu +le +le +le +jN +le +le +le +UK +YT +du +wt +xG +Nl +Zu +TK +Js +QH +ul +xM +nT +xM +oY +oY +"} +(15,1,1) = {" +oY +Cn +Kt +Uu +ME +LN +Pr +Zc +JK +le +le +Nl +Nl +Nl +RJ +Nl +Nl +Ky +Ky +Ky +VC +Qa +xM +pI +pI +ym +eI +"} +(16,1,1) = {" +oY +BF +ql +Uu +Su +Vj +vo +gj +dE +rw +NG +RS +Uu +tB +yN +Ky +Ky +yq +nJ +Ky +Ky +Ky +Ky +ks +ob +NU +ym +"} +(17,1,1) = {" +oY +NQ +fg +Uu +yK +Ia +vo +zM +De +eq +tm +PD +kI +xw +ud +ks +Kp +qr +CE +ES +NK +EC +IK +ks +ka +Zm +ym +"} +(18,1,1) = {" +oY +FS +Uu +Uu +uE +LL +vo +zd +bT +bm +vl +pf +FP +TS +Ee +ks +rU +JZ +PS +SU +Ps +jA +jf +ks +II +Ea +ym +"} +(19,1,1) = {" +FS +In +xl +LY +oE +vJ +zc +xQ +EX +YY +QK +nS +Uu +Wy +YN +ks +Zt +sT +Hr +qq +MH +If +Az +ks +cZ +cZ +cZ +"} +(20,1,1) = {" +DO +zY +DO +zw +cn +ay +fO +rR +tv +dg +dg +dg +dg +dg +Qg +ks +ks +Kn +ks +zS +jF +kh +ks +ks +co +jm +cZ +"} +(21,1,1) = {" +mp +ch +FS +Gm +rn +ji +kc +ji +si +dg +mW +PC +PZ +Uc +GS +cZ +mJ +dk +CA +Dx +Np +CM +gE +Xx +pu +VW +cZ +"} +(22,1,1) = {" +IN +kS +IN +WA +XB +GT +Ko +gB +IV +dg +Lj +dg +dg +rZ +Fs +cZ +iS +rN +Yq +vc +ge +yZ +su +cZ +tr +cZ +cZ +"} +(23,1,1) = {" +FS +In +xl +Ot +eb +wP +wP +wP +Ve +dg +rc +Fr +SE +lq +eH +WY +Dy +lx +Xo +bl +Kv +AE +lu +cZ +cZ +cZ +MU +"} +(24,1,1) = {" +FS +FS +FS +jE +dt +kg +SD +WN +jE +jE +Bq +AH +th +aI +Kk +QW +Iu +xu +Ut +kM +Br +Gv +Xi +QZ +SH +cZ +Ea +"} +(25,1,1) = {" +oY +FS +jE +jE +jE +hP +YZ +Qb +mz +jE +Bv +Fa +Yv +Ud +Ds +WY +WY +cZ +Ho +yD +Xd +Xu +TN +QZ +hw +cZ +Se +"} +(26,1,1) = {" +oY +Cn +Mz +aO +ij +Dd +Xc +MJ +og +jE +eX +ar +bf +ha +za +Da +er +gC +gC +gC +gC +ER +wT +cZ +cZ +cZ +cZ +"} +(27,1,1) = {" +oY +BF +ql +Rv +FC +BJ +qH +we +up +KC +GM +xq +bf +uN +GG +SY +gg +gC +TV +EP +gC +gC +gC +gC +II +Ea +ym +"} +(28,1,1) = {" +oY +NQ +DP +UT +vS +jg +wk +wy +Yt +IH +jc +mZ +sy +nV +GG +in +Vd +gC +Zf +Dp +sb +hO +az +gC +ka +Zm +ym +"} +(29,1,1) = {" +oY +oY +jE +jE +jE +jE +po +ng +wx +jE +ce +sO +Bz +Yi +Lm +nM +gV +gC +Vg +HD +cH +yT +LA +gC +OB +YS +ym +"} +(30,1,1) = {" +oY +oY +ww +Vq +js +jE +jE +jE +jE +jE +dg +dg +nq +ZI +dg +dg +dg +gC +gC +gC +tI +gC +xA +xA +xA +ym +ym +"} +(31,1,1) = {" +oY +oY +ww +bH +KA +YQ +Ae +ft +oV +aT +jR +Fl +nC +TW +cT +Gi +Jd +TA +ne +iY +Sj +xA +UR +Uj +xA +oY +oY +"} +(32,1,1) = {" +oY +oY +ww +jB +mR +fU +jT +ww +XY +bL +KM +Rg +AI +Jv +aK +dq +xA +To +pG +qJ +Nq +rJ +iN +pM +xA +oY +oY +"} +(33,1,1) = {" +oY +oY +ww +OL +Up +Eu +QU +ww +oO +BC +oO +oO +Ey +hi +hk +fl +xA +oc +aD +sG +TR +xA +xA +xA +xA +oY +oY +"} +(34,1,1) = {" +oY +oY +ww +ww +nk +Ov +Iw +ww +JJ +ZZ +Yg +oO +dw +kG +Oz +AY +RQ +xX +lo +LR +qQ +Qu +xA +MU +ym +oY +oY +"} +(35,1,1) = {" +oY +oY +ym +ww +ww +Lw +CL +ww +aE +Gw +ol +oO +lg +it +Oz +jZ +mC +ZY +Ba +TC +qQ +yi +xA +Ea +ym +oY +oY +"} +(36,1,1) = {" +oY +oY +ym +Kh +ww +YM +Jx +ww +LS +BG +Je +oO +dw +kG +Oz +Yl +mC +qa +ZL +qe +PQ +Lu +xA +rb +ym +oY +oY +"} +(37,1,1) = {" +oY +oY +ym +ym +FR +FR +iz +fy +fy +fy +fy +fy +kU +Rz +VF +VF +xA +Jm +wC +xA +xA +xA +xA +ym +ym +oY +oY +"} +(38,1,1) = {" +oY +oY +oY +oY +FR +MP +Uz +gU +gI +zX +em +cc +oJ +yv +GP +VF +VF +VF +VF +VF +ym +oY +oY +oY +oY +oY +oY +"} +(39,1,1) = {" +oY +oY +oY +oY +yy +ps +AC +Ul +Rm +Eh +bh +fy +eZ +zs +XJ +VF +eM +KI +km +Se +ym +oY +oY +oY +oY +oY +oY +"} +(40,1,1) = {" +oY +oY +oY +oY +FB +XU +nb +iE +FO +HB +GY +fy +On +Gh +qm +Cp +RT +zj +te +Ea +ym +oY +oY +oY +oY +oY +oY +"} +(41,1,1) = {" +oY +oY +oY +oY +Tf +WV +IF +Eo +JS +IM +mF +fy +Hj +lj +fR +oj +Dt +LQ +LH +Se +ym +oY +oY +oY +oY +oY +oY +"} +(42,1,1) = {" +oY +oY +oY +oY +FR +FR +Wk +lf +lf +lf +lf +lf +Vo +Vo +Lt +mh +om +ih +oD +YS +ym +oY +oY +oY +oY +oY +oY +"} +(43,1,1) = {" +oY +oY +oY +oY +Ug +FR +FN +cM +CY +CY +CY +CY +Vo +Ty +Jh +TB +VF +ZC +VF +ym +ym +oY +oY +oY +oY +oY +oY +"} +(44,1,1) = {" +oY +oY +oY +oY +oY +FR +QT +Dk +HU +OU +HU +Dk +Vo +tU +uW +au +pB +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} +(45,1,1) = {" +oY +oY +oY +oY +oY +ym +oY +CY +HU +OU +HU +CY +Vo +EE +WS +Lh +fW +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} +(46,1,1) = {" +oY +oY +oY +oY +oY +ym +oY +CY +HU +OU +HU +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} +(47,1,1) = {" +oY +oY +oY +oY +oY +ym +oY +CY +HU +OU +HU +HU +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} +(48,1,1) = {" +oY +oY +oY +oY +oY +ym +HU +HU +HU +OU +HU +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} +(49,1,1) = {" +oY +oY +oY +oY +oY +oY +oY +oY +HU +OU +HU +HU +HU +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} +(50,1,1) = {" +oY +oY +oY +oY +oY +oY +oY +HU +HU +OU +HU +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} +(51,1,1) = {" +oY +oY +oY +oY +oY +oY +oY +oY +HU +OU +HU +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +oY +"} diff --git a/_maps/shuttles/pirate/pirate_noderider.dmm b/_maps/shuttles/pirate/pirate_noderider.dmm index 6861f971143f..5af3efbe556d 100644 --- a/_maps/shuttles/pirate/pirate_noderider.dmm +++ b/_maps/shuttles/pirate/pirate_noderider.dmm @@ -1502,7 +1502,7 @@ /obj/item/storage/box/handcuffs, /obj/item/clothing/glasses/meson, /obj/item/megaphone, -/obj/item/melee/transforming/energy/sword/saber/red, +/obj/item/melee/energy/sword/saber/red, /obj/item/pinpointer/crew, /obj/item/clothing/mask/gas/atmos, /obj/item/clothing/mask/whistle, diff --git a/_maps/shuttles/roumain/srm_elder.dmm b/_maps/shuttles/roumain/srm_elder.dmm index 24d00ebde456..fdd49c8d696a 100644 --- a/_maps/shuttles/roumain/srm_elder.dmm +++ b/_maps/shuttles/roumain/srm_elder.dmm @@ -1447,7 +1447,7 @@ /obj/vehicle/ridden/wheelchair{ dir = 4 }, -/obj/item/melee/transforming/cleaving_saw/old, +/obj/item/melee/cleaving_saw/old, /turf/open/floor/ship/dirt/dark, /area/ship/bridge) "rj" = ( diff --git a/_maps/shuttles/subshuttles/independent_superpill.dmm b/_maps/shuttles/subshuttles/independent_superpill.dmm index de9046d091a4..d448e0cf263f 100644 --- a/_maps/shuttles/subshuttles/independent_superpill.dmm +++ b/_maps/shuttles/subshuttles/independent_superpill.dmm @@ -10,9 +10,9 @@ "b" = ( /obj/structure/catwalk, /obj/machinery/conveyor_switch/oneway{ + desc = "A conveyor control switch. It appears to only go in one direction; once you've pulled this, there's no going back."; id = "superpill_start"; - name = "jumpstart device"; - desc = "A conveyor control switch. It appears to only go in one direction; once you've pulled this, there's no going back." + name = "jumpstart device" }, /obj/machinery/atmospherics/components/unary/outlet_injector/on/layer4{ dir = 4 @@ -34,8 +34,8 @@ id = "superpill_start" }, /obj/item/reagent_containers/pill/floorpill{ - pixel_y = -5; - pixel_x = -1 + pixel_x = -1; + pixel_y = -5 }, /obj/item/reagent_containers/pill/floorpill{ pixel_x = 6 @@ -80,7 +80,7 @@ name = "environmental storytelling" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ - filter_types = list("co2","bz","o2","plasma","water_vapor","nob","no2","tritium","freon","pluox","stim") + filter_types = list("co2","n2","co2","bz","water_vapor","miasma","freon","tritium","n20") }, /turf/open/floor/plating{ initial_gas_mix = "n2o=28, n2=72;TEMP=7" diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index f884de16926b..8c22616db287 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -325,24 +325,46 @@ // Gas defines because i hate typepaths #define GAS_O2 "o2" #define GAS_N2 "n2" +#define GAS_CO "co" +#define GAS_O3 "ozone" #define GAS_CO2 "co2" #define GAS_PLASMA "plasma" #define GAS_H2O "water_vapor" -#define GAS_HYPERNOB "nob" #define GAS_NITROUS "n2o" -#define GAS_NITRYL "no2" #define GAS_TRITIUM "tritium" #define GAS_BZ "bz" -#define GAS_STIMULUM "stim" -#define GAS_PLUOXIUM "pluox" #define GAS_FREON "freon" #define GAS_HYDROGEN "h2" #define GAS_CHLORINE "cl2" #define GAS_HYDROGEN_CHLORIDE "hcl" +#define GAS_SO2 "so2" +#define GAS_ARGON "ar" +#define GAS_METHANE "methane" +#define GAS_AMMONIA "ammonia" + #define GAS_FLAG_DANGEROUS (1<<0) #define GAS_FLAG_BREATH_PROC (1<<1) +// odors +#define GAS_ODOR_CHEMICAL list(\ + span_notice("It smells fainly like space cleaner."),\ + span_danger("It smells like chemicals."),\ + span_danger("There's a strong smell in the air, like chlorine."),\ + span_userdanger("The smell burns the inside of your nose! It's unbearable!")) + +#define GAS_ODOR_SULFUR list(\ + span_notice("Somebody passed gas in here."),\ + span_danger("It smells like rotten eggs."),\ + span_danger("There's a strong smell in the air, like something died here."),\ + span_userdanger("The smell of chemical rot overwhelms you! It's unbearable!")) + +#define GAS_ODOR_SMOG list(\ + null,\ + span_notice("Theres a charred smell in the air."),\ + span_danger("There's a strong smell in the air, like something's burning."),\ + span_userdanger("The acidic smell overwhelms you! It's unbearable!")) + // Flag for update_air_ref() #define AIR_REF_CLOSED_TURF -1 #define AIR_REF_SPACE_TURF 0 diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index 5c6f14c887eb..9e29c3bf2379 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -173,3 +173,14 @@ /// Color used for default blood #define COLOR_BLOOD "#CC0000" + + +/*Planetary color defines*/ + +#define COLOR_BEACHPLANET_LIGHT "#faeacb" +#define COLOR_ICEPLANET_LIGHT "#e1d1e6" +#define COLOR_LAVAPLANET_LIGHT "#f5b85d" +#define COLOR_JUNGLEPLANET_LIGHT "#b39981" +#define COLOR_ROCKPLANET_LIGHT "#db9e9f" +#define COLOR_SANDPLANET_LIGHT "#EEEEEE" //EEEEEEEEEE +#define COLOR_WASTEPLANET_LIGHT "#FA644B" diff --git a/code/__DEFINES/dcs/signals/signals.dm b/code/__DEFINES/dcs/signals/signals.dm index 2293c5bf8fd5..ad4c2d32e071 100644 --- a/code/__DEFINES/dcs/signals/signals.dm +++ b/code/__DEFINES/dcs/signals/signals.dm @@ -668,12 +668,6 @@ #define COMSIG_TRY_STORAGE_RETURN_INVENTORY "storage_return_inventory" //(list/list_to_inject_results_into, recursively_search_inside_storages = TRUE) #define COMSIG_TRY_STORAGE_CAN_INSERT "storage_can_equip" //(obj/item/insertion_candidate, mob/user, silent) - returns bool -// /datum/component/two_handed signals -#define COMSIG_TWOHANDED_WIELD "twohanded_wield" //from base of datum/component/two_handed/proc/wield(mob/living/carbon/user): (/mob/user) - #define COMPONENT_TWOHANDED_BLOCK_WIELD 1 -#define COMSIG_TWOHANDED_UNWIELD "twohanded_unwield" //from base of datum/component/two_handed/proc/unwield(mob/living/carbon/user): (/mob/user) - - // /datum/action signals #define COMSIG_ACTION_TRIGGER "action_trigger" //from base of datum/action/proc/Trigger(): (datum/action) #define COMPONENT_ACTION_BLOCK_TRIGGER 1 diff --git a/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_item.dm b/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_item.dm index 1a562b84a4a1..745990bacd9d 100644 --- a/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_item.dm +++ b/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_item.dm @@ -37,6 +37,8 @@ #define COMPONENT_BLOCK_SHARPEN_ALREADY 4 #define COMPONENT_BLOCK_SHARPEN_MAXED 8 +#define COMSIG_ITEM_USE_CELL "item_use_cell" + #define COMSIG_TOOL_IN_USE "tool_in_use" ///from base of [/obj/item/proc/tool_check_callback]: (mob/living/user) #define COMSIG_TOOL_START_USE "tool_start_use" ///from base of [/obj/item/proc/tool_start_check]: (mob/living/user) #define COMSIG_ITEM_DISABLE_EMBED "item_disable_embed" ///from [/obj/item/proc/disableEmbedding]: @@ -66,3 +68,8 @@ #define COMSIG_ITEM_SPLIT_VALUE 1 #define COMSIG_ITEM_SPLIT_PROFIT "item_split_profits" //Called when getting the item's exact ratio for cargo's profit. #define COMSIG_ITEM_SPLIT_PROFIT_DRY "item_split_profits_dry" //Called when getting the item's exact ratio for cargo's profit, without selling the item. + +// /datum/component/two_handed signals +#define COMSIG_TWOHANDED_WIELD "twohanded_wield" //from base of datum/component/two_handed/proc/wield(mob/living/carbon/user): (/mob/user) + #define COMPONENT_TWOHANDED_BLOCK_WIELD 1 +#define COMSIG_TWOHANDED_UNWIELD "twohanded_unwield" //from base of datum/component/two_handed/proc/unwield(mob/living/carbon/user): (/mob/user) diff --git a/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_transform.dm b/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_transform.dm new file mode 100644 index 000000000000..f7c0b4d5f232 --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_transform.dm @@ -0,0 +1,12 @@ +// /datum/component/transforming signals + +/// From /datum/component/transforming/proc/on_attack_self(obj/item/source, mob/user): (obj/item/source, mob/user, active) +#define COMSIG_TRANSFORMING_PRE_TRANSFORM "transforming_pre_transform" + /// Return COMPONENT_BLOCK_TRANSFORM to prevent the item from transforming. + #define COMPONENT_BLOCK_TRANSFORM (1<<0) +/// From /datum/component/transforming/proc/do_transform(obj/item/source, mob/user): (obj/item/source, mob/user, active) +#define COMSIG_TRANSFORMING_ON_TRANSFORM "transforming_on_transform" + /// Return COMPONENT_NO_DEFAULT_MESSAGE to prevent the transforming component from displaying the default transform message / sound. + #define COMPONENT_NO_DEFAULT_MESSAGE (1<<0) + +#define COMSIG_ITEM_FORCE_TRANSFORM "item_force_transform" diff --git a/code/__DEFINES/dcs/signals/signals_obj/signals_object.dm b/code/__DEFINES/dcs/signals/signals_obj/signals_object.dm index 136b73ffb3d2..65308310bc31 100644 --- a/code/__DEFINES/dcs/signals/signals_obj/signals_object.dm +++ b/code/__DEFINES/dcs/signals/signals_obj/signals_object.dm @@ -12,3 +12,8 @@ #define COMSIG_OBJ_HIDE "obj_hide" /// from base of [/atom/proc/obj_destruction]: (damage_flag) #define COMSIG_OBJ_DESTRUCTION "obj_destruction" + +/// Sent from /obj/item/update_weight_class(). (old_w_class, new_w_class) +#define COMSIG_ITEM_WEIGHT_CLASS_CHANGED "item_weight_class_changed" +/// Sent from /obj/item/update_weight_class(), to its loc. (obj/item/changed_item, old_w_class, new_w_class) +#define COMSIG_ATOM_CONTENTS_WEIGHT_CLASS_CHANGED "atom_contents_weight_class_changed" diff --git a/code/__DEFINES/economy.dm b/code/__DEFINES/economy.dm index c31bffa08bf3..700d8f1db693 100644 --- a/code/__DEFINES/economy.dm +++ b/code/__DEFINES/economy.dm @@ -1,16 +1,12 @@ -#define ACCOUNT_CIV "CIV" -#define ACCOUNT_CIV_NAME "Civil Budget" -#define ACCOUNT_ENG "ENG" -#define ACCOUNT_ENG_NAME "Engineering Budget" -#define ACCOUNT_SCI "SCI" -#define ACCOUNT_SCI_NAME "Scientific Budget" -#define ACCOUNT_MED "MED" -#define ACCOUNT_MED_NAME "Medical Budget" -#define ACCOUNT_SRV "SRV" -#define ACCOUNT_SRV_NAME "Service Budget" -#define ACCOUNT_CAR "CAR" -#define ACCOUNT_CAR_NAME "Cargo Budget" -#define ACCOUNT_SEC "SEC" -#define ACCOUNT_SEC_NAME "Defense Budget" +#define CREDIT_LOG_WITHDRAW "cash" +#define CREDIT_LOG_TRANSFER_IN "transfer" +#define CREDIT_LOG_TRANSFER_OUT "transfer_out" +#define CREDIT_LOG_DEPOSIT "deposit" +#define CREDIT_LOG_STARTING_MONEY "starting_money" +#define CREDIT_LOG_VENDOR_PURCHASE "vendor_purchase" +#define CREDIT_LOG_MISSION "mission" +#define CREDIT_LOG_CARGO "cargo_purchase" +#define CREDIT_LOG_BOUNTY "bounty" +#define CREDIT_LOG_SYNDICATE_CONTRACT "syndicate_contract" +#define CREDIT_LOG_SELLING_PAD "selling_pad" -#define NO_FREEBIES "commies go home" diff --git a/code/__DEFINES/reactions.dm b/code/__DEFINES/reactions.dm index 4683ed393453..92e1c49bc0ae 100644 --- a/code/__DEFINES/reactions.dm +++ b/code/__DEFINES/reactions.dm @@ -1,12 +1,12 @@ //Defines used in atmos gas reactions. Used to be located in ..\modules\atmospherics\gasmixtures\reactions.dm, but were moved here because fusion added so fucking many. //Plasma fire properties -#define OXYGEN_BURN_RATE_BASE 1.4 +#define PLASMA_BURN_RATE_BASE 1.4 #define PLASMA_BURN_RATE_DELTA 9 #define PLASMA_MINIMUM_OXYGEN_NEEDED 2 #define PLASMA_MINIMUM_OXYGEN_PLASMA_RATIO 30 #define FIRE_CARBON_ENERGY_RELEASED 100000 //Amount of heat released per mole of burnt carbon into the tile -#define FIRE_HYDROGEN_ENERGY_RELEASED 280000 //Amount of heat released per mole of burnt hydrogen and/or tritium(hydrogen isotope) +#define FIRE_HYDROGEN_ENERGY_RELEASED 286000 //Amount of heat released per mole of burnt hydrogen and/or tritium(hydrogen isotope) #define FIRE_PLASMA_ENERGY_RELEASED 3000000 //Amount of heat released per mole of burnt plasma into the tile //General assmos defines. #define WATER_VAPOR_FREEZE 200 @@ -29,7 +29,7 @@ #define STIMULUM_FIRST_DROP 0.065 #define STIMULUM_SECOND_RISE 0.0009 #define STIMULUM_ABSOLUTE_DROP 0.00000335 -#define REACTION_OPPRESSION_THRESHOLD 10 +#define REACTION_OPPRESSION_THRESHOLD 75 #define NOBLIUM_FORMATION_ENERGY 2e9 //1 Mole of Noblium takes the planck energy to condense. #define STIM_BALL_GAS_AMOUNT 5 //Research point amounts diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 6de819c57aa5..a1133d2f0ea2 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -302,6 +302,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_NO_STORAGE_INSERT "no_storage_insert" //cannot be inserted in a storage. #define TRAIT_T_RAY_VISIBLE "t-ray-visible" // Visible on t-ray scanners if the atom/var/level == 1 #define TRAIT_NO_TELEPORT "no-teleport" //you just can't +/// A transforming item that is actively extended / transformed +#define TRAIT_TRANSFORM_ACTIVE "active_transform" #define TRAIT_WIELDED "wielded" //The item is currently being wielded //quirk traits diff --git a/code/controllers/subsystem/overmap.dm b/code/controllers/subsystem/overmap.dm index dd5515397277..b184d67c77a5 100644 --- a/code/controllers/subsystem/overmap.dm +++ b/code/controllers/subsystem/overmap.dm @@ -270,6 +270,7 @@ SUBSYSTEM_DEF(overmap) var/datum/map_generator/mapgen = new dynamic_datum.mapgen var/datum/map_template/ruin/used_ruin = ispath(ruin_type) ? (new ruin_type) : ruin_type + SSblackbox.record_feedback("tally", "encounter_spawned", 1, "[dynamic_datum.mapgen]") // name is random but PROBABLY unique var/encounter_name = dynamic_datum.planet_name || "\improper Uncharted Space [dynamic_datum.x]/[dynamic_datum.y]-[rand(1111, 9999)]" diff --git a/code/controllers/subsystem/shuttle.dm b/code/controllers/subsystem/shuttle.dm index 552ce70453dd..4dcfa7598a9e 100644 --- a/code/controllers/subsystem/shuttle.dm +++ b/code/controllers/subsystem/shuttle.dm @@ -490,7 +490,7 @@ SUBSYSTEM_DEF(shuttle) user.forceMove(new_ship.get_jump_to_turf()) message_admins("[key_name_admin(user)] loaded [new_ship] ([S]) with the shuttle manipulator.") log_admin("[key_name(user)] loaded [new_ship] ([S]) with the shuttle manipulator.") - SSblackbox.record_feedback("text", "shuttle_manipulator", 1, "[S]") + SSblackbox.record_feedback("tally", "shuttle_manipulator_spawned", 1, "[S]") if("edit_template") if(S) diff --git a/code/datums/brain_damage/mild.dm b/code/datums/brain_damage/mild.dm index 339767dceb2c..9623191d3fd8 100644 --- a/code/datums/brain_damage/mild.dm +++ b/code/datums/brain_damage/mild.dm @@ -264,3 +264,103 @@ speak_dejavu += speech_args[SPEECH_MESSAGE] else speak_dejavu += speech_args[SPEECH_MESSAGE] + +/datum/brain_trauma/mild/monoxide_poisoning_stage1 + name = "Stage 1 Carbon Monoxide Poisoning" + desc = "Due to overexposure to carbon monoxide, patient's mental facilities are degrading.." + scan_desc = "carbon monoxide poisoning" + gain_text = "You get a headache." + lose_text = "Your headache disapears and you find it easier to focus." + + var/static/list/common_words = world.file2list("strings/1000_most_common.txt") + +/datum/brain_trauma/mild/monoxide_poisoning_stage1/on_life() + var/fall_chance = 1 + if(owner.m_intent == MOVE_INTENT_RUN) + fall_chance += 2 + if(prob(fall_chance) && owner.body_position == STANDING_UP) + to_chat(owner, "Your leg gives out!") + owner.Paralyze(35) + + else if(owner.get_active_held_item()) + var/drop_chance = 1 + var/obj/item/I = owner.get_active_held_item() + drop_chance += I.w_class + if(prob(drop_chance) && owner.dropItemToGround(I)) + to_chat(owner, "You drop [I]!") + + else if(prob(3)) + to_chat(owner, "You feel a sudden weakness in your muscles!") + owner.adjustStaminaLoss(50) + ..() + +/datum/brain_trauma/mild/monoxide_poisoning_stage1/handle_speech(datum/source, list/speech_args) + var/message = speech_args[SPEECH_MESSAGE] + if(message) + var/list/message_split = splittext(message, " ") + var/list/new_message = list() + + for(var/word in message_split) + var/suffix = "" + var/suffix_foundon = 0 + for(var/potential_suffix in list("." , "," , ";" , "!" , ":" , "?")) + suffix_foundon = findtext(word, potential_suffix, -length(potential_suffix)) + if(suffix_foundon) + suffix = potential_suffix + break + + if(suffix_foundon) + word = copytext(word, 1, suffix_foundon) + word = html_decode(word) + + if(lowertext(word) in common_words) + new_message += word + suffix + else + if(prob(30) && message_split.len > 2) + new_message += pick("uh","erm") + break + else + var/list/charlist = text2charlist(word) + charlist.len = round(charlist.len * 0.5, 1) + shuffle_inplace(charlist) + new_message += jointext(charlist, "") + suffix + + message = jointext(new_message, " ") + + speech_args[SPEECH_MESSAGE] = trim(message) + +/datum/brain_trauma/mild/monoxide_poisoning_stage2 + name = "Stage 2 Carbon Monoxide Poisoning" + desc = "Due to extreme exposure to carbon monoxide, patient's higher brain functions are severely impacted." + scan_desc = "critical carbon monoxide poisoning" + gain_text = "You bad get forget you headache don't!" + lose_text = "Your headache gets better." + +/datum/brain_trauma/mild/monoxide_poisoning_stage2/on_gain() + ADD_TRAIT(owner, TRAIT_UNINTELLIGIBLE_SPEECH, TRAUMA_TRAIT) + ..() + +/datum/brain_trauma/mild/monoxide_poisoning_stage2/on_lose() + REMOVE_TRAIT(owner, TRAIT_UNINTELLIGIBLE_SPEECH, TRAUMA_TRAIT) + ..() + +/datum/brain_trauma/mild/monoxide_poisoning_stage2/on_life() + if(prob(5)) + switch(rand(1,11)) + if(1) + owner.vomit() + if(2,3) + owner.dizziness += 10 + if(4,5) + owner.confused += 10 + owner.blur_eyes(10) + if(6 to 9) + owner.slurring += 30 + if(10) + to_chat(owner, "You forget what you were doing.") + owner.Stun(20) + if(11) + to_chat(owner, "You faint.") + owner.Unconscious(80) + + ..() diff --git a/code/datums/components/melee/charged.dm b/code/datums/components/melee/charged.dm new file mode 100644 index 000000000000..2319977a4a0d --- /dev/null +++ b/code/datums/components/melee/charged.dm @@ -0,0 +1,127 @@ +/* + * Charged weapon component. For weapons that swap between states but require a cell for function. + * For example: Stun batons. + * + * Used to easily make an item that can be attack_self'd to gain force or change mode. + * + * Only values passed on initialize will update when the item is activated (except the icon_state). + * The icon_state of the item will swap between "[icon_state]" and "[icon_state]_on". + */ +/datum/component/transforming/charged + var/obj/item/stock_parts/cell/cell + var/allowed_cells + var/preload_cell_type + var/cell_hit_cost + var/can_remove_cell + var/no_cell_icon + +/datum/component/transforming/charged/Initialize( + start_transformed = FALSE, + transform_cooldown_time = 0 SECONDS, + force_on = 0, + throwforce_on = 0, + throw_speed_on = 2, + sharpness_on = NONE, + hitsound_on = 'sound/weapons/blade1.ogg', + w_class_on = WEIGHT_CLASS_BULKY, + list/attack_verb_on, + inhand_icon_change = TRUE, + _allowed_cells = list(), + _preload_cell_type = /obj/item/stock_parts/cell, + _cell_hit_cost = 1000, + _can_remove_cell = FALSE, + _no_cell_icon = FALSE +) + . = ..() + + allowed_cells = _allowed_cells + preload_cell_type = _preload_cell_type + cell_hit_cost = _cell_hit_cost + can_remove_cell = _can_remove_cell + no_cell_icon = _no_cell_icon + + if(preload_cell_type in allowed_cells) + cell = new preload_cell_type(parent) + +/datum/component/transforming/charged/RegisterWithParent() + . = ..() + RegisterSignal(parent, COMSIG_ATOM_SCREWDRIVER_ACT, PROC_REF(on_screwdriver_act)) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, PROC_REF(on_attackby)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE, PROC_REF(on_examine)) + RegisterSignal(parent, COMSIG_ITEM_USE_CELL, PROC_REF(deduct_charge)) + +/datum/component/transforming/charged/Destroy(force, silent) + if(cell) + QDEL_NULL(cell) + . = ..() + +/datum/component/transforming/charged/on_attack_self(obj/item/source, mob/user) + if(cell && cell.charge > cell_hit_cost) + return ..() + else + set_inactive(source) + if(!cell) + to_chat(user, span_warning("[source] does not have a power source!")) + else + to_chat(user, span_warning("[source] is out of charge.")) + +/datum/component/transforming/charged/proc/on_screwdriver_act(obj/item/source, mob/user, obj/item/screwdriver) + if(cell && can_remove_cell) + cell.update_appearance() + cell.forceMove(get_turf(parent)) + cell = null + to_chat(user, span_notice("You remove the cell from [parent].")) + set_inactive(source) + source.update_appearance() + return COMPONENT_CANCEL_ATTACK_CHAIN + +/datum/component/transforming/charged/proc/on_attackby(obj/item/source, obj/item/attacking_item, mob/user, params) + SIGNAL_HANDLER + + if(attacking_item.type in allowed_cells) + var/obj/item/stock_parts/cell/attacking_cell = attacking_item + if(cell) + to_chat(user, span_notice("[parent] already has a cell!")) + else + if(attacking_cell.maxcharge < cell_hit_cost) + to_chat(user, span_notice("[parent] requires a higher capacity cell.")) + return + if(!user.transferItemToLoc(attacking_item, parent)) + return + cell = attacking_item + to_chat(user, span_notice("You install a cell in [parent].")) + source.update_appearance() + return COMPONENT_CANCEL_ATTACK_CHAIN + +/datum/component/transforming/charged/proc/on_examine(obj/item/source, mob/user, list/examine_list) + SIGNAL_HANDLER + + if(cell) + examine_list += span_notice("\The [source] is [round(cell.percent())]% charged.") + else + examine_list += span_warning("\The [source] does not have a power source installed.") + +/datum/component/transforming/charged/proc/deduct_charge(obj/item/source) + SIGNAL_HANDLER + if(cell) + . = cell.use(cell_hit_cost) + if(active && cell.charge < cell_hit_cost) + playsound(src, SFX_SPARKS, 75, TRUE, -1) + set_inactive(source) + +/datum/component/transforming/charged/proc/set_active_state(active_state = -1) + switch(active_state) + //We didnt pass a specific state to set it to so just toggle it + if(-1) + toggle_active(parent) + if(FALSE) + set_inactive(parent) + if(TRUE) + set_active(parent) + +/datum/component/transforming/charged/set_inactive(obj/item/source) + . = ..() + if(!cell) + source.icon_state = "[initial(source.icon_state)]_nocell" + source.item_state = "[initial(source.icon_state)]_nocell" + source.update_appearance() diff --git a/code/datums/components/melee/transforming.dm b/code/datums/components/melee/transforming.dm new file mode 100644 index 000000000000..744d75de34b3 --- /dev/null +++ b/code/datums/components/melee/transforming.dm @@ -0,0 +1,236 @@ +/* + * Transforming weapon component. For weapons that swap between states. + * For example: Energy swords, cleaving saws, switch blades. + * + * Used to easily make an item that can be attack_self'd to gain force or change mode. + * + * Only values passed on initialize will update when the item is activated (except the icon_state). + * The icon_state of the item will swap between "[icon_state]" and "[icon_state]_on". + */ +/datum/component/transforming + /// Whether the weapon is transformed + var/active = FALSE + /// Cooldown on transforming this item back and forth + var/transform_cooldown_time + /// Force of the weapon when active + var/force_on + /// Throwforce of the weapon when active + var/throwforce_on + /// Throw speed of the weapon when active + var/throw_speed_on + /// Weight class of the weapon when active + var/w_class_on + /// The sharpness of the weapon when active + var/sharpness_on + /// Hitsound played when active + var/hitsound_on + /// List of the original attack verbs the item has. + var/list/attack_verb_off + /// List of attack verbs used when the weapon is enabled + var/list/attack_verb_on + /// If we get sharpened with a whetstone, save the bonus here for later use if we un/redeploy + var/sharpened_bonus = 0 + /// Dictate whether we change inhands or not + var/inhand_icon_change = TRUE + /// Cooldown in between transforms + COOLDOWN_DECLARE(transform_cooldown) + +/datum/component/transforming/Initialize( + start_transformed = FALSE, + transform_cooldown_time = 0 SECONDS, + force_on = 0, + throwforce_on = 0, + throw_speed_on = 2, + sharpness_on = NONE, + hitsound_on = 'sound/weapons/blade1.ogg', + w_class_on = WEIGHT_CLASS_BULKY, + list/attack_verb_on, + inhand_icon_change = TRUE, +) + + if(!isitem(parent)) + return COMPONENT_INCOMPATIBLE + + var/obj/item/item_parent = parent + + src.transform_cooldown_time = transform_cooldown_time + src.force_on = force_on + src.throwforce_on = throwforce_on + src.throw_speed_on = throw_speed_on + src.sharpness_on = sharpness_on + src.hitsound_on = hitsound_on + src.w_class_on = w_class_on + src.inhand_icon_change = inhand_icon_change + + if(attack_verb_on) + src.attack_verb_on = attack_verb_on + attack_verb_off = item_parent.attack_verb + + if(start_transformed) + toggle_active(parent) + +/datum/component/transforming/RegisterWithParent() + var/obj/item/item_parent = parent + + RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF, PROC_REF(on_attack_self)) + RegisterSignal(parent, COMSIG_ITEM_FORCE_TRANSFORM, PROC_REF(force_transform)) + if(item_parent.sharpness || sharpness_on) + RegisterSignal(parent, COMSIG_ITEM_SHARPEN_ACT, PROC_REF(on_sharpen)) + + +/datum/component/transforming/UnregisterFromParent() + UnregisterSignal(parent, list(COMSIG_ITEM_ATTACK_SELF, COMSIG_ITEM_SHARPEN_ACT)) + +/* + * Called on [COMSIG_ITEM_ATTACK_SELF]. + * + * Check if we can transform our weapon, and if so, call [do_transform]. + * Sends signal [COMSIG_TRANSFORMING_PRE_TRANSFORM], and stops the transform action if it returns [COMPONENT_BLOCK_TRANSFORM]. + * + * source - source of the signal, the item being transformed / parent + * user - the mob transforming the weapon + */ +/datum/component/transforming/proc/on_attack_self(obj/item/source, mob/user) + SIGNAL_HANDLER + + if(!COOLDOWN_FINISHED(src, transform_cooldown)) + to_chat(user, span_warning("Wait a bit before trying to use [source] again!")) + return + + if(SEND_SIGNAL(source, COMSIG_TRANSFORMING_PRE_TRANSFORM, user, active) & COMPONENT_BLOCK_TRANSFORM) + return + + if(do_transform(source, user)) + return COMPONENT_CANCEL_ATTACK_CHAIN + +/* + * Transform the weapon into its alternate form, calling [toggle_active]. + * + * Sends signal [COMSIG_TRANSFORMING_ON_TRANSFORM], and calls [default_transform_message] if it does not return [COMPONENT_NO_DEFAULT_MESSAGE]. + * Also starts the [transform_cooldown] if we have a set [transform_cooldown_time]. + * + * source - the item being transformed / parent + * user - the mob transforming the item + * + * returns TRUE. + */ +/datum/component/transforming/proc/do_transform(obj/item/source, mob/user) + toggle_active(source) + if(!(SEND_SIGNAL(source, COMSIG_TRANSFORMING_ON_TRANSFORM, user, active) & COMPONENT_NO_DEFAULT_MESSAGE)) + default_transform_message(source, user) + + if(isnum(transform_cooldown_time)) + COOLDOWN_START(src, transform_cooldown, transform_cooldown_time) + if(user) + source.add_fingerprint(user) + return TRUE + +/* + * The default feedback message and sound effect for an item transforming. + * + * source - the item being transformed / parent + * user - the mob transforming the item + */ +/datum/component/transforming/proc/default_transform_message(obj/item/source, mob/user) + if(user) + source.balloon_alert(user, "[active ? "enabled" : "disabled"] [source]") + playsound(source, 'sound/weapons/batonextend.ogg', 50, TRUE) + +/* + * Toggle active between true and false, and call + * either set_active or set_inactive depending on whichever state is toggled. + * + * source - the item being transformed / parent + */ +/datum/component/transforming/proc/toggle_active(obj/item/source) + active = !active + if(active) + set_active(source) + else + set_inactive(source) + +/* + * Set our transformed item into its active state. + * Updates all the values that were passed from init and the icon_state. + * + * source - the item being transformed / parent + */ +/datum/component/transforming/proc/set_active(obj/item/source) + ADD_TRAIT(source, TRAIT_TRANSFORM_ACTIVE, REF(src)) + if(sharpness_on) + source.sharpness = sharpness_on + if(force_on) + source.force = force_on + (source.sharpness ? sharpened_bonus : 0) + if(throwforce_on) + source.throwforce = throwforce_on + (source.sharpness ? sharpened_bonus : 0) + if(throw_speed_on) + source.throw_speed = throw_speed_on + + if(LAZYLEN(attack_verb_on)) + source.attack_verb = attack_verb_on + + source.hitsound = hitsound_on + source.update_weight_class(w_class_on) + source.icon_state = "[source.icon_state]_on" + if(inhand_icon_change && source.item_state) + source.item_state = "[source.item_state]_on" + + source.update_appearance() + if(ismob(source.loc)) + var/mob/loc_mob = source.loc + loc_mob.update_inv_hands() + +/* + * Set our transformed item into its inactive state. + * Updates all the values back to the item's initial values. + * + * source - the item being un-transformed / parent + */ +/datum/component/transforming/proc/set_inactive(obj/item/source) + REMOVE_TRAIT(source, TRAIT_TRANSFORM_ACTIVE, REF(src)) + if(sharpness_on) + source.sharpness = initial(source.sharpness) + if(force_on) + source.force = initial(source.force) + (source.sharpness ? sharpened_bonus : 0) + if(throwforce_on) + source.throwforce = initial(source.throwforce) + (source.sharpness ? sharpened_bonus : 0) + if(throw_speed_on) + source.throw_speed = initial(source.throw_speed) + + if(LAZYLEN(attack_verb_off)) + source.attack_verb = attack_verb_off + + source.hitsound = initial(source.hitsound) + source.update_weight_class(initial(source.w_class)) + source.icon_state = initial(source.icon_state) + source.item_state = initial(source.item_state) + + source.update_appearance() + if(ismob(source.loc)) + var/mob/loc_mob = source.loc + loc_mob.update_inv_hands() + +/* + * Called on [COMSIG_ITEM_SHARPEN_ACT]. + * We need to track our sharpened bonus here, so we correctly apply and unapply it + * if our item's sharpness state changes from transforming. + * + * source - the item being sharpened / parent + * increment - the amount of force added + * max - the maximum force that the item can be adjusted to. + * + * Does not return naturally [COMPONENT_BLOCK_SHARPEN_APPLIED] as this is only to track our sharpened bonus between transformation. + */ +/datum/component/transforming/proc/on_sharpen(obj/item/source, increment, max) + SIGNAL_HANDLER + + if(sharpened_bonus) + return COMPONENT_BLOCK_SHARPEN_ALREADY + if(force_on + increment > max) + return COMPONENT_BLOCK_SHARPEN_MAXED + sharpened_bonus = increment + +/datum/component/transforming/proc/force_transform(obj/item/source) + if(isnum(transform_cooldown_time)) + COOLDOWN_START(src, transform_cooldown, transform_cooldown_time) + set_inactive(source) diff --git a/code/datums/components/twohanded.dm b/code/datums/components/melee/twohanded.dm similarity index 100% rename from code/datums/components/twohanded.dm rename to code/datums/components/melee/twohanded.dm diff --git a/code/datums/holocall.dm b/code/datums/holocall.dm index c5f907f9c31d..68a974a0cb17 100644 --- a/code/datums/holocall.dm +++ b/code/datums/holocall.dm @@ -227,7 +227,7 @@ /obj/item/disk/holodisk name = "holorecord disk" - desc = "Stores recorder holocalls." + desc = "Stores recorded holocalls." random_color = FALSE color = "#A7A3A6" blueshift_pallete = FALSE diff --git a/code/datums/mapgen/single_biome/WasteplanetCaves.dm b/code/datums/mapgen/single_biome/WasteplanetCaves.dm deleted file mode 100644 index 3caf1c9429ad..000000000000 --- a/code/datums/mapgen/single_biome/WasteplanetCaves.dm +++ /dev/null @@ -1,67 +0,0 @@ -/datum/map_generator/single_biome/wasteplanet - initial_closed_chance = 45 - smoothing_iterations = 50 - birth_limit = 4 - death_limit = 3 - - biome_type = /datum/biome/cave/wasteplanet - area_type = /area/overmap_encounter/planetoid/wasteplanet - -/datum/biome/cave/wasteplanet - open_turf_types = list(/turf/open/floor/plating/asteroid/wasteplanet = 50, - /turf/open/floor/plating/rust/wasteplanet = 10, - /turf/open/floor/plating/wasteplanet = 5) - closed_turf_types = list(/turf/closed/mineral/random/wasteplanet = 45, - /turf/closed/wall/rust = 10,) - - flora_spawn_list = list( - /obj/structure/mecha_wreckage/ripley = 15, - /obj/structure/mecha_wreckage/ripley/firefighter = 9, - /obj/structure/mecha_wreckage/ripley/mkii = 9, - /obj/structure/girder = 60, - /obj/structure/reagent_dispensers/fueltank = 30, - /obj/item/stack/cable_coil/cut = 30, - /obj/effect/decal/cleanable/greenglow = 60, - /obj/effect/decal/cleanable/glass = 30, - /obj/structure/closet/crate/secure/loot = 3, - /obj/machinery/portable_atmospherics/canister/toxins = 3, - /obj/machinery/portable_atmospherics/canister/carbon_dioxide = 3, - /obj/structure/radioactive = 6, - /obj/structure/radioactive/stack = 6, - /obj/structure/radioactive/waste = 6, - /obj/structure/flora/ash/garden/waste = 15, - /obj/structure/flora/ash/glowshroom = 90, - - /obj/structure/salvageable/machine = 20, - /obj/structure/salvageable/autolathe = 15, - /obj/structure/salvageable/computer = 10, - /obj/structure/salvageable/protolathe = 10, - /obj/structure/salvageable/circuit_imprinter = 8, - /obj/structure/salvageable/destructive_analyzer = 8, - /obj/structure/salvageable/server = 8, - /obj/item/mine/pressure/explosive/rusty/live = 30, - /obj/effect/spawner/random/mine = 8 - ) - feature_spawn_list = list( - /obj/structure/geyser/random = 1, - /obj/effect/spawner/minefield = 1 - ) - mob_spawn_list = list( - //hivebots, not too difficult - /mob/living/simple_animal/hostile/hivebot/strong/rockplanet = 70, - /mob/living/simple_animal/hostile/hivebot/range/rockplanet = 40, - /mob/living/simple_animal/hostile/hivebot/rapid/rockplanet = 30, - //crystal mobs, very difficult - /mob/living/simple_animal/hostile/asteroid/goliath/beast/ancient/crystal = 1, - /mob/living/simple_animal/hostile/asteroid/basilisk/watcher/forgotten = 1, - /mob/living/simple_animal/hostile/asteroid/hivelord/legion/crystal = 1, - //bots, are hostile - /mob/living/simple_animal/bot/firebot/rockplanet = 15, - /mob/living/simple_animal/bot/secbot/ed209/rockplanet = 3, - /mob/living/simple_animal/hostile/abandoned_minebot = 15, - /mob/living/simple_animal/bot/floorbot/rockplanet = 15, - ) - - flora_spawn_chance = 10 - feature_spawn_chance = 0.1 - mob_spawn_chance = 2 diff --git a/code/game/MapData/shuttles/pgf_bolide.dm b/code/game/MapData/shuttles/pgf_bolide.dm new file mode 100644 index 000000000000..13a9767de684 --- /dev/null +++ b/code/game/MapData/shuttles/pgf_bolide.dm @@ -0,0 +1,245 @@ +/obj/machinery/air_sensor/ship/bolide/air + id_tag = "bolide_air" + +/obj/machinery/air_sensor/ship/bolide/fuel + id_tag = "bolide_fuel_1" + +/obj/machinery/air_sensor/ship/bolide/fuel_2 + id_tag = "bolide_fuel_2" + +/obj/machinery/computer/atmos_control/ship/bolide + sensors = list( + "bolide_air" = "Airmix Chamber", + "bolide_fuel_1" = "Port Fuel Chamber", + "bolide_fuel_2" = "Starboard Fuel Chamber", + ) + +//this should go somewhere else +/obj/structure/closet/crate/rations + name = "ration crate" + desc = "A rectangular steel crate, filled with marine food." + var/ration_count = 10 + +/obj/structure/closet/crate/rations/PopulateContents() + . = ..() + for(var/i in 1 to ration_count) + new /obj/effect/spawner/random/food_or_drink/ration(src) + +/obj/item/storage/toolbox/explosives + name = "\improper explosives handling kit" + desc = "Be careful to not jostle it." + icon_state = "explosive" + item_state = "toolbox_red" + latches = "double_latch" + +/obj/item/storage/toolbox/explosives/PopulateContents() + new /obj/item/screwdriver(src) + new /obj/item/wirecutters(src) + new /obj/item/multitool(src) + for(var/i in 1 to 4) + new /obj/item/assembly/signaler(src) + +/obj/structure/toilet/secret/bolide + secret_type = /obj/item/storage/fancy/cigarettes/cigpack_mindbreaker + +/obj/item/folder/pgf/blue/bolide + +/obj/item/folder/pgf/blue/bolide/Initialize() + . = ..() + new /obj/item/paper/fluff/ship/bolide/one(src) + new /obj/item/paper/fluff/ship/bolide/two(src) + new /obj/item/paper/fluff/ship/bolide/three(src) + new /obj/item/paper/fluff/ship/bolide/four(src) + update_appearance() + +/obj/item/folder/pgf/empty_sheets + name = "PGF Fax Templates" + +/obj/item/folder/pgf/empty_sheets/Initialize() + . = ..() + for(var/i in 1 to 7) + new /obj/item/paper/fluff/ship/bolide(src) + +/mob/living/simple_animal/pet/fox/bolide + name = "Saperzy" + desc = "A lovable rogue that scampered aboard during a readiness drill. Now an honorary marine." + gender = MALE + unique_pet = TRUE + icon_state = "saperzy" + icon_living = "saperzy" + icon_dead = "fox_dead" + faction = list("neutral", FACTION_PLAYER_GEZENA) + speak = list("Ack-Ack","Ack-Ack-Ack-Ackawoooo","Geckers","Awoo","Tchoff","Aweh!") + speak_emote = list("geckers!", "barks!", "yips!") + emote_hear = list("yips!","barks!","geckers!") + emote_see = list("sits at attention.", "shakes his fur out.", "wags a few times.", "perks up.","sniffs the air.") + +/obj/item/paper/fluff/ship/bolide + name = "Blank Federated Navy Paperwork" + default_raw_text = {" + + + + +
+ + + + + + + +
logo here (one day) + Pan Gezenan Federation Navy
Bolide-Class Lander
+
XX - XX - 506
+
+
+
FOR IMMEDIATE DISTRIBUTION
+ SUBJECT: + "} + +/obj/item/paper/fluff/ship/bolide/one + name = "Official Briefing" + default_raw_text = {" + + + + +
+ + + + + + + +
logo here (one day) + Pan Gezenan Federation Navy
Office of Naval Deployment
+
XX - XX - 506
+
+
+
FOR IMMEDIATE DISTRIBUTION
+ SUBJECT: Briefing Crew of Vessel +
+
+

1. The Office of Naval Deployment has seen fit to deploy you in command of an Elated Bolide class Frigate Assault Lander (Bolide-Class). Congratulations on your assignment. You are expected to coordinate with the Marine Lieutenant assigned to the vessel for the duration of this deployment.

+

2. A Bolide-class Lander's mission profile is traditionally; landing in occupied regions, planetary assault in contested systems, construction of Navy Infrastructure, assistance of CLIP colonists, and aiding in conducting Federation Readiness Drills.

+

3. The assignment issued to your vessel is as follows: Identify locations of interest, construct infrastructure, avoid non-decisive confrontations, conduct readiness drills if possible. Deviation from these goals is accepted and expected. Failure to meet any of them will result in an investigatory effort on your command.

+

4. The Office Of Naval Deployment directs that it is supplied with the following: Reports on construction projects, reports on conflict in area, reports on crew readiness. Failure to supply pertinent reports in a timely fashion will lead to termination of your command.

+

5. The Office Of Naval Deployment directs that you coordinate with the Marine Lieutenant to ensure a chain of command is followed aboard at all times. The Office recommends assigning 'buddies' to risk-prone marines, assigning 'Team Leaders' to watch over any group of more than 3, and ensuring radio contact at all times.

+

6. The Office recommends that all other documents in this folder are read, and distributed to the crew as necessary.

+
+
+
+

+

+ Eutei-Tar
+ Eutei-Tar
+ Vice Admiral, PGF Navy
+ Assistant Director Of the Office Of Navy Deployment
+

+ "} + +/obj/item/paper/fluff/ship/bolide/two + name = "Explosive Materials Handling" + default_raw_text = {" + + + + +
+ + + + + + + +
logo here (one day) + Pan Gezenan Federation Navy
Office Of Requisitions
+
XX - XX - 506
+
+
+
FOR IMMEDIATE DISTRIBUTION
+ SUBJECT: Safe storage of explosive materials +
+
+

1. The Office of Requisition has seen fit to deploy your command with a complement of explosive compounds. These compounds include - Composition C-4, Composition X-4.

+

2. Composition C-4 is an dense explosive package composed of; RDX, Plastic binders, plasticizer. Composition C-4 is a stable, malleable explosive meant for demolition usage. It is resistant to detonation from gunshots and jostling. The C-4 charges you have been issued include a detonator in their assembly, and should not be tinkered with by untrained hands.

+

3. Ensure that any usage of Composition C-4 is monitored and controlled. Do not issue Composition c-4 to your vessel without a cause for such.

+

4. Composition X-4 is a high powered explosive package composed of an RDX filling mixed with a teslium based detonator, allowing for a far more focused explosion. Unless the casing has degraded, it is safe to handle in the same manner as Composition C-4.

+

5. Take care in assigning usage of Composition X-4 due to it's increased potency. While focused, an injury resulting from being caught in a blast would likely prove fatal.

+

6. The Office recommends assigning a trained expert to monitor field usage of explosives.

+
+
+
+ "} + +/obj/item/paper/fluff/ship/bolide/three + name = "Marine Relationships" + default_raw_text = {" + + + + +
+ + + + + + + +
logo here (one day) + Pan Gezenan Federation Navy
Office Of Personnel
+
XX - XX - 506
+
+
+
FOR IMMEDIATE DISTRIBUTION
+ SUBJECT: Prevention of Inappropriate Relationships. +
+
+

The Office of Personnel recommends that the captain of any PGFN vessel keep an active eye out for inappropriate relationships in the ranks.

+

Inappropriate relationships are a relationship that fulfills one of the following criteria; Compromises the integrity of supervisory authority, causes unfairness, involves improper use of rank or position for personal gain, gives the perception that it is exploitive or coercive in nature, can create an adverse effect on good order and discipline or mission accomplishment.

+

As an officer, behaviors to avoid including enlisted in are; business matters, gambling, dating, sharing living accomodations.

+

Actual or percieved, these activities are prohibited. If it looks wrong, it's probably wrong.

+
+
+
+ "} + +/obj/item/paper/fluff/ship/bolide/four + name = "Chain Of Command" + default_raw_text = {" + + + + +
+ + + + + + + +
logo here (one day) + Pan Gezenan Federation Navy
Office Of Personnel
+
XX - XX - 506
+
+
+
FOR IMMEDIATE DISTRIBUTION
+ SUBJECT: Chain of Command aboard vessel. +
+
+

The Office of Personnel recommends that the Captain of a PGFN vessel in deployment establish a chain of command that encompasses all crew aboard the vessel.

+

The ranks of all serving members aboard a vessel creates a natural chain of command for the Captain and any other officers to base any further Chain Of Command alterations upon. It should be stressed that a Captain should avoid issuing field promotions to fulfill an artifical chain of command.

+

A Captain should discuss any change in chain of command with any other officers aboard before putting it into action. This allows multiple opinions to be fed into the process, thus creating a stronger product.

+

Aboard a Bolide-Class Lander, the Office of Personnel recommends that the captain designate one 'team leader' per three marines aboard. These team leaders should report directly to the Marine Lieutenant, They should be reported to by the two marines in their team. It is not suggested to work the naval engineers into this program, as they are not expected to deploy in combat.

+

Marines should be made aware that being declared team leader carries no authority unless delegated. In the event of a conflicted chain of command, or contested order, the figure with rank should be obeyed.

+

This Office recommends monitoring marines for behavioral patterns before assigning a team leader. The ideal marine team leader is cool-headed, rational, and able to make tough choices.

+
+
+
+ "} + diff --git a/code/game/MapData/shuttles/srm_elder.dm b/code/game/MapData/shuttles/srm_elder.dm index 97805731ec2f..453767e4394a 100644 --- a/code/game/MapData/shuttles/srm_elder.dm +++ b/code/game/MapData/shuttles/srm_elder.dm @@ -1,15 +1,12 @@ -/obj/item/melee/transforming/cleaving_saw/old +/obj/item/melee/cleaving_saw/old name = "old cleaving saw" desc = "This saw, old and rusted, is still an effective tool at bleeding beasts and monsters." force = 10 - force_on = 15 //force when active + active_force = 15 //force when active throwforce = 15 - throwforce_on = 15 - faction_bonus_force = 5 - nemesis_factions = list("mining", "boss") + active_throwforce = 15 bleed_stacks_per_hit = 1.5 - /obj/structure/closet/secure_closet/medicalsrm name = "hunter doctor closet" desc = "Everything the Hunter Doctor needs to heal the hurting masses." diff --git a/code/game/area/areas/away_content.dm b/code/game/area/areas/away_content.dm index 53ccc590c72a..5f0db1fc93bc 100644 --- a/code/game/area/areas/away_content.dm +++ b/code/game/area/areas/away_content.dm @@ -1,33 +1,5 @@ -/* -Unused icons for new areas are "awaycontent1" ~ "awaycontent30" -*/ - - -// Away Missions -/area/awaymission - name = "Strange Location" - icon_state = "away" - has_gravity = STANDARD_GRAVITY - ambientsounds = AWAY_MISSION - sound_environment = SOUND_ENVIRONMENT_ROOM - -/area/awaymission/beach - name = "Beach" - icon_state = "away" - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - requires_power = FALSE - has_gravity = STANDARD_GRAVITY - ambientsounds = list('sound/ambience/shore.ogg', 'sound/ambience/seag1.ogg','sound/ambience/seag2.ogg','sound/ambience/seag2.ogg','sound/ambience/ambiodd.ogg','sound/ambience/ambinice.ogg') - -/area/awaymission/errorroom +/area/errorroom name = "Super Secret Room" dynamic_lighting = DYNAMIC_LIGHTING_DISABLED has_gravity = STANDARD_GRAVITY -/area/awaymission/vr - name = "Virtual Reality" - icon_state = "awaycontent1" - requires_power = FALSE - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - var/pacifist = TRUE // if when you enter this zone, you become a pacifist or not - var/death = FALSE // if when you enter this zone, you die diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index 7a1f7a36283a..73629ea1484f 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -1221,7 +1221,7 @@ //Returns an atom's power cell, if it has one. Overload for individual items. /atom/movable/proc/get_cell() - return + return null /atom/movable/proc/can_be_pulled(user, grab_state, force) if(src == user || !isturf(loc)) diff --git a/code/game/gamemodes/clown_ops/clown_weapons.dm b/code/game/gamemodes/clown_ops/clown_weapons.dm index a3226e864aa7..6dceae3a38dd 100644 --- a/code/game/gamemodes/clown_ops/clown_weapons.dm +++ b/code/game/gamemodes/clown_ops/clown_weapons.dm @@ -12,60 +12,59 @@ //BANANIUM SWORD -/obj/item/melee/transforming/energy/sword/bananium +/obj/item/melee/energy/sword/bananium name = "bananium sword" desc = "An elegant weapon, for a more civilized age." force = 0 throwforce = 0 - force_on = 0 - throwforce_on = 0 + active_force = 0 + active_throwforce = 0 hitsound = null attack_verb_on = list("slipped") - clumsy_check = FALSE sharpness = IS_BLUNT sword_color = "yellow" heat = 0 light_color = COLOR_YELLOW var/next_trombone_allowed = 0 -/obj/item/melee/transforming/energy/sword/bananium/Initialize() +/obj/item/melee/energy/sword/bananium/Initialize() . = ..() adjust_slipperiness() /* Adds or removes a slippery component, depending on whether the sword * is active or not. */ -/obj/item/melee/transforming/energy/sword/proc/adjust_slipperiness() - if(active) +/obj/item/melee/energy/sword/proc/adjust_slipperiness() + if(HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) AddComponent(/datum/component/slippery, 60, GALOSHES_DONT_HELP) else qdel(GetComponent(/datum/component/slippery)) -/obj/item/melee/transforming/energy/sword/bananium/attack(mob/living/M, mob/living/user) +/obj/item/melee/energy/sword/bananium/attack(mob/living/M, mob/living/user) ..() - if(active) + if(HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) var/datum/component/slippery/slipper = GetComponent(/datum/component/slippery) slipper.Slip(src, M) -/obj/item/melee/transforming/energy/sword/bananium/throw_impact(atom/hit_atom, throwingdatum) +/obj/item/melee/energy/sword/bananium/throw_impact(atom/hit_atom, throwingdatum) . = ..() - if(active) + if(HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) var/datum/component/slippery/slipper = GetComponent(/datum/component/slippery) slipper.Slip(src, hit_atom) -/obj/item/melee/transforming/energy/sword/bananium/attackby(obj/item/I, mob/living/user, params) - if((world.time > next_trombone_allowed) && istype(I, /obj/item/melee/transforming/energy/sword/bananium)) +/obj/item/melee/energy/sword/bananium/attackby(obj/item/I, mob/living/user, params) + if((world.time > next_trombone_allowed) && istype(I, /obj/item/melee/energy/sword/bananium)) next_trombone_allowed = world.time + 50 to_chat(user, "You slap the two swords together. Sadly, they do not seem to fit!") playsound(src, 'sound/misc/sadtrombone.ogg', 50) return TRUE return ..() -/obj/item/melee/transforming/energy/sword/bananium/transform_weapon(mob/living/user, supress_message_text) +/obj/item/melee/energy/sword/bananium/on_transform(obj/item/source, mob/user, active) . = ..() adjust_slipperiness() -/obj/item/melee/transforming/energy/sword/bananium/ignition_effect(atom/A, mob/user) +/obj/item/melee/energy/sword/bananium/ignition_effect(atom/A, mob/user) return "" //BANANIUM SHIELD diff --git a/code/game/machinery/bank_machine.dm b/code/game/machinery/bank_machine.dm index 83f3e366e8a3..cdcccc307a85 100644 --- a/code/game/machinery/bank_machine.dm +++ b/code/game/machinery/bank_machine.dm @@ -33,7 +33,7 @@ if(value) var/datum/bank_account/ship_account = ship_account_ref.resolve() if(ship_account) - ship_account.adjust_money(value, "deposit") + ship_account.adjust_money(value, CREDIT_LOG_DEPOSIT) to_chat(user, "You deposit [I]. The [ship_account.account_holder] Budget is now [ship_account.account_balance] cr.") qdel(I) return @@ -53,7 +53,7 @@ playsound(src, 'sound/items/poster_being_created.ogg', 100, TRUE) syphoning_credits += 200 - ship_account.adjust_money(-200) + ship_account.adjust_money(-200, "siphon") if(next_warning < world.time && prob(15)) var/area/A = get_area(loc) var/message = "Unauthorized credit withdrawal underway in [initial(A.name)]!!" diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 5d89f33549d3..c99729526e87 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -1011,7 +1011,7 @@ DEFINE_BITFIELD(turret_flags, list( /obj/machinery/porta_turret/ship/pgf/heavy name = "Etherbor Point-Defense System" desc = "A high-powered defensive turret manufactured by Etherbor. The EPDS contains heavy energy weapons linked in tandem." - scan_range = 10 + scan_range = 12 stun_projectile = /obj/projectile/beam/hitscan/disabler/heavy stun_projectile_sound = 'sound/weapons/gun/energy/kalixpistol.ogg' lethal_projectile = /obj/projectile/beam/hitscan/kalix/pgf/sniper //fwoom diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index 1e1718623816..a008822e8f08 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -3,7 +3,7 @@ icon = 'icons/obj/stationobjs.dmi' icon_state = "recharger" base_icon_state = "recharger" - desc = "A charging dock for energy based weaponry." + desc = "A charging dock for energy based weaponry. However someones modified it to work with most things with cells." use_power = IDLE_POWER_USE idle_power_usage = IDLE_DRAW_MINIMAL active_power_usage = ACTIVE_DRAW_LOW @@ -74,7 +74,7 @@ G.play_tool_sound(src) return - var/allowed = is_type_in_typecache(G, allowed_devices) + var/allowed = G.get_cell() if(allowed) if(anchored) diff --git a/code/game/machinery/roulette_machine.dm b/code/game/machinery/roulette_machine.dm index a36bf79a41b3..098cd5ea3868 100644 --- a/code/game/machinery/roulette_machine.dm +++ b/code/game/machinery/roulette_machine.dm @@ -235,7 +235,7 @@ var/remaining_payout = payout - my_card.registered_account.adjust_money(-payout) + my_card.registered_account.adjust_money(-payout, CREDIT_LOG_WITHDRAW) for(var/cash_type in cash_values) //Loop through all bundles from most valuable to least valuable. Try to give as much of that bundle as possible until you can't anymore, then move to the next. var/value = cash_values[cash_type] //Change this to use initial value once we change to the right bundle diff --git a/code/game/machinery/shuttle/shuttle_heater.dm b/code/game/machinery/shuttle/shuttle_heater.dm index f8fa1d1ef786..d2e3c0519fb0 100644 --- a/code/game/machinery/shuttle/shuttle_heater.dm +++ b/code/game/machinery/shuttle/shuttle_heater.dm @@ -360,8 +360,6 @@ // adds each oxidizer's power to the total oxidation max if(GAS_O2) oxidation_power += O2_OXIDATION_VALUE * gas_amount - if(GAS_NITRYL) - oxidation_power += NITRYL_OXIDATION_VALUE * gas_amount if(GAS_NITROUS) //burning nitrous cools down the heater's main tank, just like it cools the intake on real cars. oxidation_power += NITROUS_OXIDATION_VALUE * gas_amount var/heat_capacity = gas_amount * NITROUS_COOLING_MULTIPIER diff --git a/code/game/objects/effects/glowshroom.dm b/code/game/objects/effects/glowshroom.dm index f880b95497c4..dc9c7bcd6855 100644 --- a/code/game/objects/effects/glowshroom.dm +++ b/code/game/objects/effects/glowshroom.dm @@ -16,8 +16,8 @@ var/spreadIntoAdjacentChance = 60 var/obj/item/seeds/myseed = /obj/item/seeds/glowshroom var/static/list/blacklisted_glowshroom_turfs = typecacheof(list( - /turf/open/lava, - /turf/open/floor/plating/beach/water)) + /turf/open/lava + )) /obj/structure/glowshroom/glowcap name = "glowcap" diff --git a/code/game/objects/effects/spawners/random.dm/waste_planet.dm b/code/game/objects/effects/spawners/random.dm/waste_planet.dm index 46ad61a754a6..22618dada63d 100644 --- a/code/game/objects/effects/spawners/random.dm/waste_planet.dm +++ b/code/game/objects/effects/spawners/random.dm/waste_planet.dm @@ -62,7 +62,7 @@ /obj/effect/spawner/random/waste/atmos_can/rare loot = list( /obj/machinery/portable_atmospherics/canister/tritium = 3, - /obj/machinery/portable_atmospherics/canister/pluoxium = 3 + /obj/machinery/portable_atmospherics/canister/methane = 3 ) /obj/effect/spawner/random/waste/salvageable diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 3f7a43fe317b..46d2634bbe8d 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -523,8 +523,8 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb playsound(src, 'sound/weapons/effects/deflect.ogg', 100) if(!istype(src, /obj/item/shield)) COOLDOWN_START(src, block_cooldown, block_cooldown_time) - return 1 - return 0 + return TRUE + return FALSE /obj/item/proc/talk_into(mob/M, input, channel, spans, datum/language/language, list/message_mods) return ITALICS | REDUCE_RANGE @@ -1204,6 +1204,18 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb /// Whether or not this item can be put into a storage item through attackby /obj/item/proc/attackby_storage_insert(datum/storage, atom/storage_holder, mob/user) return TRUE + +/obj/item/proc/update_weight_class(new_w_class) + if(w_class == new_w_class) + return FALSE + + var/old_w_class = w_class + w_class = new_w_class + SEND_SIGNAL(src, COMSIG_ITEM_WEIGHT_CLASS_CHANGED, old_w_class, new_w_class) + if(!isnull(loc)) + SEND_SIGNAL(loc, COMSIG_ATOM_CONTENTS_WEIGHT_CLASS_CHANGED, src, old_w_class, new_w_class) + return TRUE + /// How many different types of mats will be counted in a bite? #define MAX_MATS_PER_BITE 2 diff --git a/code/game/objects/items/bank_card.dm b/code/game/objects/items/bank_card.dm index 4a7f2f9d2f21..ecc418030008 100644 --- a/code/game/objects/items/bank_card.dm +++ b/code/game/objects/items/bank_card.dm @@ -47,7 +47,7 @@ to_chat(user, "[src] doesn't have a linked account to deposit [I] into!") return - registered_account.adjust_money(cash_money) + registered_account.adjust_money(cash_money, CREDIT_LOG_DEPOSIT) SSblackbox.record_feedback("amount", "credits_inserted", cash_money) log_econ("[cash_money] credits were inserted into [src] owned by [src.registered_name]") if(physical_currency) @@ -69,7 +69,7 @@ total += cash_money - registered_account.adjust_money(cash_money) + registered_account.adjust_money(cash_money, CREDIT_LOG_DEPOSIT) SSblackbox.record_feedback("amount", "credits_inserted", total) log_econ("[total] credits were inserted into [src] owned by [src.registered_name]") QDEL_LIST(money) @@ -132,7 +132,7 @@ return if(!alt_click_can_use_id(user)) return - if(registered_account.adjust_money(-amount_to_remove)) + if(registered_account.adjust_money(-amount_to_remove, CREDIT_LOG_WITHDRAW)) var/obj/item/holochip/holochip = new (user.drop_location(), amount_to_remove) user.put_in_hands(holochip) to_chat(user, "You withdraw [amount_to_remove] credits into a holochip.") diff --git a/code/game/objects/items/melee/chainsaw.dm b/code/game/objects/items/melee/chainsaw.dm index d179237f8559..f0b7019200f1 100644 --- a/code/game/objects/items/melee/chainsaw.dm +++ b/code/game/objects/items/melee/chainsaw.dm @@ -3,13 +3,13 @@ /obj/item/chainsaw name = "chainsaw" desc = "A versatile power tool. Useful for limbing trees and delimbing humans." - icon_state = "chainsaw_off" + icon_state = "chainsaw" icon = 'icons/obj/weapon/axe.dmi' lefthand_file = 'icons/mob/inhands/weapons/chainsaw_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/chainsaw_righthand.dmi' flags_1 = CONDUCT_1 force = 13 - var/force_on = 24 + var/active_force = 24 w_class = WEIGHT_CLASS_HUGE throwforce = 13 throw_speed = 2 @@ -31,8 +31,8 @@ /obj/item/chainsaw/attack_self(mob/user) on = !on to_chat(user, "As you pull the starting cord dangling from [src], [on ? "it begins to whirr." : "the chain stops moving."]") - force = on ? force_on : initial(force) - throwforce = on ? force_on : initial(force) + force = on ? active_force : initial(force) + throwforce = on ? active_force : initial(force) icon_state = "chainsaw_[on ? "on" : "off"]" var/datum/component/butchering/butchering = src.GetComponent(/datum/component/butchering) butchering.butchering_enabled = on @@ -56,7 +56,7 @@ name = "THE GREAT COMMUNICATOR" desc = "VRRRRRRR!!!" armour_penetration = 100 - force_on = 30 + active_force = 30 /obj/item/chainsaw/doomslayer/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) if(attack_type == PROJECTILE_ATTACK) diff --git a/code/game/objects/items/melee/dualsaber.dm b/code/game/objects/items/melee/dualsaber.dm index 28242c1006a1..1959fa81eaea 100644 --- a/code/game/objects/items/melee/dualsaber.dm +++ b/code/game/objects/items/melee/dualsaber.dm @@ -23,7 +23,7 @@ max_integrity = 200 armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 70) resistance_flags = FIRE_PROOF - var/w_class_on = WEIGHT_CLASS_BULKY + var/active_w_class = WEIGHT_CLASS_BULKY var/saber_color = "green" var/two_hand_force = 34 var/hacked = FALSE @@ -43,7 +43,7 @@ to_chat(user, "You lack the grace to wield this!") return COMPONENT_TWOHANDED_BLOCK_WIELD sharpness = IS_SHARP - w_class = w_class_on + w_class = active_w_class hitsound = 'sound/weapons/blade1.ogg' START_PROCESSING(SSobj, src) set_light_on(TRUE) @@ -128,7 +128,7 @@ return 1 /obj/item/dualsaber/ignition_effect(atom/A, mob/user) - // same as /obj/item/melee/transforming/energy, mostly + // same as /obj/item/melee/energy, mostly if(!HAS_TRAIT(src, TRAIT_WIELDED)) return "" var/in_mouth = "" diff --git a/code/game/objects/items/melee/energy.dm b/code/game/objects/items/melee/energy.dm index 34219662e53d..1985c3d7ebfa 100644 --- a/code/game/objects/items/melee/energy.dm +++ b/code/game/objects/items/melee/energy.dm @@ -1,7 +1,9 @@ -/obj/item/melee/transforming/energy +/obj/item/melee/energy + sharpness = IS_SHARP + w_class = WEIGHT_CLASS_SMALL + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") icon = 'icons/obj/weapon/energy.dmi' - hitsound_on = 'sound/weapons/blade1.ogg' - heat = 3500 + heat = 0 max_integrity = 200 armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30) resistance_flags = FIRE_PROOF @@ -10,42 +12,81 @@ light_power = 1 light_on = FALSE var/sword_color - -/obj/item/melee/transforming/energy/Initialize() + /// The heat given off when active. + var/active_heat = 3500 + + /// Force while active. + var/active_force = 30 + /// Throwforce while active. + var/active_throwforce = 20 + /// Sharpness while active. + var/active_sharpness = IS_SHARP + /// Hitsound played attacking while active. + var/active_hitsound = 'sound/weapons/blade1.ogg' + /// Weight class while active. + var/active_w_class = WEIGHT_CLASS_BULKY + + var/list/attack_verb_on = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + +/obj/item/melee/energy/Initialize(mapload) . = ..() - if(active) + AddComponent( \ + /datum/component/transforming, \ + force_on = active_force, \ + throwforce_on = active_throwforce, \ + throw_speed_on = 4, \ + sharpness_on = active_sharpness, \ + hitsound_on = active_hitsound, \ + w_class_on = active_w_class, \ + attack_verb_on = attack_verb_on, \ + ) + RegisterSignal(src, COMSIG_TRANSFORMING_ON_TRANSFORM, PROC_REF(on_transform)) + AddElement(/datum/element/update_icon_updates_onmob) + if(sharpness) + AddComponent(/datum/component/butchering, 50, 100, 0, hitsound) + if(HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) START_PROCESSING(SSobj, src) -/obj/item/melee/transforming/energy/Destroy() +/obj/item/melee/energy/Destroy() STOP_PROCESSING(SSobj, src) return ..() -/obj/item/melee/transforming/energy/add_blood_DNA(list/blood_dna) - return FALSE +/obj/item/melee/energy/proc/on_transform(obj/item/source, mob/user, active) + SIGNAL_HANDLER -/obj/item/melee/transforming/energy/get_sharpness() - return active * sharpness + if(active) + heat = active_heat + START_PROCESSING(SSobj, src) + if(sword_color) + icon_state = "[base_icon_state][sword_color]" + else + heat = initial(heat) + STOP_PROCESSING(SSobj, src) -/obj/item/melee/transforming/energy/process() - open_flame() + tool_behaviour = (active ? TOOL_SAW : NONE) //Lets energy weapons cut trees. Also lets them do bonecutting surgery, which is kinda metal! + if(user) + balloon_alert(user, "[name] [active ? "enabled":"disabled"]") + playsound(src, active ? 'sound/weapons/saberon.ogg' : 'sound/weapons/saberoff.ogg', 35, TRUE) + set_light_on(active) + update_appearance(UPDATE_ICON_STATE) -/obj/item/melee/transforming/energy/transform_weapon(mob/living/user, supress_message_text) - . = ..() - if(.) - if(active) - if(sword_color) - icon_state = "[base_icon_state][sword_color]" - START_PROCESSING(SSobj, src) - else - STOP_PROCESSING(SSobj, src) - set_light_on(active) + return COMPONENT_NO_DEFAULT_MESSAGE + +/obj/item/melee/energy/add_blood_DNA(list/blood_dna) + return FALSE + +/obj/item/melee/energy/get_sharpness() + return sharpness +/obj/item/melee/energy/process(seconds_per_tick) + if(heat) + open_flame() -/obj/item/melee/transforming/energy/get_temperature() - return active * heat +/obj/item/melee/energy/get_temperature() + return heat -/obj/item/melee/transforming/energy/ignition_effect(atom/A, mob/user) - if(!active) +/obj/item/melee/energy/ignition_effect(atom/A, mob/user) + if(!HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) return "" var/in_mouth = "" @@ -57,28 +98,28 @@ playsound(loc, hitsound, get_clamped_volume(), TRUE, -1) add_fingerprint(user) -/obj/item/melee/transforming/energy/axe +/obj/item/melee/energy/axe name = "energy axe" desc = "An energized battle axe." - icon_state = "axe0" + icon_state = "axe" lefthand_file = 'icons/mob/inhands/weapons/axes_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/axes_righthand.dmi' force = 40 - force_on = 150 + active_force = 150 throwforce = 25 - throwforce_on = 30 + active_throwforce = 30 hitsound = 'sound/weapons/bladeslice.ogg' throw_speed = 3 throw_range = 5 w_class = WEIGHT_CLASS_NORMAL - w_class_on = WEIGHT_CLASS_HUGE + active_w_class = WEIGHT_CLASS_HUGE flags_1 = CONDUCT_1 armour_penetration = 100 - attack_verb_off = list("attacked", "chopped", "cleaved", "torn", "cut") + attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") attack_verb_on = list() light_color = LIGHT_COLOR_LIGHT_CYAN -/obj/item/melee/transforming/energy/sword +/obj/item/melee/energy/sword name = "energy sword" desc = "For when a katana isn't enough. While Nanotrasen and the Syndicate both produce the so-called e-swords, they are visually and functionaly identical." icon_state = "sword" @@ -88,7 +129,7 @@ force = 3 throwforce = 5 hitsound = "swing_hit" //it starts deactivated - attack_verb_off = list("tapped", "poked") + attack_verb = list("tapped", "poked") throw_speed = 3 throw_range = 5 sharpness = IS_SHARP @@ -96,38 +137,32 @@ armour_penetration = 35 block_chance = 50 -/obj/item/melee/transforming/energy/sword/transform_weapon(mob/living/user, supress_message_text) - . = ..() - if(. && active && sword_color) - icon_state = "[base_icon_state][sword_color]" - -/obj/item/melee/transforming/energy/sword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(active) +/obj/item/melee/energy/sword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + if(HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) return ..() return 0 -/obj/item/melee/transforming/energy/sword/cyborg +/obj/item/melee/energy/sword/cyborg sword_color = "red" var/hitcost = 50 -/obj/item/melee/transforming/energy/sword/cyborg/attack(mob/M, mob/living/silicon/robot/R) +/obj/item/melee/energy/sword/cyborg/attack(mob/M, mob/living/silicon/robot/R) if(R.cell) var/obj/item/stock_parts/cell/C = R.cell - if(active && !(C.use(hitcost))) + if(HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE) && !(C.use(hitcost))) attack_self(R) to_chat(R, "It's out of charge!") return return ..() -/obj/item/melee/transforming/energy/sword/cyborg/saw //Used by medical Syndicate cyborgs +/obj/item/melee/energy/sword/cyborg/saw //Used by medical Syndicate cyborgs name = "energy saw" desc = "For heavy duty cutting. It has a carbon-fiber blade in addition to a toggleable hard-light edge to dramatically increase sharpness." - force_on = 30 + active_force = 30 force = 18 //About as much as a spear hitsound = 'sound/weapons/circsawhit.ogg' icon = 'icons/obj/surgery.dmi' - icon_state = "esaw_0" - icon_state_on = "esaw_1" + icon_state = "esaw" sword_color = null //stops icon from breaking when turned on. hitcost = 75 //Costs more than a standard cyborg esword w_class = WEIGHT_CLASS_NORMAL @@ -136,54 +171,49 @@ tool_behaviour = TOOL_SAW toolspeed = 0.7 //faster as a saw -/obj/item/melee/transforming/energy/sword/cyborg/saw/cyborg_unequip(mob/user) - if(!active) - return - transform_weapon(user, TRUE) - -/obj/item/melee/transforming/energy/sword/cyborg/saw/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - return 0 +/obj/item/melee/energy/sword/cyborg/saw/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + return FALSE -/obj/item/melee/transforming/energy/sword/saber +/obj/item/melee/energy/sword/saber var/list/possible_colors = list("red" = COLOR_SOFT_RED, "blue" = LIGHT_COLOR_LIGHT_CYAN, "green" = LIGHT_COLOR_GREEN, "purple" = LIGHT_COLOR_LAVENDER, "yellow" = COLOR_YELLOW) var/hacked = FALSE -/obj/item/melee/transforming/energy/sword/saber/Initialize(mapload) +/obj/item/melee/energy/sword/saber/Initialize(mapload) . = ..() if(LAZYLEN(possible_colors)) var/set_color = pick(possible_colors) sword_color = set_color set_light_color(possible_colors[set_color]) -/obj/item/melee/transforming/energy/sword/saber/process() +/obj/item/melee/energy/sword/saber/process() . = ..() if(hacked) var/set_color = pick(possible_colors) set_light_color(possible_colors[set_color]) -/obj/item/melee/transforming/energy/sword/saber/red +/obj/item/melee/energy/sword/saber/red possible_colors = list("red" = COLOR_SOFT_RED) -/obj/item/melee/transforming/energy/sword/saber/blue +/obj/item/melee/energy/sword/saber/blue possible_colors = list("blue" = LIGHT_COLOR_LIGHT_CYAN) -/obj/item/melee/transforming/energy/sword/saber/green +/obj/item/melee/energy/sword/saber/green possible_colors = list("green" = LIGHT_COLOR_GREEN) -/obj/item/melee/transforming/energy/sword/saber/purple +/obj/item/melee/energy/sword/saber/purple possible_colors = list("purple" = LIGHT_COLOR_LAVENDER) -/obj/item/melee/transforming/energy/sword/saber/yellow +/obj/item/melee/energy/sword/saber/yellow possible_colors = list("yellow" = COLOR_YELLOW) -/obj/item/melee/transforming/energy/sword/saber/attackby(obj/item/W, mob/living/user, params) +/obj/item/melee/energy/sword/saber/attackby(obj/item/W, mob/living/user, params) if(W.tool_behaviour == TOOL_MULTITOOL) if(!hacked) hacked = TRUE sword_color = "rainbow" to_chat(user, "RNBW_ENGAGE") - if(active) + if(HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) icon_state = "[base_icon_state]rainbow" user.update_inv_hands() else @@ -192,39 +222,38 @@ return ..() -/obj/item/melee/transforming/energy/sword/saber/pirate +/obj/item/melee/energy/sword/saber/pirate name = "energy cutlass" desc = "Arrrr matey." icon_state = "cutlass" base_icon_state = "cutlass" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - icon_state_on = "cutlass" -/obj/item/melee/transforming/energy/sword/saber/pirate/red +/obj/item/melee/energy/sword/saber/pirate/red possible_colors = list("red" = COLOR_SOFT_RED) -/obj/item/melee/transforming/energy/sword/saber/pirate/blue +/obj/item/melee/energy/sword/saber/pirate/blue possible_colors = list("blue" = LIGHT_COLOR_LIGHT_CYAN) -/obj/item/melee/transforming/energy/sword/saber/pirate/green +/obj/item/melee/energy/sword/saber/pirate/green possible_colors = list("green" = LIGHT_COLOR_GREEN) -/obj/item/melee/transforming/energy/sword/saber/pirate/purple +/obj/item/melee/energy/sword/saber/pirate/purple possible_colors = list("purple" = LIGHT_COLOR_LAVENDER) -/obj/item/melee/transforming/energy/sword/saber/pirate/yellow +/obj/item/melee/energy/sword/saber/pirate/yellow possible_colors = list("yellow" = COLOR_YELLOW) -/obj/item/melee/transforming/energy/blade +/obj/item/melee/energy/blade name = "energy blade" desc = "A concentrated beam of energy in the shape of a blade. Very stylish... and lethal." - icon_state = "blade" + icon_state = "lightblade" + item_state = "lightblade" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' force = 30 //Normal attacks deal esword damage hitsound = 'sound/weapons/blade1.ogg' - active = 1 throwforce = 1 //Throwing or dropping the item deletes it. throw_speed = 3 throw_range = 1 @@ -233,29 +262,29 @@ sharpness = IS_SHARP //Most of the other special functions are handled in their own files. aka special snowflake code so kewl -/obj/item/melee/transforming/energy/blade/Initialize() +/obj/item/melee/energy/blade/Initialize() . = ..() spark_system = new /datum/effect_system/spark_spread() spark_system.set_up(5, 0, src) spark_system.attach(src) -/obj/item/melee/transforming/energy/blade/Destroy() +/obj/item/melee/energy/blade/Destroy() QDEL_NULL(spark_system) return ..() -/obj/item/melee/transforming/energy/blade/transform_weapon(mob/living/user, supress_message_text) +/obj/item/melee/energy/blade/on_transform(obj/item/source, mob/user, active) return -/obj/item/melee/transforming/energy/blade/hardlight +/obj/item/melee/energy/blade/hardlight name = "hardlight blade" desc = "An extremely sharp blade made out of hard light. Packs quite a punch." icon_state = "lightblade" item_state = "lightblade" -/obj/item/melee/transforming/energy/ctf +/obj/item/melee/energy/ctf name = "energy sword" desc = "That cable over there, I'm going to cut it." - icon_state = "plasmasword0" + icon_state = "plasmasword" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' sharpness = IS_SHARP @@ -264,20 +293,19 @@ force = 0 throwforce = 0 hitsound = "swing_hit" //it starts deactivated - attack_verb_off = list("tapped", "poked") + attack_verb = list("tapped", "poked") throw_speed = 3 throw_range = 5 - force_on = 200 //instakill if shields are down + active_force = 200 //instakill if shields are down -/obj/item/melee/transforming/energy/ctf/transform_weapon(mob/living/user, supress_message_text) +/obj/item/melee/energy/ctf/on_transform(obj/item/source, mob/user, active) . = ..() - if(. && active) - icon_state = "plasmasword1" - -/obj/item/melee/transforming/energy/ctf/solgov - armour_penetration = 40 - force_on = 34 //desword grade, but 0 blocking - -/obj/item/melee/transforming/energy/ctf/transform_messages(mob/living/user, supress_message_text) + if(active) + icon_state = "plasmasword_on" playsound(user, active ? 'sound/weapons/SolGov_sword_arm.ogg' : 'sound/weapons/saberoff.ogg', 35, TRUE) to_chat(user, "[src] [active ? "is now active":"can now be concealed"].") + return COMPONENT_NO_DEFAULT_MESSAGE + +/obj/item/melee/energy/ctf/solgov + armour_penetration = 40 + active_force = 34 //desword grade, but 0 blocking diff --git a/code/game/objects/items/melee/energyhalberd.dm b/code/game/objects/items/melee/energyhalberd.dm index 8ae5cdd96f36..961325d50c16 100644 --- a/code/game/objects/items/melee/energyhalberd.dm +++ b/code/game/objects/items/melee/energyhalberd.dm @@ -26,7 +26,7 @@ max_integrity = 200 armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 70) resistance_flags = FIRE_PROOF - var/w_class_on = WEIGHT_CLASS_BULKY + var/active_w_class = WEIGHT_CLASS_BULKY var/halberd_color = "green" var/two_hand_force = 34 var/hacked = FALSE @@ -46,7 +46,7 @@ to_chat(user, "You lack the grace to wield this!") return COMPONENT_TWOHANDED_BLOCK_WIELD sharpness = IS_SHARP - w_class = w_class_on + w_class = active_w_class hitsound = 'sound/weapons/blade1.ogg' START_PROCESSING(SSobj, src) set_light_on(TRUE) @@ -129,7 +129,7 @@ return 1 /obj/item/energyhalberd/ignition_effect(atom/A, mob/user) - // same as /obj/item/melee/transforming/energy, mostly + // same as /obj/item/melee/energy, mostly if(!HAS_TRAIT(src, TRAIT_WIELDED)) return "" var/in_mouth = "" diff --git a/code/game/objects/items/melee/fireaxe.dm b/code/game/objects/items/melee/fireaxe.dm index b3e04ac1bc3c..7ae3728803c0 100644 --- a/code/game/objects/items/melee/fireaxe.dm +++ b/code/game/objects/items/melee/fireaxe.dm @@ -17,10 +17,10 @@ /obj/item/melee/axe/ComponentInitialize() . = ..() AddComponent(/datum/component/butchering, 100, 80, 0 , hitsound) //axes are not known for being precision butchering tools - AddComponent(/datum/component/two_handed, force_unwielded=5, force_wielded=24, icon_wielded="[base_icon_state]1") + AddComponent(/datum/component/two_handed, force_unwielded=5, force_wielded=24, icon_wielded="[base_icon_state]_w") -/obj/item/fireaxe/update_icon_state() - icon_state = "[base_icon_state]0" +/obj/item/melee/axe/update_icon_state() + icon_state = "[base_icon_state]" return ..() /obj/item/melee/axe/afterattack(atom/A, mob/user, proximity) @@ -35,13 +35,13 @@ /obj/item/melee/axe/fire // DEM AXES MAN, marker -Agouri name = "fire axe" desc = "Truly, the weapon of a madman. Who would think to fight fire with an axe?" - icon_state = "fireaxe0" + icon_state = "fireaxe" base_icon_state = "fireaxe" /obj/item/melee/axe/bone // Blatant imitation of the fireaxe, but made out of bone. name = "bone axe" desc = "A large, vicious axe crafted out of several sharpened bone plates and crudely tied together. Made of monsters, by killing monsters, for killing monsters." - icon_state = "bone_axe0" + icon_state = "bone_axe" base_icon_state = "bone_axe" /obj/item/melee/axe/scrap @@ -51,4 +51,4 @@ /obj/item/melee/axe/scrap/ComponentInitialize() . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=5, force_wielded=22, icon_wielded="[base_icon_state]1") + AddComponent(/datum/component/two_handed, force_unwielded=5, force_wielded=22, icon_wielded="[base_icon_state]_w") diff --git a/code/game/objects/items/melee/knife.dm b/code/game/objects/items/melee/knife.dm index c0518a9ffa4e..70ada48ed452 100644 --- a/code/game/objects/items/melee/knife.dm +++ b/code/game/objects/items/melee/knife.dm @@ -21,7 +21,6 @@ item_flags = EYE_STAB tool_behaviour = TOOL_KNIFE - /obj/item/melee/knife/ComponentInitialize() . = ..() set_butchering() @@ -166,6 +165,7 @@ flags_1 = CONDUCT_1 force = 3 w_class = WEIGHT_CLASS_SMALL + sharpness = IS_BLUNT throwforce = 5 throw_speed = 3 throw_range = 6 @@ -173,27 +173,19 @@ hitsound = 'sound/weapons/genhit.ogg' attack_verb = list("stubbed", "poked") resistance_flags = FIRE_PROOF - var/extended = 0 - -/obj/item/melee/knife/switchblade/attack_self(mob/user) - extended = !extended - playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, TRUE) - if(extended) - force = 20 - w_class = WEIGHT_CLASS_NORMAL - throwforce = 23 - icon_state = "switchblade_ext" - attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - hitsound = 'sound/weapons/bladeslice.ogg' - sharpness = IS_SHARP - else - force = 3 - w_class = WEIGHT_CLASS_SMALL - throwforce = 5 - icon_state = "switchblade" - attack_verb = list("stubbed", "poked") - hitsound = 'sound/weapons/genhit.ogg' - sharpness = IS_BLUNT + +/obj/item/melee/knife/switchblade/ComponentInitialize() + . = ..() + AddComponent( \ + /datum/component/transforming, \ + force_on = 20, \ + throwforce_on = 23, \ + throw_speed_on = 4, \ + sharpness_on = IS_SHARP, \ + hitsound_on = 'sound/weapons/bladeslice.ogg', \ + w_class_on = WEIGHT_CLASS_NORMAL, \ + attack_verb_on = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut"), \ + ) /obj/item/melee/knife/letter_opener name = "letter opener" diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index afb4bfe2ec33..13d4ac99fe18 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -5,11 +5,7 @@ righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' var/projectile_block_chance = 0 -/obj/item/melee/sword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(attack_type == PROJECTILE_ATTACK) - final_block_chance = projectile_block_chance //Don't bring a sword to a gunfight - return ..() - +//cruft /obj/item/melee/proc/check_martial_counter(mob/living/carbon/human/target, mob/living/carbon/human/user) if(target.check_block()) target.visible_message("[target.name] blocks [src] and twists [user]'s arm behind [user.p_their()] back!", @@ -17,6 +13,12 @@ user.Stun(40) return TRUE +//This is only pathed here because there is currently only melee using it, the second you want to add charged to something just make it /obj/item/get_cell() +/obj/item/melee/get_cell() + var/datum/component/transforming/charged/charged_comp = GetComponent(/datum/component/transforming/charged) + if(charged_comp) + return charged_comp.cell + /obj/item/melee/chainofcommand name = "chain of command" desc = "A tool used by great men to placate the frothing masses." @@ -101,8 +103,8 @@ attack_verb = list("beat", "smacked") custom_materials = list(/datum/material/wood = MINERAL_MATERIAL_AMOUNT * 3.5) w_class = WEIGHT_CLASS_HUGE - var/homerun_ready = 0 - var/homerun_able = 0 + var/homerun_ready = FALSE + var/homerun_able = FALSE /obj/item/melee/baseball_bat/homerun name = "home run bat" diff --git a/code/game/objects/items/melee/spear.dm b/code/game/objects/items/melee/spear.dm index 218638882bfb..4a7b8b789dc1 100644 --- a/code/game/objects/items/melee/spear.dm +++ b/code/game/objects/items/melee/spear.dm @@ -1,6 +1,6 @@ //spears /obj/item/melee/spear - icon_state = "spearglass0" + icon_state = "spearglass" icon = 'icons/obj/weapon/spear.dmi' lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' @@ -26,10 +26,10 @@ . = ..() AddComponent(/datum/component/butchering, 100, 70) //decent in a pinch, but pretty bad. AddComponent(/datum/component/jousting) - AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]1") + AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]_w") /obj/item/melee/spear/update_icon_state() - icon_state = "[icon_prefix]0" + icon_state = "[icon_prefix]" return ..() /obj/item/melee/spear/CheckParts(list/parts_list) @@ -37,7 +37,7 @@ if (istype(tip, /obj/item/shard/plasma)) throwforce = 21 icon_prefix = "spearplasma" - AddComponent(/datum/component/two_handed, force_unwielded=11, force_wielded=19, icon_wielded="[icon_prefix]1") + AddComponent(/datum/component/two_handed, force_unwielded=11, force_wielded=19, icon_wielded="[icon_prefix]_w") update_appearance() qdel(tip) ..() @@ -46,9 +46,9 @@ * Bone Spear */ /obj/item/melee/spear/bone //Blatant imitation of spear, but made out of bone. Not valid for explosive modification. - icon_state = "bone_spear0" + icon_state = "bone_spear" name = "bone spear" - base_icon_state = "bone_spear0" + base_icon_state = "bone_spear" icon_prefix = "bone_spear" desc = "A haphazardly-constructed yet still deadly weapon. The pinnacle of modern technology." //this should be a plasma spear or worse. @@ -57,11 +57,11 @@ /obj/item/melee/spear/bone/ComponentInitialize() . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=11, force_wielded=19, icon_wielded="[icon_prefix]1") + AddComponent(/datum/component/two_handed, force_unwielded=11, force_wielded=19, icon_wielded="[icon_prefix]_w") /obj/item/melee/spear/explosive name = "explosive lance" - icon_state = "spearbomb0" + icon_state = "spearbomb" base_icon_state = "spearbomb" icon_prefix = "spearbomb" var/obj/item/grenade/explosive = null @@ -73,7 +73,7 @@ /obj/item/melee/spear/explosive/ComponentInitialize() . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]1") + AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]_w") /obj/item/melee/spear/explosive/proc/set_explosive(obj/item/grenade/G) if(explosive) diff --git a/code/game/objects/items/melee/stunbaton.dm b/code/game/objects/items/melee/stunbaton.dm index 05225d80cff8..152bc76d5f80 100644 --- a/code/game/objects/items/melee/stunbaton.dm +++ b/code/game/objects/items/melee/stunbaton.dm @@ -23,7 +23,7 @@ var/can_remove_cell = TRUE var/turned_on = FALSE - var/activate_sound = "sparks" + var/activate_sound = SFX_SPARKS var/attack_cooldown_check = 0 SECONDS var/attack_cooldown = 2.5 SECONDS @@ -99,7 +99,7 @@ /obj/item/melee/baton/update_icon_state() if(turned_on) - icon_state = "[initial(icon_state)]_active" + icon_state = "[initial(icon_state)]_on" return ..() if(!cell) icon_state = "[initial(icon_state)]_nocell" @@ -110,23 +110,23 @@ /obj/item/melee/baton/examine(mob/user) . = ..() if(cell) - . += "\The [src] is [round(cell.percent())]% charged." + . += span_notice("\The [src] is [round(cell.percent())]% charged.") else - . += "\The [src] does not have a power source installed." + . += span_warning("\The [src] does not have a power source installed.") /obj/item/melee/baton/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/stock_parts/cell)) var/obj/item/stock_parts/cell/C = W if(cell) - to_chat(user, "[src] already has a cell!") + to_chat(user, span_notice("[src] already has a cell!")) else if(C.maxcharge < cell_hit_cost) - to_chat(user, "[src] requires a higher capacity cell.") + to_chat(user, span_notice("[src] requires a higher capacity cell.")) return if(!user.transferItemToLoc(W, src)) return cell = W - to_chat(user, "You install a cell in [src].") + to_chat(user, span_notice("You install a cell in [src].")) update_appearance() else if(W.tool_behaviour == TOOL_SCREWDRIVER) @@ -139,7 +139,7 @@ cell.update_appearance() cell.forceMove(get_turf(src)) cell = null - to_chat(user, "You remove the cell from [src].") + to_chat(user, span_notice("You remove the cell from [src].")) turned_on = FALSE update_appearance() @@ -149,22 +149,22 @@ /obj/item/melee/baton/proc/toggle_on(mob/user) if(cell && cell.charge > cell_hit_cost) turned_on = !turned_on - to_chat(user, "[src] is now [turned_on ? "on" : "off"].") + to_chat(user, span_notice("[src] is now [turned_on ? "on" : "off"].")) playsound(src, activate_sound, 75, TRUE, -1) else turned_on = FALSE if(!cell) - to_chat(user, "[src] does not have a power source!") + to_chat(user, span_warning("[src] does not have a power source!")) else - to_chat(user, "[src] is out of charge.") + to_chat(user, span_warning("[src] is out of charge.")) update_appearance() add_fingerprint(user) /obj/item/melee/baton/proc/clumsy_check(mob/living/carbon/human/user) if(turned_on && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) playsound(src, stun_sound, 75, TRUE, -1) - user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \ - "You accidentally hit yourself with [src]!") + user.visible_message(span_danger("[user] accidentally hits [user.p_them()]self with [src]!"), \ + span_userdanger("You accidentally hit yourself with [src]!")) user.Knockdown(stun_time*3) //should really be an equivalent to attack(user,user) deductcharge(cell_hit_cost) return TRUE @@ -191,10 +191,10 @@ user.do_attack_animation(M) return else - to_chat(user, "The baton is still charging!") + to_chat(user, span_danger("The [src] is still charging!")) else - M.visible_message("[user] prods [M] with [src]. Luckily it was off.", \ - "[user] prods you with [src]. Luckily it was off.") + M.visible_message(span_warning("[user] prods [M] with [src]. Luckily it was off."), \ + span_warning("[user] prods you with [src]. Luckily it was off.")) else if(turned_on) if(attack_cooldown_check <= world.time) @@ -206,7 +206,7 @@ if(shields_blocked(L, user)) return FALSE if(HAS_TRAIT_FROM(L, TRAIT_IWASBATONED, user)) //no doublebaton abuse anon! - to_chat(user, "[L] manages to avoid the attack!") + to_chat(user, span_danger("[L] manages to avoid the attack!")) return FALSE if(iscyborg(loc)) var/mob/living/silicon/robot/R = loc @@ -228,8 +228,8 @@ if(user) L.lastattacker = user.real_name L.lastattackerckey = user.ckey - L.visible_message("[user] stuns [L] with [src]!", \ - "[user] stuns you with [src]!") + L.visible_message(span_danger("[user] stuns [L] with [src]!"), \ + span_userdanger("[user] stuns you with [src]!")) log_combat(user, L, "stunned") playsound(src, stun_sound, 50, TRUE, -1) @@ -245,7 +245,7 @@ /obj/item/melee/baton/proc/apply_stun_effect_end(mob/living/target) var/trait_check = HAS_TRAIT(target, TRAIT_STUNRESISTANCE) //var since we check it in out to_chat as well as determine stun duration if(!target.IsKnockdown()) - to_chat(target, "Your muscles seize, making you collapse[trait_check ? ", but your body quickly recovers..." : "!"]") + to_chat(target, span_warning("Your muscles seize, making you collapse[trait_check ? ", but your body quickly recovers..." : "!"]")) if(trait_check) target.Knockdown(stun_time * 0.1) @@ -361,7 +361,7 @@ var/on_icon_state // What is our sprite when turned on var/off_icon_state // What is our sprite when turned off var/on_item_state // What is our in-hand sprite when turned on - var/force_on // Damage when on - not stunning + var/active_force // Damage when on - not stunning var/force_off // Damage when off - not stunning var/weight_class_on // What is the new size class when turned on @@ -373,8 +373,8 @@ /obj/item/melee/classic_baton/proc/get_on_description() . = list() - .["local_on"] = "You extend the baton." - .["local_off"] = "You collapse the baton." + .["local_on"] = span_warning("You extend the baton.") + .["local_off"] = span_notice("You collapse the baton.") return . @@ -382,8 +382,8 @@ /obj/item/melee/classic_baton/proc/get_stun_description(mob/living/target, mob/living/user) . = list() - .["visible"] = "[user] knocks [target] down with [src]!" - .["local"] = "[user] knocks you down with [src]!" + .["visible"] = span_danger("[user] knocks [target] down with [src]!") + .["local"] = span_userdanger("[user] knocks you down with [src]!") return . @@ -391,8 +391,8 @@ /obj/item/melee/classic_baton/proc/get_silicon_stun_description(mob/living/target, mob/living/user) . = list() - .["visible"] = "[user] pulses [target]'s sensors with the baton!" - .["local"] = "You pulse [target]'s sensors with the baton!" + .["visible"] = span_danger("[user] pulses [target]'s sensors with the baton!") + .["local"] = span_danger("You pulse [target]'s sensors with the baton!") return . @@ -410,7 +410,7 @@ add_fingerprint(user) if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) - to_chat(user, "You hit yourself over the head!") + to_chat(user, span_userdanger("You hit yourself over the head!")) user.Paralyze(knockdown_time_carbon * force) user.apply_damage(stamina_damage, STAMINA, BODY_ZONE_HEAD) @@ -493,7 +493,7 @@ /obj/item/melee/classic_baton/telescopic name = "telescopic baton" desc = "A compact yet robust personal defense weapon. Can be concealed when folded." - icon_state = "telebaton_0" + icon_state = "telebaton" lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' item_state = null @@ -504,10 +504,10 @@ on = FALSE on_sound = 'sound/weapons/batonextend.ogg' - on_icon_state = "telebaton_1" - off_icon_state = "telebaton_0" + on_icon_state = "telebaton_on" + off_icon_state = "telebaton" on_item_state = "nullrod" - force_on = 10 + active_force = 10 force_off = 0 weight_class_on = WEIGHT_CLASS_BULKY @@ -520,7 +520,7 @@ icon_state = on_icon_state item_state = on_item_state w_class = weight_class_on - force = force_on + force = active_force attack_verb = list("smacked", "struck", "cracked", "beaten") else to_chat(user, desc["local_off"]) @@ -537,7 +537,7 @@ /obj/item/melee/classic_baton/telescopic/contractor_baton name = "contractor baton" desc = "A compact, specialised baton assigned to Syndicate contractors. Applies light electrical shocks to targets." - icon_state = "contractor_baton_0" + icon_state = "contractor_baton" item_state = null slot_flags = ITEM_SLOT_BELT w_class = WEIGHT_CLASS_SMALL @@ -550,15 +550,15 @@ on_sound = 'sound/weapons/contractorbatonextend.ogg' on_stun_sound = 'sound/effects/contractorbatonhit.ogg' - on_icon_state = "contractor_baton_1" - off_icon_state = "contractor_baton_0" + on_icon_state = "contractor_baton_on" + off_icon_state = "contractor_baton" on_item_state = "contractor_baton" - force_on = 16 + active_force = 16 force_off = 5 weight_class_on = WEIGHT_CLASS_NORMAL /obj/item/melee/classic_baton/telescopic/contractor_baton/get_wait_description() - return "The baton is still charging!" + return span_danger("The baton is still charging!") /obj/item/melee/classic_baton/telescopic/contractor_baton/additional_effects_carbon(mob/living/target, mob/living/user) target.Jitter(20) diff --git a/code/game/objects/items/melee/sword.dm b/code/game/objects/items/melee/sword.dm index e74dd456b466..0b64e22ed67c 100644 --- a/code/game/objects/items/melee/sword.dm +++ b/code/game/objects/items/melee/sword.dm @@ -8,13 +8,22 @@ flags_1 = CONDUCT_1 slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_BACK w_class = WEIGHT_CLASS_BULKY - obj_flags = UNIQUE_RENAME - block_chance = 25 + block_chance = 10 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") sharpness = IS_SHARP armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) resistance_flags = FIRE_PROOF +/obj/item/melee/sword/ComponentInitialize() + . = ..() + AddComponent(/datum/component/butchering, 30, 95, 5) //fast and effective, but as a sword, it might damage the results. + +//cruft +/obj/item/melee/sword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + if(attack_type == PROJECTILE_ATTACK) + final_block_chance = projectile_block_chance //Don't bring a sword to a gunfight + return ..() + /obj/item/melee/sword/claymore name = "claymore" desc = "What are you standing around staring at this for? Get to killing!" @@ -41,7 +50,7 @@ /obj/item/melee/sword/scrap name = "scrap sword" desc = "A jagged and painful weapon only effective on targets without an armour" - icon_state = "machete0" + icon_state = "machete" force = 24 throwforce = 10 armour_penetration = -35 @@ -50,7 +59,7 @@ /obj/item/melee/sword/mass name = "mass produced machete" desc = "A middle ground between a machete and a short sword. A simple construction of stamped steel but its so cheap its hard to complain. Its right between being a one hand and two handed weapon" - icon_state = "machete0" + icon_state = "machete" base_icon_state = "machete" force = 20 throwforce = 15 @@ -75,8 +84,8 @@ /obj/item/melee/sword/chainsaw name = "sacred chainsaw sword" desc = "Suffer not a heretic to live." - icon_state = "chainswordon" - item_state = "chainswordon" + icon_state = "chainsword_on" + item_state = "chainsword_on" force = 15 throwforce = 10 armour_penetration = 25 @@ -99,10 +108,6 @@ hitsound = 'sound/weapons/rapierhit.ogg' custom_materials = list(/datum/material/iron = 1000) -/obj/item/melee/sword/sabre/Initialize() - . = ..() - AddComponent(/datum/component/butchering, 30, 95, 5) //fast and effective, but as a sword, it might damage the results. - /obj/item/melee/sword/sabre/on_enter_storage(datum/component/storage/concrete/S) var/obj/item/storage/belt/sabre/B = S.real_location() if(istype(B)) @@ -152,50 +157,30 @@ w_class = WEIGHT_CLASS_SMALL attack_verb = list("smacked", "prodded") - var/extended = FALSE var/extend_sound = 'sound/weapons/batonextend.ogg' - var/on_icon_state = "suns-tsword_ext" - var/on_item_state = "suns-tsword_ext" - var/off_icon_state = "suns-tsword" - var/off_item_state = "suns-tsword" - - var/force_on = 10 - var/on_throwforce = 10 - var/on_blockchance = 40 - - var/force_off = 0 - var/off_throwforce = 0 - var/off_blockchance = 0 - - var/weight_class_on = WEIGHT_CLASS_BULKY - -/obj/item/melee/sword/sabre/suns/telescopic/attack_self(mob/user) - extended = !extended - - if(extended) - to_chat(user, "You extend the [src].") - icon_state = on_icon_state - item_state = on_item_state - slot_flags = 0 - w_class = weight_class_on - force = force_on - throwforce = on_throwforce - block_chance = on_blockchance - attack_verb = list("slashed", "cut") + var/on_block_chance = 40 + +/obj/item/melee/sword/sabre/suns/telescopic/ComponentInitialize() + . = ..() + AddComponent( \ + /datum/component/transforming, \ + force_on = 10, \ + throwforce_on = 10, \ + attack_verb_on = list("slashed", "cut"), \ + w_class_on = WEIGHT_CLASS_BULKY, \ + ) + RegisterSignal(src, COMSIG_TRANSFORMING_ON_TRANSFORM, PROC_REF(on_transform)) + +/obj/item/melee/sword/sabre/suns/telescopic/proc/on_transform(obj/item/source, mob/user, active) + SIGNAL_HANDLER + + if(active) + block_chance = on_block_chance else - to_chat(user, "You collapse the [src].") - icon_state = off_icon_state - item_state = off_item_state - slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - force = force_off - throwforce = off_throwforce - block_chance = off_blockchance - attack_verb = list("smacked", "prodded") - - playsound(get_turf(src), extend_sound, 50, TRUE) - add_fingerprint(user) + block_chance = initial(block_chance) + playsound(user, extend_sound, 50, TRUE) + return COMPONENT_NO_DEFAULT_MESSAGE /obj/item/melee/sword/supermatter name = "supermatter sword" @@ -324,7 +309,7 @@ //HF blade /obj/item/melee/sword/vibro - icon_state = "hfrequency0" + icon_state = "hfrequency" base_icon_state = "hfrequency" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' diff --git a/code/game/objects/items/melee/transforming.dm b/code/game/objects/items/melee/transforming.dm deleted file mode 100644 index 8059e021b8f0..000000000000 --- a/code/game/objects/items/melee/transforming.dm +++ /dev/null @@ -1,88 +0,0 @@ -/obj/item/melee/transforming - sharpness = IS_SHARP - stealthy_audio = TRUE //Most of these are antag weps so we dont want them to be /too/ overt. - var/active = FALSE - var/force_on = 30 //force when active - var/faction_bonus_force = 0 //Bonus force dealt against certain factions - var/throwforce_on = 20 - var/icon_state_on = "axe1" - var/hitsound_on = 'sound/weapons/blade1.ogg' - var/list/attack_verb_on = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - var/list/attack_verb_off = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - w_class = WEIGHT_CLASS_SMALL - var/bonus_active = FALSE //If the faction damage bonus is active - var/list/nemesis_factions //Any mob with a faction that exists in this list will take bonus damage/effects - var/w_class_on = WEIGHT_CLASS_BULKY - var/clumsy_check = TRUE - -/obj/item/melee/transforming/Initialize() - . = ..() - if(active) - if(attack_verb_on.len) - attack_verb = attack_verb_on - else - if(attack_verb_off.len) - attack_verb = attack_verb_off - if(embedding) - updateEmbedding() - if(sharpness) - AddComponent(/datum/component/butchering, 50, 100, 0, hitsound) - -/obj/item/melee/transforming/attack_self(mob/living/carbon/user) - if(transform_weapon(user)) - clumsy_transform_effect(user) - -/obj/item/melee/transforming/attack(mob/living/target, mob/living/carbon/human/user) - var/nemesis_faction = FALSE - if(LAZYLEN(nemesis_factions)) - for(var/F in target.faction) - if(F in nemesis_factions) - nemesis_faction = TRUE - force += faction_bonus_force - nemesis_effects(user, target) - break - . = ..() - if(nemesis_faction) - force -= faction_bonus_force - -/obj/item/melee/transforming/proc/transform_weapon(mob/living/user, supress_message_text) - active = !active - if(active) - force = force_on - throwforce = throwforce_on - hitsound = hitsound_on - throw_speed = 4 - if(attack_verb_on.len) - attack_verb = attack_verb_on - icon_state = icon_state_on - w_class = w_class_on - if(embedding) - updateEmbedding() - else - force = initial(force) - throwforce = initial(throwforce) - hitsound = initial(hitsound) - throw_speed = initial(throw_speed) - if(attack_verb_off.len) - attack_verb = attack_verb_off - icon_state = initial(icon_state) - w_class = initial(w_class) - if(embedding) - disableEmbedding() - - transform_messages(user, supress_message_text) - add_fingerprint(user) - return TRUE - -/obj/item/melee/transforming/proc/nemesis_effects(mob/living/user, mob/living/target) - return - -/obj/item/melee/transforming/proc/transform_messages(mob/living/user, supress_message_text) - playsound(user, active ? 'sound/weapons/saberon.ogg' : 'sound/weapons/saberoff.ogg', 35, TRUE) //changed it from 50% volume to 35% because deafness - if(!supress_message_text) - to_chat(user, "[src] [active ? "is now active":"can now be concealed"].") - -/obj/item/melee/transforming/proc/clumsy_transform_effect(mob/living/user) - if(clumsy_check && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) - to_chat(user, "You accidentally cut yourself with [src], like a doofus!") - user.take_bodypart_damage(5,5) diff --git a/code/game/objects/items/melee/trickweapon.dm b/code/game/objects/items/melee/trickweapon.dm new file mode 100644 index 000000000000..af574085a158 --- /dev/null +++ b/code/game/objects/items/melee/trickweapon.dm @@ -0,0 +1,69 @@ +/obj/item/melee/cleaving_saw + name = "cleaving saw" + desc = "This saw, effective at drawing the blood of beasts, transforms into a long cleaver that makes use of centrifugal force." + force = 12 + var/active_force = 20 //force when active + throwforce = 20 + var/active_throwforce = 20 + icon = 'icons/obj/lavaland/artefacts.dmi' + lefthand_file = 'icons/mob/inhands/64x64_lefthand.dmi' + righthand_file = 'icons/mob/inhands/64x64_righthand.dmi' + inhand_x_dimension = 64 + inhand_y_dimension = 64 + icon_state = "cleaving_saw" + item_state = "cleaving_saw" + slot_flags = ITEM_SLOT_BELT + attack_verb = list("attacked", "sawed", "sliced", "torn", "ripped", "diced", "cut") + hitsound = 'sound/weapons/bladeslice.ogg' + sharpness = IS_SHARP + + var/transform_cooldown + var/swiping = FALSE + var/bleed_stacks_per_hit = 3 + +/obj/item/melee/cleaving_saw/Initialize(mapload) + . = ..() + AddElement(/datum/element/update_icon_updates_onmob) + AddComponent(/datum/component/butchering, 50, 100, 0, hitsound) + AddComponent( \ + /datum/component/transforming, \ + transform_cooldown_time = (CLICK_CD_MELEE * 0.25), \ + force_on = active_force, \ + throwforce_on = active_throwforce, \ + attack_verb_on = list("cleave", "swipe", "slash", "chop"), \ + ) + RegisterSignal(src, COMSIG_TRANSFORMING_ON_TRANSFORM, PROC_REF(on_transform)) + +/obj/item/melee/cleaving_saw/examine(mob/user) + . = ..() + . += span_notice("It is [HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE) ? "open, will cleave enemies in a wide arc and deal additional damage to fauna":"closed, and can be used for rapid consecutive attacks that cause fauna to bleed"].") + . += span_notice("Both modes will build up existing bleed effects, doing a burst of high damage if the bleed is built up high enough.") + . += span_notice("Transforming it immediately after an attack causes the next attack to come out faster.") + +/obj/item/melee/cleaving_saw/proc/on_transform(obj/item/source, mob/user, active) + SIGNAL_HANDLER + user.changeNext_move(CLICK_CD_MELEE * 0.25) + if(user) + balloon_alert(user, "[active ? "opened" : "closed"] [src]") + playsound(user, 'sound/magic/clockwork/fellowship_armory.ogg', 35, TRUE, frequency = 90000 - (active * 30000)) + return COMPONENT_NO_DEFAULT_MESSAGE + +/obj/item/melee/cleaving_saw/melee_attack_chain(mob/user, atom/target, params) + . = ..() + if(!HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) + user.changeNext_move(CLICK_CD_MELEE * 0.5) //when closed, it attacks very rapidly + +/obj/item/melee/cleaving_saw/attack(mob/living/target, mob/living/carbon/human/user) + if(!HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE) || swiping || !target.density || get_turf(target) == get_turf(user)) + ..() + else + var/turf/user_turf = get_turf(user) + var/dir_to_target = get_dir(user_turf, get_turf(target)) + swiping = TRUE + var/static/list/cleaving_saw_cleave_angles = list(0, -45, 45) //so that the animation animates towards the target clicked and not towards a side target + for(var/i in cleaving_saw_cleave_angles) + var/turf/T = get_step(user_turf, turn(dir_to_target, i)) + for(var/mob/living/L in T) + if(user.Adjacent(L) && L.density) + melee_attack_chain(user, L) + swiping = FALSE diff --git a/code/game/objects/items/sharpener.dm b/code/game/objects/items/sharpener.dm index f9d429b55a3e..00217a8550a4 100644 --- a/code/game/objects/items/sharpener.dm +++ b/code/game/objects/items/sharpener.dm @@ -21,7 +21,7 @@ if(requires_sharpness && !I.get_sharpness()) to_chat(user, "You can only sharpen items that are already sharp, such as knives!") return - if(istype(I, /obj/item/melee/transforming/energy)) + if(istype(I, /obj/item/melee/energy)) to_chat(user, "You don't think \the [I] will be the thing getting modified if you use it on \the [src]!") return diff --git a/code/game/objects/items/shields.dm b/code/game/objects/items/shields.dm index 685bfeae8a8a..81484bc4e13e 100644 --- a/code/game/objects/items/shields.dm +++ b/code/game/objects/items/shields.dm @@ -35,7 +35,7 @@ final_block_chance += 30 if(attack_type == LEAP_ATTACK) final_block_chance = 100 - . = ..() + . = .() if(.) on_shield_block(owner, hitby, attack_text, damage, attack_type) diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index 29d2cd22dbbd..31314b3d74ba 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -102,6 +102,14 @@ for(var/i in 1 to 7) new /obj/item/disk/data(src) +/obj/item/storage/box/holodisc + name = "holodisc box" + illustration = "disk_kit" + +/obj/item/storage/box/holodisc/PopulateContents() + for(var/i in 1 to 7) + new /obj/item/disk/holodisk(src) + //guys why are my tests failing /obj/item/storage/box/disks_plantgene name = "plant data disks box" @@ -743,6 +751,15 @@ for(var/i in 1 to 7) new /obj/item/clothing/accessory/armband/deputy(src) +/obj/item/storage/box/smokebombs + name = "box of smoke grenades" + desc = "Used for rapidly laying cover." + illustration = "grenade" + +/obj/item/storage/box/smokebombs/PopulateContents() + for(var/i in 1 to 7) + new /obj/item/grenade/smokebomb(src) + /obj/item/storage/box/metalfoam name = "box of metal foam grenades" desc = "To be used to rapidly seal hull breaches." diff --git a/code/game/objects/items/storage/filled_guncases.dm b/code/game/objects/items/storage/filled_guncases.dm index 91c5d9d7f02c..738670534bb5 100644 --- a/code/game/objects/items/storage/filled_guncases.dm +++ b/code/game/objects/items/storage/filled_guncases.dm @@ -60,6 +60,7 @@ /obj/item/storage/guncase/pistol/viper gun_type = /obj/item/gun/ballistic/revolver/viper/indie + mag_type = /obj/item/ammo_box/a357/empty /obj/item/storage/guncase/pistol/ringneck gun_type = /obj/item/gun/ballistic/automatic/pistol/ringneck/indie diff --git a/code/game/objects/items/storage/toolbox.dm b/code/game/objects/items/storage/toolbox.dm index 6a47c8544bb9..9b17eae3b197 100644 --- a/code/game/objects/items/storage/toolbox.dm +++ b/code/game/objects/items/storage/toolbox.dm @@ -17,12 +17,13 @@ drop_sound = 'sound/items/handling/toolbox_drop.ogg' pickup_sound = 'sound/items/handling/toolbox_pickup.ogg' material_flags = MATERIAL_COLOR - var/latches = "single_latch" + var/latches = null var/has_latches = TRUE /obj/item/storage/toolbox/Initialize() . = ..() - if(has_latches) + if(has_latches && !latches) + latches = "single_latch" if(prob(10)) latches = "double_latch" if(prob(1)) @@ -71,12 +72,10 @@ material_flags = NONE /obj/item/storage/toolbox/mechanical/PopulateContents() - //WS Edit - Better Tool sprites if(prob(50)) new /obj/item/wrench(src) else new /obj/item/wrench/crescent(src) - //WS End new /obj/item/screwdriver(src) new /obj/item/weldingtool(src) new /obj/item/crowbar(src) diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm index 5a1bdaabe340..97f8452e831e 100644 --- a/code/game/objects/items/storage/uplink_kits.dm +++ b/code/game/objects/items/storage/uplink_kits.dm @@ -56,7 +56,7 @@ new /obj/item/encryptionkey/syndicate(src) if("murder") - new /obj/item/melee/transforming/energy/sword/saber(src) + new /obj/item/melee/energy/sword/saber(src) new /obj/item/clothing/glasses/thermal/syndi(src) new /obj/item/card/emag(src) new /obj/item/clothing/shoes/chameleon/noslip(src) @@ -178,7 +178,7 @@ new /obj/item/dnainjector/geladikinesis(src) new /obj/item/dnainjector/cryokinesis(src) new /obj/item/gun/energy/temperature/security(src) - new /obj/item/melee/transforming/energy/sword/saber/blue(src) //see see it fits the theme bc its blue and ice is blue + new /obj/item/melee/energy/sword/saber/blue(src) //see see it fits the theme bc its blue and ice is blue if("made_man") new /obj/effect/spawner/random/clothing/mafia_outfit(src) // 0 TC, just an outfit for the new 'don of this family diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 220e0e605828..3c1ce5b25ada 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -296,7 +296,7 @@ w_class = WEIGHT_CLASS_SMALL add_fingerprint(user) -// Copied from /obj/item/melee/transforming/energy/sword/attackby +// Copied from /obj/item/melee/energy/sword/attackby /obj/item/toy/sword/attackby(obj/item/W, mob/living/user, params) if(istype(W, /obj/item/toy/sword)) if(HAS_TRAIT(W, TRAIT_NODROP) || HAS_TRAIT(src, TRAIT_NODROP)) diff --git a/code/game/objects/structures/crates_lockers/closets/gimmick.dm b/code/game/objects/structures/crates_lockers/closets/gimmick.dm index a69a279bad77..626640f5a607 100644 --- a/code/game/objects/structures/crates_lockers/closets/gimmick.dm +++ b/code/game/objects/structures/crates_lockers/closets/gimmick.dm @@ -55,7 +55,7 @@ for(var/i in 1 to 3) new /obj/item/clothing/suit/armor/tdome/red(src) for(var/i in 1 to 3) - new /obj/item/melee/transforming/energy/sword/saber(src) + new /obj/item/melee/energy/sword/saber(src) for(var/i in 1 to 3) new /obj/item/gun/energy/laser(src) for(var/i in 1 to 3) @@ -74,7 +74,7 @@ for(var/i in 1 to 3) new /obj/item/clothing/suit/armor/tdome/green(src) for(var/i in 1 to 3) - new /obj/item/melee/transforming/energy/sword/saber(src) + new /obj/item/melee/energy/sword/saber(src) for(var/i in 1 to 3) new /obj/item/gun/energy/laser(src) for(var/i in 1 to 3) diff --git a/code/game/turfs/open/_open.dm b/code/game/turfs/open/_open.dm index 44acbe06f6bf..92f6d3b64782 100644 --- a/code/game/turfs/open/_open.dm +++ b/code/game/turfs/open/_open.dm @@ -267,7 +267,7 @@ pulse_strength = min(pulse_strength,air.get_moles(GAS_CO2)*1000,air.get_moles(GAS_O2)*2000) //Ensures matter is conserved properly air.set_moles(GAS_CO2, max(air.get_moles(GAS_CO2)-(pulse_strength/1000),0)) air.set_moles(GAS_O2, max(air.get_moles(GAS_O2)-(pulse_strength/2000),0)) - air.adjust_moles(GAS_PLUOXIUM, pulse_strength/4000) + air.adjust_moles(GAS_O3, pulse_strength/4000) /turf/open/IgniteTurf(power, fire_color) if(turf_fire) diff --git a/code/game/turfs/open/dirtystation.dm b/code/game/turfs/open/dirtystation.dm index 29e13585bb7d..5daba45f1b1e 100644 --- a/code/game/turfs/open/dirtystation.dm +++ b/code/game/turfs/open/dirtystation.dm @@ -53,8 +53,7 @@ return //Bathrooms. Blood, vomit, and shavings in the sinks. - var/static/list/bathroom_dirt_areas = typecacheof(list( /area/ship/crew/toilet, - /area/awaymission/research/interior/bathroom)) + var/static/list/bathroom_dirt_areas = typecacheof(/area/ship/crew/toilet) if(is_type_in_typecache(A, bathroom_dirt_areas)) if(prob(40)) if(prob(90)) diff --git a/code/game/turfs/open/floor/fancy_floor.dm b/code/game/turfs/open/floor/fancy_floor.dm index 3a0184849450..2d043371a9bb 100644 --- a/code/game/turfs/open/floor/fancy_floor.dm +++ b/code/game/turfs/open/floor/fancy_floor.dm @@ -135,7 +135,7 @@ icon_state = "fairygrass[rand(0,3)]" /turf/open/floor/grass/fairy/beach - baseturfs = /turf/open/floor/plating/beach/sand + baseturfs = /turf/open/floor/plating/asteroid/sand planetary_atmos = TRUE /turf/open/floor/grass/snow diff --git a/code/game/turfs/open/floor/misc_floor.dm b/code/game/turfs/open/floor/misc_floor.dm index 97f3772ec208..d38a0ca6956a 100644 --- a/code/game/turfs/open/floor/misc_floor.dm +++ b/code/game/turfs/open/floor/misc_floor.dm @@ -211,6 +211,8 @@ smoothing_groups = list(SMOOTH_GROUP_TURF_OPEN, SMOOTH_GROUP_FLOOR_GRASS) canSmoothWith = list(SMOOTH_GROUP_CLOSED_TURFS, SMOOTH_GROUP_FLOOR_GRASS) layer = HIGH_TURF_LAYER + icon_state = "grass0" + base_icon_state = "grass" var/smooth_icon = 'icons/turf/floors/grass.dmi' baseturfs = /turf/open/floor/ship/dirt diff --git a/code/game/turfs/open/floor/plating/beach.dm b/code/game/turfs/open/floor/plating/beach.dm index 88bb3bbcad1b..485a5cc58a8c 100644 --- a/code/game/turfs/open/floor/plating/beach.dm +++ b/code/game/turfs/open/floor/plating/beach.dm @@ -1,13 +1,15 @@ +///it's all sand.... + /turf/open/floor/plating/asteroid/sand name = "sand" icon = 'icons/misc/beach.dmi' icon_state = "sand" base_icon_state = "sand" baseturfs = /turf/open/floor/plating/asteroid/sand - initial_gas_mix = OPENTURF_DEFAULT_ATMOS //custom atmos? lots of oxygen, hot? - digResult = /obj/item/stack/ore/glass + initial_gas_mix = OPENTURF_DEFAULT_ATMOS planetary_atmos = TRUE digResult = /obj/item/stack/ore/glass/beach + light_color = COLOR_BEACHPLANET_LIGHT /turf/open/floor/plating/asteroid/sand/Initialize(mapload, inherited_virtual_z) . = ..() @@ -16,14 +18,20 @@ /turf/open/floor/plating/asteroid/sand/lit light_range = 2 light_power = 0.80 - light_color = LIGHT_COLOR_TUNGSTEN /turf/open/floor/plating/asteroid/sand/dense icon_state = "light_sand" - planetary_atmos = TRUE base_icon_state = "light_sand" /turf/open/floor/plating/asteroid/sand/dense/lit light_range = 2 light_power = 0.80 - light_color = LIGHT_COLOR_TUNGSTEN + +/turf/open/floor/plating/grass/beach + baseturfs = /turf/open/floor/plating/asteroid/sand + light_color = COLOR_BEACHPLANET_LIGHT + planetary_atmos = TRUE + +/turf/open/floor/plating/grass/beach/lit + light_range = 2 + light_power = 0.80 diff --git a/code/game/turfs/open/floor/plating/icemoon.dm b/code/game/turfs/open/floor/plating/icemoon.dm index 0fd0d95faed3..12a1c340edfa 100644 --- a/code/game/turfs/open/floor/plating/icemoon.dm +++ b/code/game/turfs/open/floor/plating/icemoon.dm @@ -17,6 +17,7 @@ bullet_sizzle = TRUE bullet_bounce_sound = null digResult = /obj/item/stack/sheet/mineral/snow + light_color = COLOR_ICEPLANET_LIGHT // footprint vars var/entered_dirs var/exited_dirs @@ -87,19 +88,17 @@ . = ..() ScrapeAway() +/turf/open/floor/plating/asteroid/snow/icemoon + baseturfs = /turf/open/openspace/icemoon + initial_gas_mix = ICEMOON_DEFAULT_ATMOS + + slowdown = 0 + /turf/open/floor/plating/asteroid/snow/lit light_range = 2 light_power = 1 baseturfs = /turf/open/floor/plating/asteroid/icerock/lit -/turf/open/floor/plating/asteroid/snow/lit/whitesands - baseturfs = /turf/open/floor/plating/asteroid/whitesands/lit - initial_gas_mix = WHITESANDS_ATMOS - -/turf/open/floor/plating/asteroid/snow/lit/rockplanet - baseturfs = /turf/open/floor/plating/asteroid/rockplanet/lit - initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS - /turf/open/floor/plating/asteroid/snow/airless initial_gas_mix = AIRLESS_ATMOS @@ -142,6 +141,7 @@ floor_variance = 100 max_icon_states = 7 dug = TRUE + light_color = COLOR_ICEPLANET_LIGHT /turf/open/floor/plating/asteroid/icerock/lit light_range = 2 @@ -183,21 +183,17 @@ floor_variance = 100 max_icon_states = 7 dug = TRUE + light_color = COLOR_ICEPLANET_LIGHT /turf/open/floor/plating/asteroid/iceberg/lit light_range = 2 light_power = 1 - -/turf/open/floor/plating/asteroid/snow/icemoon - baseturfs = /turf/open/openspace/icemoon - initial_gas_mix = ICEMOON_DEFAULT_ATMOS - slowdown = 0 - /turf/open/lava/plasma/ice_moon initial_gas_mix = ICEMOON_DEFAULT_ATMOS baseturfs = /turf/open/lava/plasma/ice_moon planetary_atmos = TRUE + light_color = COLOR_ICEPLANET_LIGHT /turf/open/floor/plating/asteroid/snow/ice name = "icy snow" @@ -213,6 +209,8 @@ clawfootstep = FOOTSTEP_HARD_CLAW heavyfootstep = FOOTSTEP_GENERIC_HEAVY max_icon_states = 7 + light_color = COLOR_ICEPLANET_LIGHT + /turf/open/floor/plating/asteroid/snow/ice/icemoon baseturfs = /turf/open/floor/plating/asteroid/snow/ice/icemoon diff --git a/code/game/turfs/open/floor/plating/jungle.dm b/code/game/turfs/open/floor/plating/jungle.dm new file mode 100644 index 000000000000..79121704001c --- /dev/null +++ b/code/game/turfs/open/floor/plating/jungle.dm @@ -0,0 +1,57 @@ +/turf/open/floor/plating/dirt/jungle + slowdown = 0.5 + baseturfs = /turf/open/floor/plating/dirt/jungle + initial_gas_mix = OPENTURF_DEFAULT_ATMOS + light_color = COLOR_JUNGLEPLANET_LIGHT + +/turf/open/floor/plating/dirt/jungle/lit + baseturfs = /turf/open/floor/plating/dirt/jungle/lit + light_range = 2 + light_power = 1 + +/turf/open/floor/plating/dirt/jungle/dark + icon_state = "greenerdirt" + baseturfs = /turf/open/floor/plating/dirt/jungle/dark + +/turf/open/floor/plating/dirt/jungle/dark/lit + light_range = 2 + light_power = 1 + +/turf/open/floor/plating/dirt/jungle/wasteland //Like a more fun version of living in Arizona. + name = "cracked earth" + desc = "Looks a bit dry." + icon = 'icons/turf/floors.dmi' + icon_state = "wasteland" + slowdown = 1 + baseturfs = /turf/open/floor/plating/dirt/jungle/wasteland + var/floor_variance = 15 + +/turf/open/floor/plating/dirt/jungle/wasteland/lit + baseturfs = /turf/open/floor/plating/dirt/jungle/wasteland/lit + light_range = 2 + light_power = 1 + +/turf/open/floor/plating/dirt/jungle/wasteland/Initialize(mapload, inherited_virtual_z) + .=..() + if(prob(floor_variance)) + icon_state = "[initial(icon_state)][rand(0,12)]" + +/turf/open/floor/plating/grass/jungle + name = "jungle grass" + planetary_atmos = TRUE + desc = "Greener on the other side." + icon_state = "junglegrass" + base_icon_state = "junglegrass" + smooth_icon = 'icons/turf/floors/junglegrass.dmi' + baseturfs = /turf/open/floor/plating/grass/jungle + light_color = COLOR_JUNGLEPLANET_LIGHT + +/turf/open/floor/plating/grass/jungle/lit + baseturfs = /turf/open/floor/plating/dirt/jungle/lit + light_range = 2 + light_power = 1 + +/turf/open/water/jungle/lit + light_range = 2 + light_power = 0.8 + light_color = LIGHT_COLOR_BLUEGREEN diff --git a/code/game/turfs/open/floor/plating/lavaland.dm b/code/game/turfs/open/floor/plating/lavaland.dm index 84e0173819b7..b15f76eabcc2 100644 --- a/code/game/turfs/open/floor/plating/lavaland.dm +++ b/code/game/turfs/open/floor/plating/lavaland.dm @@ -1,3 +1,5 @@ +///baseturf + /turf/open/floor/plating/asteroid/basalt name = "volcanic floor" baseturfs = /turf/open/floor/plating/asteroid/basalt @@ -7,11 +9,11 @@ base_icon_state = "basalt" floor_variance = 15 digResult = /obj/item/stack/ore/glass/basalt + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/plating/asteroid/basalt/lava_land_surface/lit light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE /turf/open/floor/plating/asteroid/basalt/lava //lava underneath baseturfs = /turf/open/lava/smooth @@ -26,11 +28,9 @@ /proc/set_basalt_light(turf/open/floor/B) switch(B.icon_state) if("basalt1", "basalt2", "basalt3") - B.set_light(2, 0.6, LIGHT_COLOR_LAVA) //more light + B.set_light(2, 0.6, COLOR_LAVAPLANET_LIGHT) //more light if("basalt5", "basalt9") - B.set_light(1.4, 0.6, LIGHT_COLOR_LAVA) //barely anything! - -///////Surface. The surface is warm, but survivable without a suit. Internals are required. The floors break to chasms, which drop you into the underground. + B.set_light(1.4, 0.6, COLOR_LAVAPLANET_LIGHT) //barely anything! /turf/open/floor/plating/asteroid/basalt/lava_land_surface initial_gas_mix = LAVALAND_DEFAULT_ATMOS @@ -47,7 +47,8 @@ /turf/open/floor/plating/asteroid/basalt/purple/lit light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + +///Sand /turf/open/floor/plating/asteroid/purple name = "ashen sand" @@ -57,11 +58,13 @@ turf_type = /turf/open/floor/plating/asteroid/basalt/purple initial_gas_mix = LAVALAND_DEFAULT_ATMOS planetary_atmos = TRUE + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/plating/asteroid/purple/lit light_range = 2 light_power = 0.3 - light_color = LIGHT_COLOR_FIRE + +///Grass /turf/open/floor/plating/grass/lava name = "ungodly grass" @@ -75,7 +78,7 @@ smooth_icon = 'icons/turf/floors/lava_grass_red.dmi' light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT gender = PLURAL /turf/open/floor/plating/grass/lava/orange @@ -88,44 +91,68 @@ icon = 'icons/turf/floors/lava_grass_purple.dmi' smooth_icon = 'icons/turf/floors/lava_grass_purple.dmi' +///The Moss +/turf/open/floor/plating/moss + name = "mossy carpet" + desc = "When the forests burned away and the sky grew dark, the moss learned to feed on the falling ash." + baseturfs = /turf/open/floor/plating/ashplanet //explosions and damage can destroy the moss + initial_gas_mix = LAVALAND_DEFAULT_ATMOS + planetary_atmos = TRUE + icon_state = "moss" + icon = 'icons/turf/lava_moss.dmi' + base_icon_state = "moss" + bullet_bounce_sound = null + footstep = FOOTSTEP_GRASS + barefootstep = FOOTSTEP_GRASS + clawfootstep = FOOTSTEP_GRASS + heavyfootstep = FOOTSTEP_GENERIC_HEAVY + layer = HIGH_TURF_LAYER + gender = PLURAL + light_power = 1 + light_range = 2 + pixel_x = -9 + pixel_y = -9 + +///Ruin Turfs (to-do, move all ruin turfs into their own bespoke files) + /turf/open/floor/concrete/pavement/lava initial_gas_mix = LAVALAND_DEFAULT_ATMOS light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/concrete/lava initial_gas_mix = LAVALAND_DEFAULT_ATMOS light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/concrete/slab_1/lava initial_gas_mix = LAVALAND_DEFAULT_ATMOS light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/plating/lava initial_gas_mix = LAVALAND_DEFAULT_ATMOS light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/plating/rust/lava initial_gas_mix = LAVALAND_DEFAULT_ATMOS light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/plasteel/white/lava initial_gas_mix = LAVALAND_DEFAULT_ATMOS light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT /turf/open/floor/plasteel/dark/lava initial_gas_mix = LAVALAND_DEFAULT_ATMOS light_range = 2 light_power = 0.6 - light_color = LIGHT_COLOR_FIRE + light_color = COLOR_LAVAPLANET_LIGHT diff --git a/code/game/turfs/open/floor/plating/misc_plating.dm b/code/game/turfs/open/floor/plating/misc_plating.dm index 84a49d1a0038..684420c8eb89 100644 --- a/code/game/turfs/open/floor/plating/misc_plating.dm +++ b/code/game/turfs/open/floor/plating/misc_plating.dm @@ -116,61 +116,6 @@ icon_state = "[icon_state][rand(1, 9)]" . = ..() - -/turf/open/floor/plating/beach - name = "beach" - icon = 'icons/misc/beach.dmi' - flags_1 = NONE - attachment_holes = FALSE - bullet_bounce_sound = null - footstep = FOOTSTEP_SAND - barefootstep = FOOTSTEP_SAND - clawfootstep = FOOTSTEP_SAND - heavyfootstep = FOOTSTEP_GENERIC_HEAVY - -/turf/open/floor/plating/beach/try_replace_tile(obj/item/stack/tile/T, mob/user, params) - return - -/turf/open/floor/plating/beach/ex_act(severity, target) - contents_explosion(severity, target) - -/turf/open/floor/plating/beach/sand - gender = PLURAL - name = "sand" - desc = "Surf's up." - icon_state = "sand" - baseturfs = /turf/open/floor/plating/beach/sand - -/turf/open/floor/plating/beach/coastline_t - name = "coastline" - desc = "Tide's high tonight. Charge your batons." - icon_state = "sandwater_t" - baseturfs = /turf/open/floor/plating/beach/coastline_t - -/turf/open/floor/plating/beach/coastline_b //need to make this water subtype. - name = "coastline" - icon_state = "sandwater_b" - baseturfs = /turf/open/floor/plating/beach/coastline_b - footstep = FOOTSTEP_LAVA - barefootstep = FOOTSTEP_LAVA - clawfootstep = FOOTSTEP_LAVA - heavyfootstep = FOOTSTEP_LAVA - -/turf/open/floor/plating/beach/water - gender = PLURAL - name = "water" - desc = "You get the feeling that nobody's bothered to actually make this water functional..." - icon_state = "water" - baseturfs = /turf/open/floor/plating/beach/water - footstep = FOOTSTEP_LAVA //placeholder, kinda. - barefootstep = FOOTSTEP_LAVA - clawfootstep = FOOTSTEP_LAVA - heavyfootstep = FOOTSTEP_LAVA - -/turf/open/floor/plating/beach/coastline_t/sandwater_inner - icon_state = "sandwater_inner" - baseturfs = /turf/open/floor/plating/beach/coastline_t/sandwater_inner - /turf/open/floor/plating/ironsand gender = PLURAL name = "iron sand" @@ -331,33 +276,3 @@ heavyfootstep = FOOTSTEP_GENERIC_HEAVY tiled_dirt = FALSE -/turf/open/floor/plating/grass/beach - baseturfs = /turf/open/floor/plating/beach/sand - planetary_atmos = TRUE - -/turf/open/floor/plating/grass/beach/lit - light_range = 2 - light_power = 0.80 - - - -/turf/open/floor/plating/moss - name = "mossy carpet" - desc = "When the forests burned away and the sky grew dark, the moss learned to feed on the falling ash." - baseturfs = /turf/open/floor/plating/ashplanet //explosions and damage can destroy the moss - initial_gas_mix = LAVALAND_DEFAULT_ATMOS - planetary_atmos = TRUE - icon_state = "moss" - icon = 'icons/turf/lava_moss.dmi' - base_icon_state = "moss" - bullet_bounce_sound = null - footstep = FOOTSTEP_GRASS - barefootstep = FOOTSTEP_GRASS - clawfootstep = FOOTSTEP_GRASS - heavyfootstep = FOOTSTEP_GENERIC_HEAVY - layer = HIGH_TURF_LAYER - gender = PLURAL - light_power = 1 - light_range = 2 - pixel_x = -9 - pixel_y = -9 diff --git a/code/game/turfs/open/floor/plating/planet.dm b/code/game/turfs/open/floor/plating/planet.dm index a86847ca8f78..f360ac611267 100644 --- a/code/game/turfs/open/floor/plating/planet.dm +++ b/code/game/turfs/open/floor/plating/planet.dm @@ -20,70 +20,11 @@ /turf/open/floor/plating/dirt/try_replace_tile(obj/item/stack/tile/T, mob/user, params) return -/turf/open/floor/plating/dirt/jungle - slowdown = 0.5 - baseturfs = /turf/open/floor/plating/dirt/jungle - initial_gas_mix = OPENTURF_DEFAULT_ATMOS - -/turf/open/floor/plating/dirt/jungle/lit - baseturfs = /turf/open/floor/plating/dirt/jungle/lit - light_range = 2 - light_power = 1 - light_color = COLOR_VERY_LIGHT_GRAY - -/turf/open/floor/plating/dirt/jungle/dark - icon_state = "greenerdirt" - baseturfs = /turf/open/floor/plating/dirt/jungle/dark - -/turf/open/floor/plating/dirt/jungle/dark/lit - light_range = 2 - light_power = 1 - -/turf/open/floor/plating/dirt/jungle/wasteland //Like a more fun version of living in Arizona. - name = "cracked earth" - desc = "Looks a bit dry." - icon = 'icons/turf/floors.dmi' - icon_state = "wasteland" - slowdown = 1 - baseturfs = /turf/open/floor/plating/dirt/jungle/wasteland - var/floor_variance = 15 - -/turf/open/floor/plating/dirt/jungle/wasteland/lit - baseturfs = /turf/open/floor/plating/dirt/jungle/wasteland/lit - light_range = 2 - light_power = 1 - - -/turf/open/floor/plating/dirt/jungle/wasteland/Initialize(mapload, inherited_virtual_z) - .=..() - if(prob(floor_variance)) - icon_state = "[initial(icon_state)][rand(0,12)]" - /turf/open/floor/plating/dirt/icemoon initial_gas_mix = ICEMOON_DEFAULT_ATMOS baseturfs = /turf/open/floor/plating/dirt/icemoon planetary_atmos = TRUE -/turf/open/floor/plating/grass/jungle - name = "jungle grass" - planetary_atmos = TRUE - desc = "Greener on the other side." - icon_state = "junglegrass" - base_icon_state = "junglegrass" - baseturfs = /turf/open/floor/plating/dirt/jungle - smooth_icon = 'icons/turf/floors/junglegrass.dmi' - baseturfs = /turf/open/floor/plating/grass/jungle - -/turf/open/floor/plating/grass/jungle/lit - baseturfs = /turf/open/floor/plating/dirt/jungle/lit - light_range = 2 - light_power = 1 - -/turf/open/water/jungle/lit - light_range = 2 - light_power = 0.8 - light_color = LIGHT_COLOR_BLUEGREEN - /turf/open/floor/plating/dirt/old icon_state = "oldsmoothdirt" @@ -98,8 +39,26 @@ light_power = 1 light_range = 2 - /turf/open/floor/plating/dirt/dry/lit light_power = 1 light_range = 2 + +//Artifical sand turfs +/turf/open/floor/plating/asteroid/sand/ship + name = "sand" + icon = 'icons/misc/beach.dmi' + icon_state = "sand" + base_icon_state = "sand" + baseturfs = /turf/open/floor/plating + initial_gas_mix = OPENTURF_DEFAULT_ATMOS + planetary_atmos = FALSE + digResult = null + +//artifical water turfs +/turf/open/water/ship + icon = 'icons/misc/beach.dmi' + icon_state = "water" + base_icon_state = "water" + initial_gas_mix = OPENTURF_DEFAULT_ATMOS + planetary_atmos = FALSE diff --git a/code/game/turfs/open/floor/plating/rockplanet.dm b/code/game/turfs/open/floor/plating/rockplanet.dm index b6324ebbb3d8..9bc21c8778c6 100644 --- a/code/game/turfs/open/floor/plating/rockplanet.dm +++ b/code/game/turfs/open/floor/plating/rockplanet.dm @@ -9,11 +9,11 @@ baseturfs = /turf/open/floor/plating/asteroid/rockplanet turf_type = /turf/open/floor/plating/asteroid/rockplanet digResult = /obj/item/stack/ore/glass/rockplanet + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/plating/asteroid/rockplanet/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY /turf/open/floor/plating/asteroid/rockplanet/cracked name = "iron cracked sand" @@ -25,7 +25,6 @@ /turf/open/floor/plating/asteroid/rockplanet/cracked/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY baseturfs = /turf/open/floor/plating/asteroid/rockplanet/lit turf_type = /turf/open/floor/plating/asteroid/rockplanet/lit @@ -45,83 +44,101 @@ /turf/open/floor/plating/asteroid/rockplanet/wet/cracked/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY + +//start crackhead subtyping (open reward of 1 erika token to anyone who untangles this somewhat) /turf/open/floor/plating/grass/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT name = "dry grass" desc = "A patch of dry grass." /turf/open/floor/plating/dirt/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT name = "mud" icon_state = "greenerdirt" /turf/open/water/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT name = "pond" /turf/open/floor/plating/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT name = "exterior plating" /turf/open/floor/plating/rockplanet/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY /turf/open/floor/plasteel/stairs/rockplanet - initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS name = "exterior stairs" + initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/engine/hull/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT + +//i hope whoever subtyped all the rockplanet tiles like this stubs their toe so hard. /turf/open/floor/plasteel/rockplanet - initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS name = "exterior floor" + initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/plasteel/patterned/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/plasteel/patterned/rockplanet/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY name = "exterior floor" /turf/open/floor/plasteel/patterned/brushed/rockplanet + name = "exterior floor" initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/plasteel/patterned/brushed/rockplanet/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY - name = "exterior floor" /turf/open/floor/plasteel/patterned/ridged/rockplanet + name = "exterior floor" initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/plasteel/patterned/ridged/rockplanet/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY - name = "exterior floor" /turf/open/floor/plating/rust/rockplanet + name = "exterior plating" initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/plating/rust/rockplanet/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY - name = "exterior plating" /turf/open/floor/wood/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/pod/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT /turf/open/floor/engine/hull/reinforced/rockplanet initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS + light_color = COLOR_ROCKPLANET_LIGHT + +///snow +/turf/open/floor/plating/asteroid/snow/lit/rockplanet + light_color = COLOR_ROCKPLANET_LIGHT + baseturfs = /turf/open/floor/plating/asteroid/rockplanet/lit + initial_gas_mix = ROCKPLANET_DEFAULT_ATMOS diff --git a/code/game/turfs/open/floor/plating/wasteplanet.dm b/code/game/turfs/open/floor/plating/wasteplanet.dm index d47a1fbfc6cb..6de774313697 100644 --- a/code/game/turfs/open/floor/plating/wasteplanet.dm +++ b/code/game/turfs/open/floor/plating/wasteplanet.dm @@ -1,3 +1,4 @@ +///base turf /turf/open/floor/plating/asteroid/wasteplanet name = "dry rock" @@ -9,20 +10,18 @@ planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/asteroid/wasteplanet digResult = /obj/item/stack/ore/glass/wasteplanet + light_color = COLOR_WASTEPLANET_LIGHT -/turf/open/water/tar/waste - baseturfs = /turf/open/floor/plating/asteroid/wasteplanet - planetary_atmos = TRUE - initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS +/turf/open/floor/plating/asteroid/wasteplanet/lit + light_range = 2 + light_power = 0.2 + +///plating turfs /turf/open/floor/plating/wasteplanet baseturfs = /turf/open/floor/plating/asteroid/wasteplanet initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS - -/turf/open/floor/plating/rust/wasteplanet - baseturfs = /turf/open/floor/plating/asteroid/wasteplanet - planetary_atmos = TRUE - initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/plating/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) return @@ -35,21 +34,20 @@ /turf/open/indestructible/hierophant/waste initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS planetary_atmos = TRUE - light_color = LIGHT_COLOR_FLARE + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/indestructible/hierophant/two/waste initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS planetary_atmos = TRUE - light_color = LIGHT_COLOR_FLARE + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/wood/waste initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS planetary_atmos = TRUE -///Cement Turfs - /turf/open/floor/concrete/wasteplanet initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + light_color = COLOR_WASTEPLANET_LIGHT planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/asteroid/wasteplanet @@ -69,6 +67,7 @@ /turf/open/floor/concrete/reinforced/wasteplanet initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + light_color = COLOR_WASTEPLANET_LIGHT planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/asteroid/wasteplanet @@ -77,6 +76,7 @@ /turf/open/floor/concrete/pavement/wasteplanet initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + light_color = COLOR_WASTEPLANET_LIGHT planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/asteroid/wasteplanet @@ -84,22 +84,84 @@ return /turf/open/floor/plasteel/wasteplanet + baseturfs = /turf/open/floor/plating/wasteplanet initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/plasteel/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) return /turf/open/floor/plasteel/dark/wasteplanet + baseturfs = /turf/open/floor/plating/wasteplanet initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/plasteel/dark/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) return -//cement + +/turf/open/floor/wood/waste + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + light_color = COLOR_WASTEPLANET_LIGHT + +/turf/open/indestructible/hierophant/waste + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + light_color = COLOR_WASTEPLANET_LIGHT + +/turf/open/indestructible/hierophant/two/waste + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + light_color = COLOR_WASTEPLANET_LIGHT + + + + +///liquids + +/turf/open/water/waste + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + light_color = COLOR_WASTEPLANET_LIGHT + +/turf/open/water/tar/waste + baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + planetary_atmos = TRUE + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + light_color = COLOR_WASTEPLANET_LIGHT + +/turf/open/water/tar/waste/lit + light_range = 2 + light_power = 0.2 + +///biological-ish turfs + +/turf/open/floor/plating/grass/wasteplanet + icon_state = "junglegrass" + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + light_color = COLOR_WASTEPLANET_LIGHT + +/turf/open/floor/plating/dirt/old/waste + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + light_color = COLOR_WASTEPLANET_LIGHT + +/turf/open/floor/plating/grass/wasteplanet/lit + light_range = 2 + light_power = 0.2 + +/turf/open/floor/plating/dirt/old/waste/lit + light_range = 2 + light_power = 0.2 + +///cement turfs /turf/open/floor/concrete/wasteplanet initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/concrete/wasteplanet/Initialize() . = ..() @@ -119,6 +181,7 @@ initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/concrete/reinforced/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) return @@ -127,90 +190,79 @@ initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/concrete/pavement/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) return + + +///Biological Turfs + +/turf/open/floor/plating/grass/wasteplanet + icon_state = "junglegrass" + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + light_color = COLOR_WASTEPLANET_LIGHT + +/turf/open/floor/plating/dirt/old/waste + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + light_color = COLOR_WASTEPLANET_LIGHT + + + + + + //open turfs then open lits. /turf/open/floor/plating/wasteplanet/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE /turf/open/floor/plating/wasteplanet/rust/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE /turf/open/floor/plating/asteroid/wasteplanet/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE /turf/open/water/tar/waste/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE /turf/open/floor/concrete/wasteplanet/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/concrete/reinforced/wasteplanet/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/concrete/pavement/wasteplanet/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE - -///Biological Turfs - -/turf/open/floor/plating/grass/wasteplanet - icon_state = "junglegrass" - initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS - planetary_atmos = TRUE - -/turf/open/floor/plating/dirt/old/waste - initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS - planetary_atmos = TRUE - baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/plating/dirt/old/waste/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/floor/plating/grass/wasteplanet/lit light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE + light_color = COLOR_WASTEPLANET_LIGHT /turf/open/water/waste/lit //do not drink light_range = 2 light_power = 0.2 - light_color = LIGHT_COLOR_FLARE - -//cement - -/turf/open/floor/concrete/wasteplanet/lit - light_range = 2 - light_power = 0.2 - light_color = LIGHT_COLOR_FLARE - -/turf/open/floor/concrete/reinforced/wasteplanet/lit - light_range = 2 - light_power = 0.2 - light_color = LIGHT_COLOR_FLARE - -/turf/open/floor/concrete/pavement/wasteplanet/lit - light_range = 2 - light_power = 0.2 - light_color = LIGHT_COLOR_FLARE + light_color = COLOR_WASTEPLANET_LIGHT //closed turfs are a thing /turf/closed/wall/r_wall/wasteplanet diff --git a/code/game/turfs/open/floor/plating/whitesands.dm b/code/game/turfs/open/floor/plating/whitesands.dm index 7809fc9e958b..2607d6f174c0 100644 --- a/code/game/turfs/open/floor/plating/whitesands.dm +++ b/code/game/turfs/open/floor/plating/whitesands.dm @@ -1,3 +1,5 @@ +///sand (but not like the other sand that's also called sand) + /turf/open/floor/plating/asteroid/whitesands name = "salted sand" baseturfs = /turf/open/floor/plating/asteroid/whitesands @@ -6,13 +8,13 @@ icon_plating = "sand" planetary_atmos = TRUE base_icon_state = WHITESANDS_SAND_ENV - initial_gas_mix = WHITESANDS_ATMOS //Fallback, and used to tell the AACs that this is the exterior + initial_gas_mix = WHITESANDS_ATMOS digResult = /obj/item/stack/ore/glass/whitesands + light_color = COLOR_SANDPLANET_LIGHT /turf/open/floor/plating/asteroid/whitesands/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY baseturfs = /turf/open/floor/plating/asteroid/whitesands/lit /turf/open/floor/plating/asteroid/whitesands/dried @@ -29,11 +31,9 @@ /turf/open/floor/plating/asteroid/whitesands/dried/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY baseturfs = /turf/open/floor/plating/asteroid/whitesands/dried/lit -/turf/open/floor/plating/grass/whitesands - initial_gas_mix = WHITESANDS_ATMOS +///basalt /turf/open/floor/plating/asteroid/basalt/whitesands initial_gas_mix = WHITESANDS_ATMOS @@ -42,11 +42,14 @@ icon_state = "whitesands_basalt0" icon_plating = "whitesands_basalt0" dug = TRUE + light_color = COLOR_SANDPLANET_LIGHT /turf/open/floor/plating/asteroid/basalt/whitesands/Initialize(mapload, inherited_virtual_z) . = ..() icon_state = "whitesands_basalt[rand(0,1)]" +///grass + /turf/open/floor/plating/asteroid/whitesands/grass name = "purple grass" desc = "The few known flora on Whitesands are in a purplish color." @@ -60,6 +63,7 @@ smoothing_flags = SMOOTH_BITMASK smoothing_groups = list(SMOOTH_GROUP_TURF_OPEN, SMOOTH_GROUP_FLOOR_GRASS) canSmoothWith = list(SMOOTH_GROUP_CLOSED_TURFS, SMOOTH_GROUP_FLOOR_GRASS) + light_color = COLOR_SANDPLANET_LIGHT /turf/open/floor/plating/asteroid/whitesands/grass/Initialize(mapload, inherited_virtual_z) . = ..() @@ -81,28 +85,49 @@ light_power = 1 light_range = 2 +///the singular snow tile: + +/turf/open/floor/plating/asteroid/snow/lit/whitesands + light_color = COLOR_SANDPLANET_LIGHT + baseturfs = /turf/open/floor/plating/asteroid/whitesands/lit + initial_gas_mix = WHITESANDS_ATMOS + /turf/open/floor/concrete/whitesands initial_gas_mix = WHITESANDS_ATMOS + light_color = COLOR_SANDPLANET_LIGHT + +/turf/open/floor/concrete/whitesands/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY /turf/open/floor/concrete/reinforced/whitesands initial_gas_mix = WHITESANDS_ATMOS + light_color = COLOR_SANDPLANET_LIGHT + +/turf/open/floor/concrete/reinforced/whitesands/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY /turf/open/floor/concrete/pavement/whitesands initial_gas_mix = WHITESANDS_ATMOS + light_color = COLOR_SANDPLANET_LIGHT + +/turf/open/floor/concrete/pavement/whitesands/lit light_range = 2 light_power = 0.6 - light_color = COLOR_VERY_LIGHT_GRAY /turf/open/floor/concrete/slab_1/whitesands initial_gas_mix = WHITESANDS_ATMOS - light_color = COLOR_VERY_LIGHT_GRAY + light_color = COLOR_SANDPLANET_LIGHT + +/turf/open/floor/concrete/slab_1/whitesands/lit + light_range = 2 + light_power = 0.6 /turf/open/floor/plating/whitesands initial_gas_mix = WHITESANDS_ATMOS - light_color = COLOR_VERY_LIGHT_GRAY + light_color = COLOR_SANDPLANET_LIGHT + +/turf/open/floor/plating/whitesands/lit + light_range = 2 + light_power = 0.6 diff --git a/code/modules/antagonists/traitor/syndicate_contract.dm b/code/modules/antagonists/traitor/syndicate_contract.dm index d6bbba359303..f90d0fb72185 100644 --- a/code/modules/antagonists/traitor/syndicate_contract.dm +++ b/code/modules/antagonists/traitor/syndicate_contract.dm @@ -149,7 +149,7 @@ C = H.get_bankcard() if(C && C.registered_account) - C.registered_account.adjust_money(ransom * 0.35, "syndicate_contract") + C.registered_account.adjust_money(ransom * 0.35, CREDIT_LOG_SYNDICATE_CONTRACT) C.registered_account.bank_card_talk("We've processed the ransom, agent. Here's your cut - your balance is now \ [C.registered_account.account_balance] cr.", TRUE) diff --git a/code/modules/atmospherics/auxgm/breathing_classes.dm b/code/modules/atmospherics/auxgm/breathing_classes.dm index cfc82adbffa1..10f76d19d528 100644 --- a/code/modules/atmospherics/auxgm/breathing_classes.dm +++ b/code/modules/atmospherics/auxgm/breathing_classes.dm @@ -23,8 +23,9 @@ /datum/breathing_class/oxygen gases = list( GAS_O2 = 1, - GAS_PLUOXIUM = 8, + GAS_O3 = -0.7, GAS_CO2 = -0.7, // CO2 isn't actually toxic, just an asphyxiant + GAS_ARGON = -1, ) products = list( GAS_CO2 = 1, diff --git a/code/modules/atmospherics/auxgm/gas_types.dm b/code/modules/atmospherics/auxgm/gas_types.dm index 662b88046956..c42c3981214b 100644 --- a/code/modules/atmospherics/auxgm/gas_types.dm +++ b/code/modules/atmospherics/auxgm/gas_types.dm @@ -1,6 +1,6 @@ /datum/gas/oxygen id = GAS_O2 - specific_heat = 20 + specific_heat = 30 name = "Oxygen" oxidation_temperature = T0C - 100 // it checks max of this and fire temperature, so rarely will things spontaneously combust breath_alert_info = list( @@ -16,7 +16,7 @@ /datum/gas/nitrogen id = GAS_N2 - specific_heat = 20 + specific_heat = 30 name = "Nitrogen" breath_alert_info = list( not_enough_alert = list( @@ -29,6 +29,14 @@ ) ) +/datum/gas/carbon_monoxide + id = GAS_CO + specific_heat = 30 + name = "Carbon Monoxide" + breath_results = GAS_CO + + flags = GAS_FLAG_DANGEROUS + /datum/gas/carbon_dioxide //what the fuck is this? id = GAS_CO2 specific_heat = 30 @@ -64,29 +72,26 @@ alert_type = /atom/movable/screen/alert/too_much_tox ) ) - fire_burn_rate = OXYGEN_BURN_RATE_BASE // named when plasma fires were the only fires, surely + fire_burn_rate = PLASMA_BURN_RATE_BASE // named when plasma fires were the only fires, surely fire_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST fire_products = FIRE_PRODUCT_PLASMA enthalpy = FIRE_PLASMA_ENERGY_RELEASED // 3000000, 3 megajoules, 3000 kj + odor = GAS_ODOR_SMOG + odor_emotes = TRUE + odor_power = 10 //extremely toxic + /datum/gas/water_vapor id = GAS_H2O - specific_heat = 40 + specific_heat = 75 name = "Water Vapor" gas_overlay = "water_vapor" moles_visible = MOLES_GAS_VISIBLE flags = GAS_FLAG_DANGEROUS fusion_power = 8 - enthalpy = -241800 // FIRE_HYDROGEN_ENERGY_RELEASED is actually what this was supposed to be + enthalpy = -285800 // FIRE_HYDROGEN_ENERGY_RELEASED is actually what this was supposed to be breath_reagent = /datum/reagent/water -/datum/gas/hypernoblium - id = GAS_HYPERNOB - specific_heat = 2000 - name = "Hyper-noblium" - gas_overlay = "freon" - moles_visible = MOLES_GAS_VISIBLE - /datum/gas/nitrous_oxide id = GAS_NITROUS specific_heat = 40 @@ -99,18 +104,6 @@ oxidation_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST + 100 enthalpy = 81600 -/datum/gas/nitryl - id = GAS_NITRYL - specific_heat = 20 - name = "Nitryl" - color = "#963" - moles_visible = MOLES_GAS_VISIBLE - flags = GAS_FLAG_DANGEROUS - fusion_power = 15 - fire_products = list(GAS_N2 = 0.5) - enthalpy = 33200 - oxidation_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 50 - /datum/gas/tritium id = GAS_TRITIUM specific_heat = 10 @@ -125,7 +118,7 @@ fire_radiation_released = 50 // arbitrary number, basically 60 moles of trit burning will just barely start to harm you fire_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 50 -/datum/gas/bz +/datum/gas/bz //remove from atmospheres // https://en.wikipedia.org/wiki/3-Quinuclidinyl_benzilate not sure why we have this id = GAS_BZ specific_heat = 20 name = "BZ" @@ -133,20 +126,29 @@ fusion_power = 8 enthalpy = FIRE_CARBON_ENERGY_RELEASED // it is a mystery -/datum/gas/stimulum - id = GAS_STIMULUM - specific_heat = 5 - name = "Stimulum" - fusion_power = 7 - -/datum/gas/pluoxium - id = GAS_PLUOXIUM - specific_heat = 80 - name = "Pluoxium" - fusion_power = 10 - oxidation_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST * 1000 // it is VERY stable - oxidation_rate = 8 // when it can oxidize, it can oxidize a LOT - enthalpy = -50000 // but it reduces the heat output a bit +/datum/gas/ozone + id = GAS_O3 + specific_heat = 30 + name = "Ozone" + gas_overlay = "water_vapor" + moles_visible = MOLES_GAS_VISIBLE + color = "#a1a1e6" + oxidation_temperature = T0C - 100 // it checks max of this and fire temperature, so rarely will things spontaneously combust + oxidation_rate = 3 + enthalpy = 142000 + + odor = GAS_ODOR_CHEMICAL + odor_emotes = TRUE + odor_power = 1 + + +/datum/gas/argon + id = GAS_ARGON + specific_heat = 20 + name = "Argon" + gas_overlay = "water_vapor" + oxidation_rate = -1 + //moles_visible = MOLES_GAS_VISIBLE /datum/gas/freon id = GAS_FREON @@ -161,7 +163,7 @@ specific_heat = 10 name = "Hydrogen" flags = GAS_FLAG_DANGEROUS - moles_visible = MOLES_GAS_VISIBLE + //moles_visible = MOLES_GAS_VISIBLE color = "#ffe" fusion_power = 0 fire_products = list(GAS_H2O = 1) @@ -171,10 +173,12 @@ /datum/gas/chlorine id = GAS_CHLORINE - specific_heat = 20 + specific_heat = 30 name = "Chlorine" flags = GAS_FLAG_DANGEROUS moles_visible = MOLES_GAS_VISIBLE * 5 + oxidation_temperature = T0C - 100 + oxidation_rate = 0.5 gas_overlay = "nitrous_oxide" color = "#FFFB89" fusion_power = 0 @@ -192,3 +196,48 @@ enthalpy = 63000 fire_burn_rate = 1 fire_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST + +/datum/gas/sulfur_dioxide + id = GAS_SO2 + specific_heat = 22 + name = "Sulfur Dioxide" + flags = GAS_FLAG_DANGEROUS + moles_visible = MOLES_GAS_VISIBLE * 40 + gas_overlay = "generic" + color = "#d4cb28" + enthalpy = -296800 + + odor = GAS_ODOR_SULFUR + odor_emotes = TRUE + odor_power = 1 + +/datum/gas/methane + id = GAS_METHANE + specific_heat = 35 + name = "Methane" + flags = GAS_FLAG_DANGEROUS + //moles_visible = MOLES_GAS_VISIBLE + color = "#ffe" + fusion_power = 0 + fire_products = list(GAS_H2O = 0.5, GAS_HYDROGEN = 1) + enthalpy = -74600 + fire_burn_rate = 2 + fire_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST - 50 + +/datum/gas/ammonia + id = GAS_AMMONIA + + specific_heat = 100 //used as a coolant + name = "Ammonia" + flags = GAS_FLAG_DANGEROUS + moles_visible = MOLES_GAS_VISIBLE + color = "#ffe" + gas_overlay = "nitrous_oxide" + fusion_power = 0 + fire_products = list(GAS_N2 = 0.2, GAS_H2O = 0.8) + enthalpy = -46000 + fire_burn_rate = 0.2 + + odor = GAS_ODOR_CHEMICAL + odor_emotes = TRUE + odor_power = 3 diff --git a/code/modules/atmospherics/gasmixtures/auxgm.dm b/code/modules/atmospherics/gasmixtures/auxgm.dm index e774d1060ec3..e2f873c9dfd0 100644 --- a/code/modules/atmospherics/gasmixtures/auxgm.dm +++ b/code/modules/atmospherics/gasmixtures/auxgm.dm @@ -1,5 +1,5 @@ GLOBAL_LIST_INIT(hardcoded_gases, list(GAS_O2, GAS_N2, GAS_CO2, GAS_PLASMA)) //the main four gases, which were at one time hardcoded -GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(GAS_O2, GAS_N2, GAS_CO2, GAS_PLUOXIUM, GAS_STIMULUM, GAS_NITRYL, GAS_CHLORINE, GAS_HYDROGEN_CHLORIDE))) //unable to react amongst themselves +GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(GAS_O2, GAS_N2, GAS_CO2, GAS_CHLORINE, GAS_HYDROGEN_CHLORIDE))) //unable to react amongst themselves // Auxgm // It's a send-up of XGM, like what baystation got. @@ -38,25 +38,48 @@ GLOBAL_LIST_INIT(nonreactive_gases, typecacheof(list(GAS_O2, GAS_N2, GAS_CO2, GA /datum/gas var/id = "" + /// heat capacity? thats the only explanation on what this var is var/specific_heat = 0 var/name = "" - var/gas_overlay = "generic" //icon_state in icons/effects/atmospherics.dmi - var/color = "#ffff" // Tints the overlay by this color. Use instead of gas_overlay, usually (but not necessarily). + ///icon_state in icons/effects/atmospherics.dmi + var/gas_overlay = "generic" + /// Tints the overlay by this color. Use instead of gas_overlay, usually (but not necessarily). + var/color = "#ffff" var/moles_visible = null - var/flags = NONE //currently used by canisters - var/group = null // groups for scrubber/filter listing - var/fusion_power = 0 // How much the gas destabilizes a fusion reaction - var/breath_results = GAS_CO2 // what breathing this breathes out - var/datum/reagent/breath_reagent = null // what breathing this adds to your reagents - var/datum/reagent/breath_reagent_dangerous = null // what breathing this adds to your reagents IF it's above a danger threshold - var/list/breath_alert_info = null // list for alerts that pop up when you have too much/not enough of something - var/oxidation_temperature = null // temperature above which this gas is an oxidizer; null for none - var/oxidation_rate = 1 // how many moles of this can oxidize how many moles of material - var/fire_temperature = null // temperature above which gas may catch fire; null for none - var/list/fire_products = null // what results when this gas is burned (oxidizer or fuel); null for none - var/enthalpy = 0 // Standard enthalpy of formation in joules, used for fires - var/fire_burn_rate = 1 // how many moles are burned per product released - var/fire_radiation_released = 0 // How much radiation is released when this gas burns + ///currently used by canisters + var/flags = NONE + /// groups for scrubber/filter listing + var/group = null + /// How much the gas destabilizes a fusion reaction + var/fusion_power = 0 + /// what breathing this breathes out + var/breath_results = GAS_CO2 + /// what breathing this adds to your reagents + var/datum/reagent/breath_reagent = null + /// what breathing this adds to your reagents IF it's above a danger threshold + var/datum/reagent/breath_reagent_dangerous = null + /// list for alerts that pop up when you have too much/not enough of something + var/list/breath_alert_info = null + /// temperature above which this gas is an oxidizer; null for none + var/oxidation_temperature = null + /// how much a single mole of this gas can oxidize another mole(s) of gas + var/oxidation_rate = 1 + /// temperature above which gas may catch fire; null for none + var/fire_temperature = null + /// what results when this gas is burned (oxidizer or fuel); null for none + var/list/fire_products = null + /// Standard enthalpy of formation in joules, used for fires + var/enthalpy = 0 + /// how many moles are burned per product released + var/fire_burn_rate = 1 + /// How much radiation is released when this gas burns + var/fire_radiation_released = 0 + ///a list of odor texts this gas gives, if null or odor_power is 0 this gas is smellless + var/list/odor + ///if the odor gives negative signs such as coughing on a high concentratation. if your gas doesn't have a noticeable scent, set this to false + var/odor_emotes = TRUE + ///the multiplier per of this gas's odor, if higher its easily detected in lower conentrations and much more unbearable at lower conentrations as well + var/odor_power = 0 /datum/gas/proc/breath(partial_pressure, light_threshold, heavy_threshold, moles, mob/living/carbon/C, obj/item/organ/lungs/lungs) // This is only called on gases with the GAS_FLAG_BREATH_PROC flag. When possible, do NOT use this-- diff --git a/code/modules/atmospherics/gasmixtures/reactions.dm b/code/modules/atmospherics/gasmixtures/reactions.dm index b824c1d78d61..10c4e9e417d0 100644 --- a/code/modules/atmospherics/gasmixtures/reactions.dm +++ b/code/modules/atmospherics/gasmixtures/reactions.dm @@ -45,15 +45,15 @@ /datum/gas_reaction/proc/test() return list("success" = TRUE) -/datum/gas_reaction/nobliumsupression +/datum/gas_reaction/argon priority = INFINITY - name = "Hyper-Noblium Reaction Suppression" + name = "Noble Gas Reaction Suppression" id = "nobstop" -/datum/gas_reaction/nobliumsupression/init_reqs() - min_requirements = list(GAS_HYPERNOB = REACTION_OPPRESSION_THRESHOLD) +/datum/gas_reaction/argon/init_reqs() + min_requirements = list(GAS_ARGON = REACTION_OPPRESSION_THRESHOLD) -/datum/gas_reaction/nobliumsupression/react() +/datum/gas_reaction/argon/react() return STOP_REACTIONS //water vapor: puts out fires? @@ -223,7 +223,7 @@ else temperature_scale = (temperature-PLASMA_MINIMUM_BURN_TEMPERATURE)/(PLASMA_UPPER_TEMPERATURE-PLASMA_MINIMUM_BURN_TEMPERATURE) if(temperature_scale > 0) - oxygen_burn_rate = OXYGEN_BURN_RATE_BASE - temperature_scale + oxygen_burn_rate = PLASMA_BURN_RATE_BASE - temperature_scale if(air.get_moles(GAS_O2) / air.get_moles(GAS_PLASMA) > SUPER_SATURATION_THRESHOLD) //supersaturation. Form Tritium. super_saturation = TRUE if(air.get_moles(GAS_O2) > air.get_moles(GAS_PLASMA)*PLASMA_OXYGEN_FULLBURN) @@ -312,7 +312,7 @@ else temperature_scale = (FREON_MAXIMUM_BURN_TEMPERATURE - temperature)/(FREON_MAXIMUM_BURN_TEMPERATURE - FREON_LOWER_TEMPERATURE) //calculate the scale based on the temperature if(temperature_scale >= 0) - oxygen_burn_rate = OXYGEN_BURN_RATE_BASE - temperature_scale + oxygen_burn_rate = PLASMA_BURN_RATE_BASE - temperature_scale if(air.get_moles(GAS_O2) > air.get_moles(GAS_FREON)*FREON_OXYGEN_FULLBURN) freon_burn_rate = (air.get_moles(GAS_FREON)*temperature_scale)/FREON_BURN_RATE_DELTA else @@ -521,33 +521,7 @@ air.set_temperature(clamp(thermal_energy/new_heat_capacity, TCMB, INFINITY)) //THIS SHOULD STAY OR FUSION WILL EAT YOUR FACE return REACTING -/datum/gas_reaction/fusion/test() - var/datum/gas_mixture/G = new - G.set_moles(GAS_CO2,300) - G.set_moles(GAS_PLASMA,1000) - G.set_moles(GAS_TRITIUM,100.61) - G.set_moles(GAS_NITRYL,1) - G.set_temperature(15000) - G.set_volume(1000) - - var/result = G.react() - if(result != REACTING) - return list("success" = FALSE, "message" = "Reaction didn't go at all!") - - var/instability = G.analyzer_results["fusion"] - var/plas = G.get_moles(GAS_PLASMA) - var/co2 = G.get_moles(GAS_CO2) - var/temp = G.return_temperature() - - if(abs(instability - 2.66) > 0.01) - return list("success" = FALSE, "message" = "Fusion is not calculating analyzer results correctly, should be 2.66, is instead [instability]") - if(abs(plas - 458.241) > 0.5) - return list("success" = FALSE, "message" = "Fusion is not calculating plasma correctly, should be 458.241, is instead [plas]") - if(abs(co2 - 505.369) > 0.5) - return list("success" = FALSE, "message" = "Fusion is not calculating co2 correctly, should be 505.369, is instead [co2]") - if(abs(temp - 112291) > 200) // I'm not calculating this at all just putting in the values I get when I do it now - return list("success" = FALSE, "message" = "Fusion is not calculating temperature correctly, should be around 112291, is instead [temp]") - return ..() +//has fusion ever worked? /datum/gas_reaction/nitrousformation //formationn of n2o, esothermic, requires bz as catalyst priority = 3 @@ -581,51 +555,6 @@ air.set_temperature(max(((temperature * old_heat_capacity + energy_used) / new_heat_capacity),TCMB)) //the air heats up when reacting return REACTING -/datum/gas_reaction/nitrylformation //The formation of nitryl. Endothermic. Requires N2O as a catalyst. - priority = 4 - name = "Nitryl formation" - id = "nitrylformation" - -/datum/gas_reaction/nitrylformation/init_reqs() - min_requirements = list( - GAS_O2 = 20, - GAS_N2 = 20, - GAS_NITROUS = 5, - "TEMP" = FIRE_MINIMUM_TEMPERATURE_TO_EXIST*25 - ) - -/datum/gas_reaction/nitrylformation/react(datum/gas_mixture/air) - var/temperature = air.return_temperature() - - var/old_heat_capacity = air.heat_capacity() - var/heat_efficency = min(temperature/(FIRE_MINIMUM_TEMPERATURE_TO_EXIST*100),air.get_moles(GAS_O2),air.get_moles(GAS_N2)) - var/energy_used = heat_efficency*NITRYL_FORMATION_ENERGY - if ((air.get_moles(GAS_O2) - heat_efficency < 0)|| (air.get_moles(GAS_N2) - heat_efficency < 0)) //Shouldn't produce gas from nothing. - return NO_REACTION - air.adjust_moles(GAS_O2, -heat_efficency) - air.adjust_moles(GAS_N2, -heat_efficency) - air.adjust_moles(GAS_NITRYL, heat_efficency*2) - - if(energy_used > 0) - var/new_heat_capacity = air.heat_capacity() - if(new_heat_capacity > MINIMUM_HEAT_CAPACITY) - air.set_temperature(max(((temperature*old_heat_capacity - energy_used)/new_heat_capacity),TCMB)) - return REACTING - -/datum/gas_reaction/nitrylformation/test() - var/datum/gas_mixture/G = new - G.set_moles(GAS_O2,30) - G.set_moles(GAS_N2,30) - G.set_moles(GAS_NITROUS,10) - G.set_volume(1000) - G.set_temperature(150000) - var/result = G.react() - if(result != REACTING) - return list("success" = FALSE, "message" = "Reaction didn't go at all!") - if(G.get_moles(GAS_NITRYL) < 0.8) - return list("success" = FALSE, "message" = "Nitryl isn't being generated correctly! Only [G.get_moles(GAS_BZ)] mols were produced, when there should be 0.8!") - return ..() - /datum/gas_reaction/bzformation //Formation of BZ by combining plasma and tritium at low pressures. Exothermic. priority = 5 name = "BZ Gas formation" @@ -702,130 +631,6 @@ air.set_temperature(max(((temperature*old_heat_capacity - energy_used)/new_heat_capacity),TCMB)) return REACTING -/datum/gas_reaction/stimformation //Stimulum formation follows a strange pattern of how effective it will be at a given temperature, having some multiple peaks and some large dropoffs. Exo and endo thermic. - priority = 7 - name = "Stimulum formation" - id = "stimformation" - -/datum/gas_reaction/stimformation/init_reqs() - min_requirements = list( - GAS_TRITIUM = 30, - GAS_PLASMA = 10, - GAS_BZ = 20, - GAS_NITRYL = 30, - "TEMP" = STIMULUM_HEAT_SCALE/2) - -/datum/gas_reaction/stimformation/react(datum/gas_mixture/air) - var/old_heat_capacity = air.heat_capacity() - var/heat_scale = min(air.return_temperature()/STIMULUM_HEAT_SCALE,air.get_moles(GAS_TRITIUM),air.get_moles(GAS_PLASMA),air.get_moles(GAS_NITRYL)) - var/stim_energy_change = heat_scale + STIMULUM_FIRST_RISE*(heat_scale**2) - STIMULUM_FIRST_DROP*(heat_scale**3) + STIMULUM_SECOND_RISE*(heat_scale**4) - STIMULUM_ABSOLUTE_DROP*(heat_scale**5) - - if ((air.get_moles(GAS_TRITIUM) - heat_scale < 0)|| (air.get_moles(GAS_PLASMA) - heat_scale < 0) || (air.get_moles(GAS_NITRYL) - heat_scale < 0)) //Shouldn't produce gas from nothing. - return NO_REACTION - air.adjust_moles(GAS_STIMULUM, heat_scale/10) - air.adjust_moles(GAS_TRITIUM, -heat_scale) - air.adjust_moles(GAS_PLASMA, -heat_scale) - air.adjust_moles(GAS_NITRYL, -heat_scale) - - if(stim_energy_change) - var/new_heat_capacity = air.heat_capacity() - if(new_heat_capacity > MINIMUM_HEAT_CAPACITY) - air.set_temperature(max(((air.return_temperature()*old_heat_capacity + stim_energy_change)/new_heat_capacity),TCMB)) - return REACTING - -/datum/gas_reaction/stimformation/test() - //above mentioned "strange pattern" is a basic quintic polynomial, it's fine, can calculate it manually - var/datum/gas_mixture/G = new - G.set_moles(GAS_BZ,30) - G.set_moles(GAS_PLASMA,1000) - G.set_moles(GAS_TRITIUM,1000) - G.set_moles(GAS_NITRYL,1000) - G.set_volume(1000) - G.set_temperature(12998000) // yeah, really - - var/result = G.react() - if(result != REACTING) - return list("success" = FALSE, "message" = "Reaction didn't go at all!") - if(!G.get_moles(GAS_STIMULUM)) - return list("success" = FALSE, "message" = "Stimulum isn't being generated!") - return ..() - -/datum/gas_reaction/nobliumformation //Hyper-Noblium formation is extrememly endothermic, but requires high temperatures to start. Due to its high mass, hyper-nobelium uses large amounts of nitrogen and tritium. BZ can be used as a catalyst to make it less endothermic. - priority = 8 - name = "Hyper-Noblium condensation" - id = "nobformation" - -/datum/gas_reaction/nobliumformation/init_reqs() - min_requirements = list( - GAS_N2 = 10, - GAS_TRITIUM = 5, - "ENER" = NOBLIUM_FORMATION_ENERGY) - -/datum/gas_reaction/nobliumformation/react(datum/gas_mixture/air) - . = REACTING - var/old_heat_capacity = air.heat_capacity() - var/nob_formed = min((air.get_moles(GAS_N2)+air.get_moles(GAS_TRITIUM))/100,air.get_moles(GAS_TRITIUM)/10,air.get_moles(GAS_N2)/20) - var/energy_taken = nob_formed*(NOBLIUM_FORMATION_ENERGY/(max(air.get_moles(GAS_BZ),1))) - if ((air.get_moles(GAS_TRITIUM) - 10*nob_formed < 0) || (air.get_moles(GAS_N2) - 20*nob_formed < 0)) - return NO_REACTION - air.adjust_moles(GAS_TRITIUM, -10*nob_formed) - air.adjust_moles(GAS_N2, -20*nob_formed) - air.adjust_moles(GAS_HYPERNOB,nob_formed) - - if (nob_formed) - var/new_heat_capacity = air.heat_capacity() - if(new_heat_capacity > MINIMUM_HEAT_CAPACITY) - air.set_temperature(max(((air.return_temperature()*old_heat_capacity - energy_taken)/new_heat_capacity),TCMB)) - -/datum/gas_reaction/nobliumformation/test() - var/datum/gas_mixture/G = new - G.set_moles(GAS_N2,100) - G.set_moles(GAS_TRITIUM,500) - G.set_volume(1000) - G.set_temperature(5000000) // yeah, really - var/result = G.react() - if(result != REACTING) - return list("success" = FALSE, "message" = "Reaction didn't go at all!") - return ..() - -/datum/gas_reaction/stim_ball - priority = 9 - name ="Stimulum Energy Ball" - id = "stimball" - -/datum/gas_reaction/stim_ball/init_reqs() - min_requirements = list( - GAS_PLUOXIUM = STIM_BALL_GAS_AMOUNT, - GAS_STIMULUM = STIM_BALL_GAS_AMOUNT, - GAS_NITRYL = MINIMUM_MOLE_COUNT, - GAS_PLASMA = MINIMUM_MOLE_COUNT, - "TEMP" = FIRE_MINIMUM_TEMPERATURE_TO_EXIST - ) - -/datum/gas_reaction/stim_ball/react(datum/gas_mixture/air, datum/holder) - var/turf/open/location - var/old_heat_capacity = air.heat_capacity() - if(istype(holder,/datum/pipeline)) //Find the tile the reaction is occuring on, or a random part of the network if it's a pipenet. - var/datum/pipeline/pipenet = holder - location = get_turf(pick(pipenet.members)) - else - location = get_turf(holder) - var/ball_shot_angle = 180*cos(air.get_moles(GAS_H2O)/air.get_moles(GAS_NITRYL))+180 - var/stim_used = min(STIM_BALL_GAS_AMOUNT/air.get_moles(GAS_PLASMA),air.get_moles(GAS_STIMULUM)) - var/pluox_used = min(STIM_BALL_GAS_AMOUNT/air.get_moles(GAS_PLASMA),air.get_moles(GAS_PLUOXIUM)) - var/energy_released = stim_used*STIMULUM_HEAT_SCALE//Stimulum has a lot of stored energy, and breaking it up releases some of it - location.fire_nuclear_particle(ball_shot_angle) - air.adjust_moles(GAS_CO2, 4*pluox_used) - air.adjust_moles(GAS_N2, 8*stim_used) - air.adjust_moles(GAS_PLUOXIUM, -pluox_used) - air.adjust_moles(GAS_STIMULUM, -stim_used) - air.adjust_moles(GAS_PLASMA, max(-air.get_moles(GAS_PLASMA)/2,-30)) - if(energy_released) - var/new_heat_capacity = air.heat_capacity() - if(new_heat_capacity > MINIMUM_HEAT_CAPACITY) - air.set_temperature(clamp((air.return_temperature()*old_heat_capacity + energy_released)/new_heat_capacity,TCMB,INFINITY)) - return REACTING - /datum/gas_reaction/hydrogen_chloride_formation priority = 11 name = "Hydrogen Chloride formation" diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index efa0d7b332c4..0e9c7b2888f7 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -107,9 +107,9 @@ var/datum/radio_frequency/radio_connection //anything outright hazardous (flammable, toxic, generally Weird) - var/list/filter_basic = list(GAS_CO2, GAS_PLASMA, GAS_NITROUS, GAS_BZ, GAS_TRITIUM, GAS_NITRYL, GAS_FREON, GAS_HYDROGEN, GAS_CHLORINE, GAS_HYDROGEN_CHLORIDE) + var/list/filter_basic = list(GAS_CO2, GAS_PLASMA, GAS_NITROUS, GAS_BZ, GAS_TRITIUM, GAS_FREON, GAS_HYDROGEN, GAS_CHLORINE, GAS_HYDROGEN_CHLORIDE, GAS_CO, GAS_AMMONIA, GAS_METHANE, GAS_SO2, GAS_O3) //anything that isn't o2 or n2. - var/list/filter_extra = list(GAS_CO2, GAS_PLASMA, GAS_NITROUS, GAS_BZ, GAS_TRITIUM, GAS_NITRYL, GAS_FREON, GAS_HYDROGEN, GAS_CHLORINE, GAS_HYDROGEN_CHLORIDE, GAS_H2O, GAS_HYPERNOB, GAS_STIMULUM, GAS_PLUOXIUM) + var/list/filter_extra = list(GAS_CO2, GAS_PLASMA, GAS_NITROUS, GAS_BZ, GAS_TRITIUM, GAS_FREON, GAS_HYDROGEN, GAS_CHLORINE, GAS_HYDROGEN_CHLORIDE, GAS_H2O, GAS_CO, GAS_ARGON, GAS_AMMONIA, GAS_METHANE, GAS_SO2, GAS_O3) var/list/TLV = list( // Breathable air. "pressure" = new/datum/tlv(HAZARD_LOW_PRESSURE, WARNING_LOW_PRESSURE, WARNING_HIGH_PRESSURE, HAZARD_HIGH_PRESSURE), // kPa. Values are min2, min1, max1, max2 @@ -120,16 +120,18 @@ GAS_PLASMA = new/datum/tlv/dangerous, GAS_NITROUS = new/datum/tlv/dangerous, GAS_BZ = new/datum/tlv/dangerous, - GAS_HYPERNOB = new/datum/tlv(-1, -1, 1000, 1000), // Hyper-Noblium is inert and nontoxic GAS_H2O = new/datum/tlv/dangerous, GAS_TRITIUM = new/datum/tlv/dangerous, - GAS_STIMULUM = new/datum/tlv/dangerous, - GAS_NITRYL = new/datum/tlv/dangerous, - GAS_PLUOXIUM = new/datum/tlv(-1, -1, 5, 6), // Unlike oxygen, pluoxium does not fuel plasma/tritium fires GAS_FREON = new/datum/tlv/dangerous, GAS_HYDROGEN = new/datum/tlv/dangerous, GAS_CHLORINE = new/datum/tlv/dangerous, - GAS_HYDROGEN_CHLORIDE = new/datum/tlv/dangerous + GAS_HYDROGEN_CHLORIDE = new/datum/tlv/dangerous, + GAS_CO = new/datum/tlv/dangerous, + GAS_ARGON = new/datum/tlv(-1, -1, 1000, 1000), //inert and nontoxic + GAS_AMMONIA = new/datum/tlv/dangerous, + GAS_METHANE = new/datum/tlv/dangerous, + GAS_SO2 = new/datum/tlv/dangerous, + GAS_O3 = new/datum/tlv/dangerous, ) /obj/machinery/airalarm/server // No checks here. @@ -142,16 +144,18 @@ GAS_PLASMA = new/datum/tlv/no_checks, GAS_NITROUS = new/datum/tlv/no_checks, GAS_BZ = new/datum/tlv/no_checks, - GAS_HYPERNOB = new/datum/tlv/no_checks, GAS_H2O = new/datum/tlv/no_checks, GAS_TRITIUM = new/datum/tlv/no_checks, - GAS_STIMULUM = new/datum/tlv/no_checks, - GAS_NITRYL = new/datum/tlv/no_checks, - GAS_PLUOXIUM = new/datum/tlv/no_checks, GAS_FREON = new/datum/tlv/no_checks, GAS_HYDROGEN = new/datum/tlv/no_checks, GAS_CHLORINE = new/datum/tlv/dangerous, - GAS_HYDROGEN_CHLORIDE = new/datum/tlv/dangerous + GAS_HYDROGEN_CHLORIDE = new/datum/tlv/dangerous, + GAS_CO = new/datum/tlv/dangerous, + GAS_ARGON = new/datum/tlv/no_checks, + GAS_AMMONIA = new/datum/tlv/no_checks, + GAS_METHANE = new/datum/tlv/no_checks, + GAS_SO2 = new/datum/tlv/no_checks, + GAS_O3 = new/datum/tlv/no_checks, ) heating_manage = FALSE @@ -165,16 +169,18 @@ GAS_PLASMA = new/datum/tlv/dangerous, GAS_NITROUS = new/datum/tlv/dangerous, GAS_BZ = new/datum/tlv/dangerous, - GAS_HYPERNOB = new/datum/tlv(-1, -1, 1000, 1000), // Hyper-Noblium is inert and nontoxic GAS_H2O = new/datum/tlv/dangerous, GAS_TRITIUM = new/datum/tlv/dangerous, - GAS_STIMULUM = new/datum/tlv/dangerous, - GAS_NITRYL = new/datum/tlv/dangerous, - GAS_PLUOXIUM = new/datum/tlv(-1, -1, 1000, 1000), // Unlike oxygen, pluoxium does not fuel plasma/tritium fires GAS_FREON = new/datum/tlv/dangerous, GAS_HYDROGEN = new/datum/tlv/dangerous, GAS_CHLORINE = new/datum/tlv/dangerous, - GAS_HYDROGEN_CHLORIDE = new/datum/tlv/dangerous + GAS_HYDROGEN_CHLORIDE = new/datum/tlv/dangerous, + GAS_CO = new/datum/tlv/dangerous, + GAS_ARGON = new/datum/tlv(-1, -1, 1000, 1000), //inert and nontoxic + GAS_AMMONIA = new/datum/tlv/dangerous, + GAS_METHANE = new/datum/tlv/dangerous, + GAS_SO2 = new/datum/tlv/dangerous, + GAS_O3 = new/datum/tlv/dangerous, ) heating_manage = FALSE diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index dc8b278959f6..55e397652e48 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -20,7 +20,7 @@ var/id_tag = null var/scrubbing = SCRUBBING //0 = siphoning, 1 = scrubbing - var/filter_types = list(GAS_CO2, GAS_BZ) + var/filter_types = list(GAS_CO2, GAS_BZ, GAS_CO) var/volume_rate = 200 var/widenet = 0 //is this scrubber acting on the 3x3 area around it. var/list/turf/adjacent_turfs = list() @@ -310,10 +310,10 @@ icon_state = "scrub_map_on-4" /obj/machinery/atmospherics/components/unary/vent_scrubber/on/lavaland - filter_types = list(GAS_CO2, GAS_PLASMA, GAS_H2O, GAS_BZ) + filter_types = list(GAS_CO2, GAS_PLASMA, GAS_H2O, GAS_BZ, GAS_CO) /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3/lavaland - filter_types = list(GAS_CO2, GAS_PLASMA, GAS_H2O, GAS_BZ) + filter_types = list(GAS_CO2, GAS_PLASMA, GAS_H2O, GAS_BZ, GAS_CO) #undef SIPHONING #undef SCRUBBING diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm index cb6a1b9b0bb0..b8f023185217 100644 --- a/code/modules/atmospherics/machinery/portable/canister.dm +++ b/code/modules/atmospherics/machinery/portable/canister.dm @@ -43,14 +43,10 @@ "co2" = /obj/machinery/portable_atmospherics/canister/carbon_dioxide, "plasma" = /obj/machinery/portable_atmospherics/canister/toxins, "n2o" = /obj/machinery/portable_atmospherics/canister/nitrous_oxide, - "no2" = /obj/machinery/portable_atmospherics/canister/nitryl, "bz" = /obj/machinery/portable_atmospherics/canister/bz, "air" = /obj/machinery/portable_atmospherics/canister/air, "water vapor" = /obj/machinery/portable_atmospherics/canister/water_vapor, "tritium" = /obj/machinery/portable_atmospherics/canister/tritium, - "hyper-noblium" = /obj/machinery/portable_atmospherics/canister/nob, - "stimulum" = /obj/machinery/portable_atmospherics/canister/stimulum, - "pluoxium" = /obj/machinery/portable_atmospherics/canister/pluoxium, "caution" = /obj/machinery/portable_atmospherics/canister, "freon" = /obj/machinery/portable_atmospherics/canister/freon, "hydrogen" = /obj/machinery/portable_atmospherics/canister/hydrogen, @@ -78,12 +74,24 @@ icon_state = "blue" gas_type = GAS_O2 +/obj/machinery/portable_atmospherics/canister/ozone + name = "ozone canister" + desc = "Ozone. Sometimes called as 'pure air', this is far from the truth; ozone is not good for your lungs nor heart." + icon_state = "darkblue" + gas_type = GAS_O3 + /obj/machinery/portable_atmospherics/canister/carbon_dioxide name = "co2 canister" desc = "Carbon dioxide. What the fuck is carbon dioxide?" icon_state = "black" gas_type = GAS_CO2 +/obj/machinery/portable_atmospherics/canister/carbon_monoxide + name = "co canister" + desc = "Carbon Monoxide. Highly dangerous and invisible to the naked eye." + icon_state = "black" + gas_type = GAS_CO + /obj/machinery/portable_atmospherics/canister/toxins name = "plasma canister" desc = "Plasma gas. The reason YOU are here. Highly toxic." @@ -113,29 +121,11 @@ icon_state = "green" gas_type = GAS_TRITIUM -/obj/machinery/portable_atmospherics/canister/nob - name = "hyper-noblium canister" - desc = "Hyper-Noblium. More noble than all other gases." - icon_state = "nob" - gas_type = GAS_HYPERNOB - -/obj/machinery/portable_atmospherics/canister/nitryl - name = "nitryl canister" - desc = "Nitryl gas. Feels great 'til the acid eats your lungs." - icon_state = "brown" - gas_type = GAS_NITRYL - -/obj/machinery/portable_atmospherics/canister/stimulum - name = "stimulum canister" - desc = "Stimulum. High energy gas, high energy people." - icon_state = "darkpurple" - gas_type = GAS_STIMULUM - -/obj/machinery/portable_atmospherics/canister/pluoxium - name = "pluoxium canister" - desc = "Pluoxium. Like oxygen, but more bang for your buck." - icon_state = "darkblue" - gas_type = GAS_PLUOXIUM +/obj/machinery/portable_atmospherics/canister/argon + name = "argon canister" + desc = "Argon. A noble gas that prevents other gases from reacting." + icon_state = "purple" + gas_type = GAS_ARGON /obj/machinery/portable_atmospherics/canister/water_vapor name = "water vapor canister" @@ -157,6 +147,24 @@ icon_state = "orangews" gas_type = GAS_HYDROGEN +/obj/machinery/portable_atmospherics/canister/methane + name = "methane canister" + desc = "Methane. Used in thruster fuel along with kitchen stoves." + icon_state = "methane" + gas_type = GAS_METHANE + +/obj/machinery/portable_atmospherics/canister/ammonia + name = "ammonia canister" + desc = "Ammonia. Used in industrial processes." + icon_state = "brown" + gas_type = GAS_AMMONIA + +/obj/machinery/portable_atmospherics/canister/sulfur_dioxide + name = "sulfur dioxide canister" + desc = "Sulfur Dioxide. Produced naturally by volcanos." + icon_state = "sulfurdioxide" + gas_type = GAS_SO2 + /obj/machinery/portable_atmospherics/canister/fuel name = "fuel canister" desc = "A highly volatile mix of hydrogen and oxygen." @@ -194,7 +202,6 @@ air_contents.set_moles(GAS_CO2,300) air_contents.set_moles(GAS_PLASMA,1000) air_contents.set_moles(GAS_TRITIUM,100.61) - air_contents.set_moles(GAS_NITRYL,1) air_contents.set_temperature(15000) /obj/machinery/portable_atmospherics/canister/proc/get_time_left() diff --git a/code/modules/atmospherics/machinery/portable/scrubber.dm b/code/modules/atmospherics/machinery/portable/scrubber.dm index 7505d2b8789e..1f1f34782aca 100644 --- a/code/modules/atmospherics/machinery/portable/scrubber.dm +++ b/code/modules/atmospherics/machinery/portable/scrubber.dm @@ -8,7 +8,7 @@ var/volume_rate = 1000 var/overpressure_m = 80 var/use_overlays = TRUE - var/list/scrubbing = list(GAS_PLASMA, GAS_CO2, GAS_NITROUS, GAS_BZ, GAS_NITRYL, GAS_TRITIUM, GAS_HYPERNOB, GAS_H2O, GAS_FREON, GAS_HYDROGEN) + var/list/scrubbing = list(GAS_PLASMA, GAS_CO2, GAS_NITROUS, GAS_BZ, GAS_TRITIUM, GAS_H2O, GAS_FREON, GAS_HYDROGEN, GAS_CO) /obj/machinery/portable_atmospherics/scrubber/Destroy() var/turf/T = get_turf(src) diff --git a/code/modules/awaymissions/mission_code/Academy.dm b/code/modules/awaymissions/mission_code/Academy.dm index 850d0e91ba09..bddf8561f588 100644 --- a/code/modules/awaymissions/mission_code/Academy.dm +++ b/code/modules/awaymissions/mission_code/Academy.dm @@ -1,66 +1,3 @@ - -//Academy Areas - -/area/awaymission/academy - name = "Academy Asteroids" - icon_state = "away" - -/area/awaymission/academy/headmaster - name = "Academy Fore Block" - icon_state = "away1" - -/area/awaymission/academy/classrooms - name = "Academy Classroom Block" - icon_state = "away2" - -/area/awaymission/academy/academyaft - name = "Academy Ship Aft Block" - icon_state = "away3" - -/area/awaymission/academy/academygate - name = "Academy Gateway" - icon_state = "away4" - -/area/awaymission/academy/academycellar - name = "Academy Cellar" - icon_state = "away4" - -/area/awaymission/academy/academyengine - name = "Academy Engine" - icon_state = "away4" - -//Academy Items - -/obj/item/paper/fluff/awaymissions/academy/console_maint - name = "Console Maintenance" - default_raw_text = "We're upgrading to the latest mainframes for our consoles, the shipment should be in before spring break is over!" - -/obj/item/paper/fluff/awaymissions/academy/class/automotive - name = "Automotive Repair 101" - -/obj/item/paper/fluff/awaymissions/academy/class/pyromancy - name = "Pyromancy 250" - -/obj/item/paper/fluff/awaymissions/academy/class/biology - name = "Biology Lab" - -/obj/item/paper/fluff/awaymissions/academy/grade/aplus - name = "Summoning Midterm Exam" - default_raw_text = "Grade: A+ Educator's Notes: Excellent form." - -/obj/item/paper/fluff/awaymissions/academy/grade/bminus - name = "Summoning Midterm Exam" - default_raw_text = "Grade: B- Educator's Notes: Keep applying yourself, you're showing improvement." - -/obj/item/paper/fluff/awaymissions/academy/grade/dminus - name = "Summoning Midterm Exam" - default_raw_text = "Grade: D- Educator's Notes: SEE ME AFTER CLASS." - -/obj/item/paper/fluff/awaymissions/academy/grade/failure - name = "Pyromancy Evaluation" - default_raw_text = "Current Grade: F. Educator's Notes: No improvement shown despite multiple private lessons. Suggest additional tutelage." - - /obj/singularity/academy dissipate = 0 move_self = 0 diff --git a/code/modules/awaymissions/mission_code/Cabin.dm b/code/modules/awaymissions/mission_code/Cabin.dm index bfbb8bbf52ea..2e289579be1a 100644 --- a/code/modules/awaymissions/mission_code/Cabin.dm +++ b/code/modules/awaymissions/mission_code/Cabin.dm @@ -1,40 +1,3 @@ - -/*Cabin areas*/ -/area/awaymission/cabin - name = "Cabin" - icon_state = "away2" - requires_power = TRUE - dynamic_lighting = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/cabin/snowforest - name = "Snow Forest" - icon_state = "away" - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - -/area/awaymission/cabin/snowforest/sovietsurface - name = "Snow Forest" - icon_state = "awaycontent29" - requires_power = FALSE - -/area/awaymission/cabin/lumbermill - name = "Lumbermill" - icon_state = "away3" - requires_power = FALSE - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - -/area/awaymission/cabin/caves/sovietcave - name = "Soviet Bunker" - icon_state = "awaycontent4" - -/area/awaymission/cabin/caves - name = "North Snowdin Caves" - icon_state = "awaycontent15" - dynamic_lighting = DYNAMIC_LIGHTING_FORCED - -/area/awaymission/cabin/caves/mountain - name = "North Snowdin Mountains" - icon_state = "awaycontent24" - /obj/structure/firepit name = "firepit" desc = "Warm and toasty." diff --git a/code/modules/awaymissions/mission_code/caves.dm b/code/modules/awaymissions/mission_code/caves.dm deleted file mode 100644 index abaaceefd604..000000000000 --- a/code/modules/awaymissions/mission_code/caves.dm +++ /dev/null @@ -1,61 +0,0 @@ -//Areas - -/area/awaymission/caves/BMP_asteroid - name = "\improper BMP Asteroid Level 1" - icon_state = "awaycontent1" - -/area/awaymission/caves/BMP_asteroid/level_two - name = "\improper BMP Asteroid Level 2" - icon_state = "awaycontent2" - -/area/awaymission/caves/BMP_asteroid/level_three - name = "\improper BMP Asteroid Level 3" - icon_state = "awaycontent3" - -/area/awaymission/caves/BMP_asteroid/level_four - name = "\improper BMP Asteroid Level 4" - icon_state = "awaycontent4" - -/area/awaymission/caves/research - name = "Research Outpost" - icon_state = "awaycontent5" - dynamic_lighting = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/caves/northblock //engineering, bridge (not really north but it doesnt really need its own APC) - -/area/awaymission/caves/listeningpost - name = "Listening Post" - icon_state = "awaycontent6" - requires_power = FALSE - -//caves papers - -/obj/item/paper/crumpled/awaymissions/caves/unsafe_area - default_raw_text = "
WARNING


Majority of this area is considered 'unsafe' past this point. Theres an outpost directly south of here where you can get your bearing and travel further down if needed. Traveling in groups is HIGHLY advised, the shit out there can be extremely deadly if you're alone.
" - -/obj/item/paper/fluff/awaymissions/caves/omega - name = "Subject Omega Notes" - default_raw_text = "
Testing Notes


Subject appears unresponsive to most interactions, refusing to move away from the corners or face any scientists. Subject appears to move between the two back corners every observation. A strange humming can be heard from inside the cell, appears to be originating from the subject itself, further testing is necessary to confirm or deny this.
" - -/obj/item/paper/fluff/awaymissions/caves/magma - default_raw_text = "
Mining is hell down here, you can feel the heat of the magma no matter how thick the suit is. Conditions are barely manageable as is, restless nights and horrid work conditions. The ore maybe rich down here, but we've already lost a few men to the faults shifting, god knows how much longer till it all just collapses down and consumes everyone with it.
" - -/obj/item/paper/fluff/awaymissions/caves/work_notice - name = "work notice" - default_raw_text = "
Survival Info For Miners


The caves are an unforgiving place, the only thing you'll have to traverse is the supplies in your locker and your own wit. Travel in packs when mining and try to shut down the monster dens before they overwhelm you. The job is dangerous but the haul is good, so remember this information and hopefully we'll all go home alive.
" - -/obj/item/paper/fluff/awaymissions/caves/shipment_notice - name = "shipment notice" - default_raw_text = "
We were supposed to get a shipment of these special laser rifles and a couple 'nades to help combat the wildlife down here, but it's been weeks since we last heard from the caravan carrying the shit down here. At this point we can only assume they fell victim to one of the monster nests or the dumbasses managed to trip into the lava. So much for that shipment, I guess.
" - -/obj/item/paper/fluff/awaymissions/caves/safety_notice - name = "safety notice" - default_raw_text = "
Some of the miners have gone to laying some mine traps among the lower levels of the mine to keep the monsters at bay. This probably isn't the smartest idea in a cavern like this but the boys seem to get a chuckle out of every distant blast they hear go off, so I guess it works
" - -/obj/item/paper/fluff/awaymissions/caves/shipment_receipt - name = "Shipment Receipt" - default_raw_text = "
CARAVAN SERVICES

Quality service since 2205


SHIPMENT CONTENTS:


4 scattershot rifles
6 grenades
1 laser rifle
1 blowup doll" - -/obj/item/paper/fluff/awaymissions/caves/mech_notice - name = "NOTICE!! paper" - default_raw_text = "
NOTICE!!


Although you may seem indestructible in an exosuit, remember, THIS SHIT ISN'T LAVA PROOF!! The boys have already had to deal with loosing the last two to salvage because the dumbass thought he could just wade through the lower lakes like it was nothing. The fact he even managed to get back without being fused with what was left of the exosuit is a miracle in itself. They're built to be resistant against extreme heat, not heat PROOF!


Robotics Team" diff --git a/code/modules/awaymissions/mission_code/centcomAway.dm b/code/modules/awaymissions/mission_code/centcomAway.dm index 60741701b4d8..8c55a870263b 100644 --- a/code/modules/awaymissions/mission_code/centcomAway.dm +++ b/code/modules/awaymissions/mission_code/centcomAway.dm @@ -1,39 +1,3 @@ -//centcomAway areas - -/area/awaymission/centcomAway - name = "XCC-P5831" - icon_state = "away" - requires_power = FALSE - -/area/awaymission/centcomAway/general - name = "XCC-P5831" - ambientsounds = list('sound/ambience/ambigen3.ogg') - -/area/awaymission/centcomAway/maint - name = "XCC-P5831 Maintenance" - icon_state = "away1" - ambientsounds = list('sound/ambience/ambisin1.ogg') - -/area/awaymission/centcomAway/thunderdome - name = "XCC-P5831 Thunderdome" - icon_state = "away2" - ambientsounds = list('sound/ambience/ambisin2.ogg') - -/area/awaymission/centcomAway/cafe - name = "XCC-P5831 Kitchen Arena" - icon_state = "away3" - ambientsounds = list('sound/ambience/ambisin3.ogg') - -/area/awaymission/centcomAway/courtroom - name = "XCC-P5831 Courtroom" - icon_state = "away4" - ambientsounds = list('sound/ambience/ambisin4.ogg') - -/area/awaymission/centcomAway/hangar - name = "XCC-P5831 Hangars" - icon_state = "away4" - ambientsounds = list('sound/ambience/ambigen5.ogg') - //centcomAway items /obj/item/paper/pamphlet/centcom/visitor_info @@ -47,17 +11,3 @@ serving as a supply and repair depot, as well as being host to its most important legal proceedings\ and the thrilling pay-per-view broadcasts of PLASTEEL CHEF and THUNDERDOME LIVE.
\ We hope you enjoy your stay!" - -/obj/item/paper/fluff/awaymissions/centcom/gateway_memo - name = "Memo to XCC-P5831 QM" - default_raw_text = "From: XCC-P5831 Management Office
\ - To: Rolf Ingram, XCC-P5831 Quartermaster
\ - Hey, Rolf, once you pack that gateway into the ferry hangar, make absolutely sure \ - to deactivate it! As you may know, SS13 has recently got its network up and running, \ - which means that until we get this gate shipped off to the next colonization staging \ - area, they'll be able to hop straight in here if its hooked up on our end.
\ - Obviously, that's something I'd very much rather avoid. Our forensics and medical \ - teams never did figure out what happened that last time... and I can't wrap my head \ - around it myself. Why would a shuttle full of evacuees all snap and beat each other \ - to death the moment they reached safety?
\ - - D. Cereza" diff --git a/code/modules/awaymissions/mission_code/challenge.dm b/code/modules/awaymissions/mission_code/challenge.dm index 6f8bb473b77a..9e8abe6356b6 100644 --- a/code/modules/awaymissions/mission_code/challenge.dm +++ b/code/modules/awaymissions/mission_code/challenge.dm @@ -1,20 +1,3 @@ -//Challenge Areas - -/area/awaymission/challenge/start - name = "Where Am I?" - icon_state = "away" - -/area/awaymission/challenge/main - name = "Danger Room" - icon_state = "away1" - requires_power = FALSE - -/area/awaymission/challenge/end - name = "Administration" - icon_state = "away2" - requires_power = FALSE - - /obj/machinery/power/emitter/energycannon name = "Energy Cannon" desc = "A heavy duty industrial laser." diff --git a/code/modules/awaymissions/mission_code/murderdome.dm b/code/modules/awaymissions/mission_code/murderdome.dm index 914a1f2828c7..10bb96c12baa 100644 --- a/code/modules/awaymissions/mission_code/murderdome.dm +++ b/code/modules/awaymissions/mission_code/murderdome.dm @@ -1,8 +1,3 @@ -/area/awaymission/vr/murderdome - name = "Murderdome" - icon_state = "awaycontent8" - pacifist = FALSE - /obj/structure/window/reinforced/fulltile/indestructable name = "robust window" flags_1 = PREVENT_CLICK_UNDER_1 | NODECONSTRUCT_1 diff --git a/code/modules/awaymissions/mission_code/research.dm b/code/modules/awaymissions/mission_code/research.dm deleted file mode 100644 index b3e4ff8b863b..000000000000 --- a/code/modules/awaymissions/mission_code/research.dm +++ /dev/null @@ -1,69 +0,0 @@ -//Research Base Areas//-- - -/area/awaymission/research - name = "Research Outpost" - icon_state = "away" - dynamic_lighting = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/research/interior - name = "Research Inside" - requires_power = TRUE - icon_state = "away2" - -/area/awaymission/research/interior/cryo - name = "Research Cryostasis Room" - icon_state = "medbay" - -/area/awaymission/research/interior/clonestorage - name = "Research Clone Storage" - icon_state = "cloning" - -/area/awaymission/research/interior/genetics - name = "Research Genetics Research" - icon_state = "genetics" - -/area/awaymission/research/interior/engineering - name = "Research Engineering" - icon_state = "engine" - -/area/awaymission/research/interior/security - name = "Research Security" - icon_state = "security" - -/area/awaymission/research/interior/secure - name = "Research Secure Vault" - -/area/awaymission/research/interior/maint - name = "Research Maintenance" - icon_state = "maintcentral" - -/area/awaymission/research/interior/dorm - name = "Research Dorms" - icon_state = "Sleep" - -/area/awaymission/research/interior/escapepods - name = "Research Escape Wing" - icon_state = "exit" - -/area/awaymission/research/interior/gateway - name = "Research Gateway" - icon_state = "start" - -/area/awaymission/research/interior/bathroom - name = "Research Bathrooms" - icon_state = "restrooms" - -/area/awaymission/research/interior/medbay - name = "Research Medbay" - icon_state = "medbay" - -/area/awaymission/research/exterior - name = "Research Exterior" - icon_state = "unknown" - - -//research papers - -/obj/item/paper/crumpled/awaymissions/research/sensitive_info - default_raw_text = "Theres a lot of sensitive info on these disks, try and keep them secure! If these backup copies get into the wrong hands, god knows what they could do with the genetic research on these disk.." - diff --git a/code/modules/awaymissions/mission_code/snowdin.dm b/code/modules/awaymissions/mission_code/snowdin.dm index 210a5cec7a47..c159e19da9ec 100644 --- a/code/modules/awaymissions/mission_code/snowdin.dm +++ b/code/modules/awaymissions/mission_code/snowdin.dm @@ -1,134 +1,3 @@ -//Snow Valley Areas//-- - -/area/awaymission/snowdin - name = "Snowdin" - icon_state = "awaycontent1" - requires_power = FALSE - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - -/area/awaymission/snowdin/outside - name = "Snowdin Tundra Plains" - icon_state = "awaycontent25" - -/area/awaymission/snowdin/post - name = "Snowdin Outpost" - icon_state = "awaycontent2" - requires_power = TRUE - dynamic_lighting = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/snowdin/post/medbay - name = "Snowdin Outpost - Medbay" - icon_state = "awaycontent3" - -/area/awaymission/snowdin/post/secpost - name = "Snowdin Outpost - Security Checkpoint" - icon_state = "awaycontent4" - -/area/awaymission/snowdin/post/hydro - name = "Snowdin Outpost - Hydroponics" - icon_state = "awaycontent5" - -/area/awaymission/snowdin/post/messhall - name = "Snowdin Outpost - Mess Hall" - icon_state = "awaycontent6" - -/area/awaymission/snowdin/post/gateway - name = "Snowdin Outpost - Gateway" - icon_state = "awaycontent7" - -/area/awaymission/snowdin/post/dorm - name = "Snowdin Outpost - Dorms" - icon_state = "awaycontent8" - -/area/awaymission/snowdin/post/kitchen - name = "Snowdin Outpost - Kitchen" - icon_state = "awaycontent9" - -/area/awaymission/snowdin/post/engineering - name = "Snowdin Outpost - Engineering" - icon_state = "awaycontent10" - -/area/awaymission/snowdin/post/custodials - name = "Snowdin Outpost - Custodials" - icon_state = "awaycontent11" - -/area/awaymission/snowdin/post/research - name = "Snowdin Outpost - Research Area" - icon_state = "awaycontent12" - -/area/awaymission/snowdin/post/garage - name = "Snowdin Outpost - Garage" - icon_state = "awaycontent13" - -/area/awaymission/snowdin/post/minipost - name = "Snowdin Outpost - Recon Post" - icon_state = "awaycontent19" - -/area/awaymission/snowdin/post/mining_main - name = "Snowdin Outpost - Mining Post" - icon_state = "awaycontent21" - -/area/awaymission/snowdin/post/mining_main/mechbay - name = "Snowdin Outpost - Mining Post Mechbay" - icon_state = "awaycontent25" - -/area/awaymission/snowdin/post/mining_main/robotics - name = "Snowdin Outpost - Mining Post Robotics" - icon_state = "awaycontent26" - -/area/awaymission/snowdin/post/cavern1 - name = "Snowdin Outpost - Cavern Outpost 1" - icon_state = "awaycontent27" - -/area/awaymission/snowdin/post/cavern2 - name = "Snowdin Outpost - Cavern Outpost 2" - icon_state = "awaycontent28" - -/area/awaymission/snowdin/post/mining_dock - name = "Snowdin Outpost - Underground Mine Post" - icon_state = "awaycontent22" - -/area/awaymission/snowdin/post/broken_shuttle - name = "Snowdin Outpost - Broken Transit Shuttle" - icon_state = "awaycontent20" - requires_power = FALSE - -/area/awaymission/snowdin/igloo - name = "Snowdin Igloos" - icon_state = "awaycontent14" - dynamic_lighting = DYNAMIC_LIGHTING_FORCED - -/area/awaymission/snowdin/cave - name = "Snowdin Caves" - icon_state = "awaycontent15" - dynamic_lighting = DYNAMIC_LIGHTING_FORCED - -/area/awaymission/snowdin/cave/cavern - name = "Snowdin Depths" - icon_state = "awaycontent23" - -/area/awaymission/snowdin/cave/mountain - name = "Snowdin Mountains" - icon_state = "awaycontent24" - - -/area/awaymission/snowdin/base - name = "Snowdin Main Base" - icon_state = "awaycontent16" - dynamic_lighting = DYNAMIC_LIGHTING_ENABLED - requires_power = TRUE - -/area/awaymission/snowdin/dungeon1 - name = "Snowdin Depths" - icon_state = "awaycontent17" - dynamic_lighting = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/snowdin/sekret - name = "Snowdin Operations" - icon_state = "awaycontent18" - dynamic_lighting = DYNAMIC_LIGHTING_ENABLED - requires_power = TRUE - //liquid plasma!!!!!!// /turf/open/floor/plasteel/dark/snowdin @@ -265,61 +134,6 @@ keeping the rest of us on lockdown and I swear to god I keep hearing strange noises outside the walls at night. The gateway link has gone dead and without a supply of resources from Central, we're left for dead here. We haven't heard anything back from the mining squad either, so I can only assume whatever the fuck they unearthed got them first before coming for us. I don't want to die here..."} -/obj/item/paper/fluff/awaymissions/snowdin/saw_usage - name = "SAW Usage" - default_raw_text = "YOU SEEN IVAN, WHEN YOU HOLD SAAW LIKE PEESTOL, YOU STRONGER THAN RECOIL FOR FEAR OF HITTING FACE!" - -/obj/item/paper/fluff/awaymissions/snowdin/research_feed - name = "Research Feed" - default_raw_text = {"A page full of graphs and other detailed information on the seismic activity of the surrounding area."} - -//profile of each of the old crewmembers for the outpost - -/obj/item/paper/fluff/awaymissions/snowdin/profile/overseer - name = "Personnel Record AOP#01" - default_raw_text = {"
Personnel Log


Name:Caleb Reed
Age:38
Gender:Male
On-Site Profession:Outpost Overseer

Information

Caleb Reed lead several expeditions - among uncharted planets in search of plasma for Nanotrasen, scouring from hot savanas to freezing arctics. Track record is fairly clean with only incidient including the loss of two researchers during the - expedition of _______, where mis-used of explosive ordinance for tunneling causes a cave-in."} - -/obj/item/paper/fluff/awaymissions/snowdin/profile/sec1 - name = "Personnel Record AOP#02" - default_raw_text = {"
Personnel Log


Name:James Reed
Age:43
Gender:Male
On-Site Profession:Outpost Security

Information

James Reed has been a part - of Nanotrasen's security force for over 20 years, first joining in 22XX. A clean record and unwavering loyalty to the corperation through numerous deployments to various sites makes him a valuable asset to Natotrasen - when it comes to keeping the peace while prioritizing Nanotrasen privacy matters. "} - -/obj/item/paper/fluff/awaymissions/snowdin/profile/hydro1 - name = "Personnel Record AOP#03" - default_raw_text = {"
Personnel Log


Name:Katherine Esterdeen
Age:27
Gender:Female
On-Site Profession:Outpost Botanist

Information

Katherine Esterdeen is a recent - graduate with a major in Botany and a PH.D in Ecology. Having a clean record and eager to work, Esterdeen seems to be the right fit for maintaining plants in the middle of nowhere."} - -/obj/item/paper/fluff/awaymissions/snowdin/profile/engi1 - name = "Personnel Record AOP#04" - default_raw_text = {"
Personnel Log


Name:Rachel Migro
Age:35
Gender:Female
On-Site Profession:Outpost Engineer

Information

Recently certified to be a full-time Journeyman, Rachel has - been assigned various construction projects in the past 5 years. Competent and has no past infractions, should be of little concern."} - -/obj/item/paper/fluff/awaymissions/snowdin/profile/research1 - name = "Personnel Record AOP#05" - default_raw_text = {"
Personnel Log


Name:Jacob Ullman
Age:27
Gender:Male
On-Site Profession:Outpost Researcher

Information

"} - -/obj/item/paper/fluff/awaymissions/snowdin/profile/research2 - name = "Personnel Record AOP#06" - default_raw_text = {"
Personnel Log


Name:Elizabeth Queef
Age:28
Gender:Female
On-Site Profession:Outpost Researcher

Information

"} - -/obj/item/paper/fluff/awaymissions/snowdin/profile/research3 - name = "Personnel Record AOP#07" - default_raw_text = {"
Personnel Log


Name:Jouslen McGee
Age:38
Gender:Male
On-Site Profession:Outpost Researcher

Information

"} - -/obj/item/paper/fluff/awaymissions/snowdin/secnotice - name = "Security Notice" - default_raw_text = {"YOu have been assigned to this Arctic Post with intention of protecting Nanotrasen assets and ensuring vital information is kept secure while the stationed crew obeys protocol. The picked - staff for this post have been pre-screened with no prior incidients on record, but incase of an issue you have been given a single holding cell and instructions to contact Central to terminate the - offending crewmember."} - -/obj/item/paper/fluff/awaymissions/snowdin/mining - name = "Assignment Notice" - default_raw_text = {"This cold-ass planet is the new-age equivalent of striking gold. Huge deposits of plasma and literal streams of plasma run through the caverns under all this ice and we're here to mine it all.\ - Nanotrasen pays by the pound, so get minin' boys!"} - /obj/item/paper/crumpled/ruins/snowdin/lootstructures name = "scribbled note" default_raw_text = {"There's some ruins scattered along the cavern, their walls seem to be made of some sort of super-condensed mixture of ice and snow. We've already barricaded up the ones we've found so far, diff --git a/code/modules/awaymissions/mission_code/spacebattle.dm b/code/modules/awaymissions/mission_code/spacebattle.dm index f0131d830cd0..9a63a6fdbfa9 100644 --- a/code/modules/awaymissions/mission_code/spacebattle.dm +++ b/code/modules/awaymissions/mission_code/spacebattle.dm @@ -1,46 +1,3 @@ -//Spacebattle Areas - -/area/awaymission/spacebattle - name = "Space Battle" - icon_state = "awaycontent1" - requires_power = FALSE - -/area/awaymission/spacebattle/cruiser - name = "\improper Nanotrasen Cruiser" - icon_state = "awaycontent2" - -/area/awaymission/spacebattle/syndicate1 - name = "Syndicate Assault Ship 1" - icon_state = "awaycontent3" - -/area/awaymission/spacebattle/syndicate2 - name = "Syndicate Assault Ship 2" - icon_state = "awaycontent4" - -/area/awaymission/spacebattle/syndicate3 - name = "Syndicate Assault Ship 3" - icon_state = "awaycontent5" - -/area/awaymission/spacebattle/syndicate4 - name = "Syndicate War Sphere 1" - icon_state = "awaycontent6" - -/area/awaymission/spacebattle/syndicate5 - name = "Syndicate War Sphere 2" - icon_state = "awaycontent7" - -/area/awaymission/spacebattle/syndicate6 - name = "Syndicate War Sphere 3" - icon_state = "awaycontent8" - -/area/awaymission/spacebattle/syndicate7 - name = "Syndicate Fighter" - icon_state = "awaycontent9" - -/area/awaymission/spacebattle/secret - name = "Hidden Chamber" - icon_state = "awaycontent10" - /mob/living/simple_animal/hostile/human/syndicate/ranged/spacebattle loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier, /obj/item/gun/ballistic/automatic/smg/cobra, diff --git a/code/modules/awaymissions/mission_code/undergroundoutpost45.dm b/code/modules/awaymissions/mission_code/undergroundoutpost45.dm deleted file mode 100644 index 415303202430..000000000000 --- a/code/modules/awaymissions/mission_code/undergroundoutpost45.dm +++ /dev/null @@ -1,39 +0,0 @@ -// undergroundoutpost45 - -//Areas -/area/awaymission/undergroundoutpost45 - name = "space" - icon_state = "awaycontent1" - -/area/awaymission/undergroundoutpost45/central - name = "UO45 Central Hall" - icon_state = "awaycontent2" - -/area/awaymission/undergroundoutpost45/crew_quarters - name = "UO45 Crew Quarters" - icon_state = "awaycontent3" - -/area/awaymission/undergroundoutpost45/engineering - name = "UO45 Engineering" - icon_state = "awaycontent4" - -/area/awaymission/undergroundoutpost45/mining - name = "UO45 Mining" - icon_state = "awaycontent5" - -/area/awaymission/undergroundoutpost45/research - name = "UO45 Research" - icon_state = "awaycontent6" - -/area/awaymission/undergroundoutpost45/gateway - name = "UO45 Gateway" - icon_state = "awaycontent7" - -/area/awaymission/undergroundoutpost45/caves - name = "UO45 Caves" - icon_state = "awaycontent8" - always_unpowered = TRUE - power_environ = FALSE - power_equip = FALSE - power_light = FALSE - poweralm = FALSE diff --git a/code/modules/cargo/bounties/engineering.dm b/code/modules/cargo/bounties/engineering.dm index d4832a460fbc..4c42d312ecec 100644 --- a/code/modules/cargo/bounties/engineering.dm +++ b/code/modules/cargo/bounties/engineering.dm @@ -4,7 +4,7 @@ reward = 7500 wanted_types = list(/obj/item/tank) var/moles_required = 20 // A full tank is 28 moles, but CentCom ignores that fact. - var/gas_type = GAS_PLUOXIUM + var/gas_type = GAS_O3 /datum/bounty/item/engineering/gas/applies_to(obj/O) if(!..()) @@ -12,11 +12,6 @@ var/obj/item/tank/T = O return T.air_contents.get_moles(gas_type) >= moles_required -/datum/bounty/item/engineering/gas/nitryl_tank - name = "Full Tank of Nitryl" - description = "The non-human staff of Station 88 has been volunteered to test performance enhancing drugs. Ship them a tank full of Nitryl so they can get started." - gas_type = GAS_NITRYL - /datum/bounty/item/engineering/gas/freon_tank name = "Full Tank of Freon" description = "The Supermatter of station 33 has started the delamination process. Deliver a tank of Freon gas to help them stop it!" diff --git a/code/modules/cargo/bounty.dm b/code/modules/cargo/bounty.dm index 96d5218e551e..ddc07ddab611 100644 --- a/code/modules/cargo/bounty.dm +++ b/code/modules/cargo/bounty.dm @@ -21,7 +21,7 @@ GLOBAL_LIST_EMPTY(bounties_list) // Called when the claim button is clicked. Override to provide fancy rewards. /datum/bounty/proc/claim(datum/bank_account/claimer_account) if(can_claim() && claimer_account) - claimer_account.adjust_money(reward, "bounty") + claimer_account.adjust_money(reward, CREDIT_LOG_BOUNTY) claimed = TRUE // If an item sent in the cargo shuttle can satisfy the bounty. diff --git a/code/modules/cargo/console.dm b/code/modules/cargo/console.dm index 82fd2c11d01a..ab03be49e574 100644 --- a/code/modules/cargo/console.dm +++ b/code/modules/cargo/console.dm @@ -171,7 +171,7 @@ // no giving yourself money if(!charge_account || !val || val <= 0) return - if(charge_account.adjust_money(-val)) + if(charge_account.adjust_money(-val, CREDIT_LOG_WITHDRAW)) var/obj/item/holochip/cash_chip = new /obj/item/holochip(drop_location(), val) if(ishuman(usr)) var/mob/living/carbon/human/user = usr @@ -189,7 +189,7 @@ if (beacon) beacon.update_status(SP_READY) //turns on the beacon's ready light if("printBeacon") - if(charge_account?.adjust_money(-BEACON_COST)) + if(charge_account?.adjust_money(-BEACON_COST, "cargo_beacon")) cooldown = 10//a ~ten second cooldown for printing beacons to prevent spam var/obj/item/supplypod_beacon/C = new /obj/item/supplypod_beacon(drop_location()) C.link_console(src, usr)//rather than in beacon's Initialize(), we can assign the computer to the beacon by reusing this proc) @@ -225,7 +225,7 @@ // note that, because of CHECK_TICK above, we aren't sure if we can // afford the pack, even though we checked earlier. luckily adjust_money // returns false if the account can't afford the price - if(landing_turf && charge_account.adjust_money(-pack.cost)) + if(landing_turf && charge_account.adjust_money(-pack.cost, CREDIT_LOG_CARGO)) var/name = "*None Provided*" var/rank = "*None Provided*" if(ishuman(usr)) @@ -277,7 +277,7 @@ /obj/machinery/computer/cargo/attackby(obj/item/W, mob/living/user, params) var/value = W.get_item_credit_value() if(value && charge_account) - charge_account.adjust_money(value) + charge_account.adjust_money(value, CREDIT_LOG_DEPOSIT) to_chat(user, "You deposit [W]. The Vessel Budget is now [charge_account.account_balance] cr.") qdel(W) return TRUE diff --git a/code/modules/cargo/exports/large_objects.dm b/code/modules/cargo/exports/large_objects.dm index 030e51cf24f8..bb556dc78613 100644 --- a/code/modules/cargo/exports/large_objects.dm +++ b/code/modules/cargo/exports/large_objects.dm @@ -98,8 +98,5 @@ var/worth = 10 worth += C.air_contents.get_moles(GAS_BZ)*2 - worth += C.air_contents.get_moles(GAS_STIMULUM)*100 - worth += C.air_contents.get_moles(GAS_HYPERNOB)*1000 worth += C.air_contents.get_moles(GAS_TRITIUM)*4 - worth += C.air_contents.get_moles(GAS_PLUOXIUM)*5 return worth diff --git a/code/modules/cargo/exports/lavaland.dm b/code/modules/cargo/exports/lavaland.dm index 722333fac2db..ba721f10213f 100644 --- a/code/modules/cargo/exports/lavaland.dm +++ b/code/modules/cargo/exports/lavaland.dm @@ -39,7 +39,7 @@ cost = 40000 unit_name = "major lava planet artifact" export_types = list(/obj/item/hierophant_club, - /obj/item/melee/transforming/cleaving_saw, + /obj/item/melee/cleaving_saw, /obj/item/organ/vocal_cords/colossus, /obj/machinery/anomalous_crystal, /obj/item/mayhem, diff --git a/code/modules/cargo/order.dm b/code/modules/cargo/order.dm index e802bf1aa274..49e01139bd5b 100644 --- a/code/modules/cargo/order.dm +++ b/code/modules/cargo/order.dm @@ -24,6 +24,8 @@ src.orderer_ckey = orderer_ckey src.reason = reason src.paying_account = paying_account + if(pack && paying_account) + SSblackbox.record_feedback("tally", "crate_ordered", 1, pack.name) /datum/supply_order/proc/generateRequisition(turf/T) var/obj/item/paper/requisition_paper = new(T) diff --git a/code/modules/clothing/factions/clip.dm b/code/modules/clothing/factions/clip.dm index c0347e4eff8d..031e000c78c1 100644 --- a/code/modules/clothing/factions/clip.dm +++ b/code/modules/clothing/factions/clip.dm @@ -215,7 +215,7 @@ armor = list("melee" = 50, "bullet" = 50, "laser" = 30, "energy" = 40, "bomb" = 35, "bio" = 100, "rad" = 60, "fire" = 50, "acid" = 80) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/clip_spotter - allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) + allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) resistance_flags = null slowdown = 1 diff --git a/code/modules/clothing/outfits/ert/indie_ert.dm b/code/modules/clothing/outfits/ert/indie_ert.dm index 15ac8f718802..57d737ba0f8a 100644 --- a/code/modules/clothing/outfits/ert/indie_ert.dm +++ b/code/modules/clothing/outfits/ert/indie_ert.dm @@ -160,7 +160,7 @@ ears = /obj/item/radio/headset/alt r_hand = /obj/item/gun/energy/pulse - l_pocket = /obj/item/melee/transforming/energy/sword/saber + l_pocket = /obj/item/melee/energy/sword/saber r_pocket = /obj/item/shield/energy diff --git a/code/modules/clothing/outfits/factions/gezena.dm b/code/modules/clothing/outfits/factions/gezena.dm index df7a5145e47f..e3dd80457305 100644 --- a/code/modules/clothing/outfits/factions/gezena.dm +++ b/code/modules/clothing/outfits/factions/gezena.dm @@ -71,6 +71,15 @@ courierbag = /obj/item/storage/backpack/messenger/sec box = /obj/item/storage/box/survival/security +/datum/outfit/job/gezena/security/sapper + name = "PGF - Marine Pioneer" + id_assignment = "Marine Pioneer" + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + /datum/outfit/job/gezena/hos name = "PGF - Marine Sergeant" id_assignment = "Sergeant" diff --git a/code/modules/clothing/outfits/standard.dm b/code/modules/clothing/outfits/standard.dm index 18e220c3f664..3e76c4d88bd1 100644 --- a/code/modules/clothing/outfits/standard.dm +++ b/code/modules/clothing/outfits/standard.dm @@ -113,7 +113,7 @@ box = /obj/item/storage/box/debugtools internals_slot = ITEM_SLOT_SUITSTORE backpack_contents = list( - /obj/item/melee/transforming/energy/axe=1,\ + /obj/item/melee/energy/axe=1,\ /obj/item/storage/part_replacer/bluespace/tier4=1,\ /obj/item/debug/human_spawner=1,\ /obj/item/debug/omnitool=1 diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 25788f4556ae..f806beca1e02 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -411,7 +411,7 @@ item_state = "syndie_hardsuit" hardsuit_type = "syndi" armor = list("melee" = 40, "bullet" = 50, "laser" = 30, "energy" = 40, "bomb" = 35, "bio" = 100, "rad" = 50, "fire" = 50, "acid" = 90) - allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) + allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi jetpack = /obj/item/tank/jetpack/suit supports_variations = DIGITIGRADE_VARIATION | VOX_VARIATION @@ -917,7 +917,7 @@ item_state = "syndie_hardsuit" hardsuit_type = "syndi" armor = list("melee" = 40, "bullet" = 50, "laser" = 30, "energy" = 40, "bomb" = 35, "bio" = 100, "rad" = 50, "fire" = 100, "acid" = 100) - allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) + allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi slowdown = 0.5 shield_state = "shield-red" @@ -1199,7 +1199,7 @@ item_state = "hardsuit_solgov" armor = list("melee" = 50, "bullet" = 45, "laser" = 40, "energy" = 30, "bomb" = 60, "bio" = 100, "rad" = 60, "fire" = 90, "acid" = 75) //intentionally the fucking strong, this is master chief-tier armor //is this really what you call the strong?? is this the best solgov has to offer?????? helmettype = /obj/item/clothing/head/helmet/space/hardsuit/solgov - allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) + allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) slowdown = 0.5 supports_variations = DIGITIGRADE_VARIATION diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 6e825e48ea4b..8cf3da8547cd 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -153,7 +153,7 @@ Contains: desc = "Yarr." w_class = WEIGHT_CLASS_NORMAL flags_inv = 0 - allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/melee/transforming/energy/sword/saber/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/reagent_containers/food/drinks/bottle/rum) + allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/melee/energy/sword/saber/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/reagent_containers/food/drinks/bottle/rum) slowdown = 0 armor = list("melee" = 30, "bullet" = 50, "laser" = 30,"energy" = 40, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 60, "acid" = 75) strip_delay = 40 @@ -363,7 +363,7 @@ Contains: armor = list("melee" = 30, "bullet" = 10, "laser" = 10, "energy" = 20, "bomb" = 10, "bio" = 100, "rad" = 10, "fire" = 100, "acid" = 100) max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = FIRE_PROOF - allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/pickaxe, /obj/item/melee/spear, /obj/item/organ/regenerative_core/legion, /obj/item/kinetic_crusher, /obj/item/resonator, /obj/item/melee/transforming/cleaving_saw) + allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/pickaxe, /obj/item/melee/spear, /obj/item/organ/regenerative_core/legion, /obj/item/kinetic_crusher, /obj/item/resonator, /obj/item/melee/cleaving_saw) /obj/item/clothing/suit/space/hardsuit/berserker/RemoveHelmet() var/obj/item/clothing/head/helmet/space/hardsuit/berserker/helm = helmet @@ -525,7 +525,7 @@ Contains: icon_state = "vacsuit_solgov" desc = "Originally designed by independent contractors on Luna for the purposes of survival in hazardous environments, the lightweight Tortoise Microlite Armored Suit now sees widespread use by SolGov's exploration teams." item_state = "vacsuit_solgov" - allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy, /obj/item/tank/internals) + allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy, /obj/item/tank/internals) armor = list("bio" = 100, "rad" = 50, "fire" = 60, "acid" = 75) slowdown = 0.5 w_class = WEIGHT_CLASS_NORMAL diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index 895dea5156aa..6f8269357eb2 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -4,7 +4,7 @@ /obj/item/clothing/suit/space/eva/plasmaman name = "EVA plasma envirosuit" desc = "A special plasma containment suit designed to be space-worthy, as well as worn over other clothing. Like its smaller counterpart, it can automatically extinguish the wearer in a crisis, and holds twice as many charges." - allowed = list(/obj/item/gun, /obj/item/ammo_casing, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword, /obj/item/restraints/handcuffs, /obj/item/tank) + allowed = list(/obj/item/gun, /obj/item/ammo_casing, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy/sword, /obj/item/restraints/handcuffs, /obj/item/tank) armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 0, "fire" = 100, "acid" = 75) resistance_flags = FIRE_PROOF icon_state = "plasmaman_suit" diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm index e2a405176c21..67dc2201d60c 100644 --- a/code/modules/clothing/spacesuits/syndi.dm +++ b/code/modules/clothing/spacesuits/syndi.dm @@ -13,7 +13,7 @@ item_state = "space_suit_syndicate" desc = "A space suit made of high-grade ballistic fabric with integrated armor plates. More compact than a normal space suit while almost matching powered hardsuits for protection. Almost." w_class = WEIGHT_CLASS_NORMAL - allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) + allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) armor = list("melee" = 30, "bullet" = 15, "laser" = 15, "energy" = 40, "bomb" = 20, "bio" = 100, "rad" = 30, "fire" = 75, "acid" = 75) //Green syndicate space suit diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index c8e54edb2e01..83ec8abff93c 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -37,7 +37,7 @@ desc = "Yarr." icon_state = "pirate" item_state = "pirate" - allowed = list(/obj/item/melee/transforming/energy/sword/saber/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/reagent_containers/food/drinks/bottle/rum) + allowed = list(/obj/item/melee/energy/sword/saber/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/reagent_containers/food/drinks/bottle/rum) /obj/item/clothing/suit/pirate/captain name = "pirate captain coat" diff --git a/code/modules/economy/account.dm b/code/modules/economy/account.dm index 4213ae91376b..367b299107e7 100644 --- a/code/modules/economy/account.dm +++ b/code/modules/economy/account.dm @@ -29,7 +29,7 @@ /datum/bank_account/proc/has_money(amt) return account_balance >= amt -/datum/bank_account/proc/adjust_money(amt, reason = "cash") +/datum/bank_account/proc/adjust_money(amt, reason = CREDIT_LOG_WITHDRAW) if((amt < 0 && has_money(-amt)) || amt > 0) SSblackbox.record_feedback("tally", "credits", amt, reason) SSeconomy.bank_money += amt @@ -39,10 +39,10 @@ /datum/bank_account/proc/transfer_money(datum/bank_account/from, amount) if(from.has_money(amount)) - adjust_money(amount, "transfer") + adjust_money(amount, CREDIT_LOG_TRANSFER_IN) SSblackbox.record_feedback("amount", "credits_transferred", amount) log_econ("[amount] credits were transferred from [from.account_holder]'s account to [src.account_holder]") - from.adjust_money(-amount, "transfer_out") + from.adjust_money(-amount, CREDIT_LOG_TRANSFER_OUT) return TRUE return FALSE @@ -83,4 +83,4 @@ /datum/bank_account/ship/New(newname, budget) account_holder = newname - adjust_money(budget, "starting_money") + adjust_money(budget, CREDIT_LOG_STARTING_MONEY) diff --git a/code/modules/economy/pay_stand.dm b/code/modules/economy/pay_stand.dm index 9382a03d062e..1007f25fe40b 100644 --- a/code/modules/economy/pay_stand.dm +++ b/code/modules/economy/pay_stand.dm @@ -54,7 +54,7 @@ if(momsdebitcard < 1) to_chat(user, "ERROR: Invalid amount designated.") return - if(vbucks.registered_account.adjust_money(-momsdebitcard, "transfer")) + if(vbucks.registered_account.adjust_money(-momsdebitcard, CREDIT_LOG_TRANSFER_IN)) purchase(vbucks.registered_account.account_holder, momsdebitcard) to_chat(user, "Thanks for purchasing! The vendor has been informed.") return @@ -117,7 +117,7 @@ return ..() /obj/machinery/paystand/proc/purchase(buyer, price) - my_card.registered_account.adjust_money(price, "transfer") + my_card.registered_account.adjust_money(price, CREDIT_LOG_TRANSFER_IN) my_card.registered_account.bank_card_talk("Purchase made at your vendor by [buyer] for [price] credits.") amount_deposited = amount_deposited + price if(signaler && amount_deposited >= signaler_threshold) diff --git a/code/modules/economy/selling_pad.dm b/code/modules/economy/selling_pad.dm index cf155ad251bd..e70dab4dcb77 100644 --- a/code/modules/economy/selling_pad.dm +++ b/code/modules/economy/selling_pad.dm @@ -36,7 +36,7 @@ /obj/machinery/computer/selling_pad_control/attackby(obj/item/I, mob/user) var/value = I.get_item_credit_value() if(value) - sell_account.adjust_money(value, "selling_pad") + sell_account.adjust_money(value, CREDIT_LOG_SELLING_PAD) to_chat(user, "You deposit [I]. The Vessel Budget is now [sell_account.account_balance] cr.") qdel(I) return TRUE @@ -150,7 +150,7 @@ total_report.total_amount[E] += ex.total_amount[E] total_report.total_value[E] += ex.total_value[E] - sell_account.adjust_money(value, "selling_pad") + sell_account.adjust_money(value, CREDIT_LOG_SELLING_PAD) if(!value) status_report += "Nothing" diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm index 2f73f7678e38..add217d64a49 100644 --- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm @@ -33,6 +33,32 @@ icon_state = "glass_empty" renamedByPlayer = FALSE //so new drinks can rename the glass +/obj/item/reagent_containers/food/drinks/beaglemug + name = "beagle mug" + desc = "A beloved edifice of a Dog, now as a mug!" + icon_state = "beaglemug" + amount_per_transfer_from_this = 10 + volume = 30 + custom_materials = list(/datum/material/glass=500) + max_integrity = 20 + spillable = TRUE + resistance_flags = ACID_PROOF + obj_flags = UNIQUE_RENAME + drop_sound = 'sound/items/handling/drinkglass_drop.ogg' + pickup_sound = 'sound/items/handling/drinkglass_pickup.ogg' + custom_price = 25 + +/obj/item/reagent_containers/food/drinks/beaglemug/on_reagent_change(changetype) + cut_overlays() + if(reagents.reagent_list.len) + var/mutable_appearance/reagent_overlay = mutable_appearance(icon, "beaglemug_overlay") + icon_state = "beaglemug" + reagent_overlay.color = mix_color_from_reagents(reagents.reagent_list) + add_overlay(reagent_overlay) + else + icon_state = "beaglemug" + renamedByPlayer = FALSE + //Shot glasses!// // This lets us add shots in here instead of lumping them in with drinks because >logic // // The format for shots is the exact same as iconstates for the drinking glass, except you use a shot glass instead. // diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm index c79d4cea8474..993c75246c6c 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm @@ -81,7 +81,7 @@ name = "Energy cake" reqs = list( /obj/item/food/cake/birthday = 1, - /obj/item/melee/transforming/energy/sword = 1, + /obj/item/melee/energy/sword = 1, ) blacklist = list(/obj/item/food/cake/birthday/energy) result = /obj/item/food/cake/birthday/energy diff --git a/code/modules/holodeck/turfs.dm b/code/modules/holodeck/turfs.dm index 59e9a46341e6..9670e4426a6f 100644 --- a/code/modules/holodeck/turfs.dm +++ b/code/modules/holodeck/turfs.dm @@ -169,4 +169,4 @@ tiled_dirt = FALSE /turf/open/floor/holofloor/snow/cold - initial_gas_mix = "nob=7500;TEMP=2.7" + initial_gas_mix = "ammonia=7500;TEMP=2.7" diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index ee953b0fb74d..0ac783477e79 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -123,7 +123,7 @@ return FALSE if(!visualsOnly) var/datum/bank_account/bank_account = new(H.real_name, H.age) - bank_account.adjust_money(officer ? 250 : 100, "starting_money") //just a little bit of money for you + bank_account.adjust_money(officer ? 250 : 100, CREDIT_LOG_STARTING_MONEY) //just a little bit of money for you H.account_id = bank_account.account_id //Equip the rest of the gear diff --git a/code/modules/mapping/mapping_helpers.dm b/code/modules/mapping/mapping_helpers.dm index 52b5f7659305..458fe2f8299b 100644 --- a/code/modules/mapping/mapping_helpers.dm +++ b/code/modules/mapping/mapping_helpers.dm @@ -71,14 +71,6 @@ name = "asteroid snow baseturf editor" baseturf = /turf/open/floor/plating/asteroid/snow -/obj/effect/baseturf_helper/beach/sand - name = "beach sand baseturf editor" - baseturf = /turf/open/floor/plating/beach/sand - -/obj/effect/baseturf_helper/beach/water - name = "water baseturf editor" - baseturf = /turf/open/floor/plating/beach/water - /obj/effect/baseturf_helper/lava name = "lava baseturf editor" baseturf = /turf/open/lava/smooth diff --git a/code/modules/mining/abandoned_crates.dm b/code/modules/mining/abandoned_crates.dm index 4d5a07d4130f..1166a0db0db5 100644 --- a/code/modules/mining/abandoned_crates.dm +++ b/code/modules/mining/abandoned_crates.dm @@ -207,7 +207,7 @@ if(88) new /obj/item/reagent_containers/food/drinks/bottle/lizardwine(src) if(89) - new /obj/item/melee/transforming/energy/sword/bananium(src) + new /obj/item/melee/energy/sword/bananium(src) if(90) new /obj/item/dnainjector/wackymut(src) if(91) diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index d6f8866bb1ec..0ee00128d855 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -1063,93 +1063,6 @@ ///Bosses -//Miniboss Miner - -/obj/item/melee/transforming/cleaving_saw - name = "cleaving saw" - desc = "This saw, effective at drawing the blood of beasts, transforms into a long cleaver that makes use of centrifugal force." - force = 12 - force_on = 20 //force when active - throwforce = 20 - throwforce_on = 20 - icon = 'icons/obj/lavaland/artefacts.dmi' - lefthand_file = 'icons/mob/inhands/64x64_lefthand.dmi' - righthand_file = 'icons/mob/inhands/64x64_righthand.dmi' - inhand_x_dimension = 64 - inhand_y_dimension = 64 - icon_state = "cleaving_saw" - icon_state_on = "cleaving_saw_open" - slot_flags = ITEM_SLOT_BELT - attack_verb_off = list("attacked", "sawed", "sliced", "torn", "ripped", "diced", "cut") - attack_verb_on = list("cleaved", "swiped", "slashed", "chopped") - hitsound = 'sound/weapons/bladeslice.ogg' - hitsound_on = 'sound/weapons/bladeslice.ogg' - w_class = WEIGHT_CLASS_BULKY - sharpness = IS_SHARP - faction_bonus_force = 30 - nemesis_factions = list("mining", "boss") - var/transform_cooldown - var/swiping = FALSE - var/bleed_stacks_per_hit = 3 - -/obj/item/melee/transforming/cleaving_saw/examine(mob/user) - . = ..() - . += "It is [active ? "open, will cleave enemies in a wide arc and deal additional damage to fauna":"closed, and can be used for rapid consecutive attacks that cause fauna to bleed"].\n"+\ - "Both modes will build up existing bleed effects, doing a burst of high damage if the bleed is built up high enough.\n"+\ - "Transforming it immediately after an attack causes the next attack to come out faster." - -/obj/item/melee/transforming/cleaving_saw/transform_weapon(mob/living/user, supress_message_text) - if(transform_cooldown > world.time) - return FALSE - . = ..() - if(.) - transform_cooldown = world.time + (CLICK_CD_MELEE * 0.5) - user.changeNext_move(CLICK_CD_MELEE * 0.25) - -/obj/item/melee/transforming/cleaving_saw/transform_messages(mob/living/user, supress_message_text) - if(!supress_message_text) - if(active) - to_chat(user, "You open [src]. It will now cleave enemies in a wide arc and deal additional damage to fauna.") - else - to_chat(user, "You close [src]. It will now attack rapidly and cause fauna to bleed.") - playsound(user, 'sound/magic/clockwork/fellowship_armory.ogg', 35, TRUE, frequency = 90000 - (active * 30000)) - -/obj/item/melee/transforming/cleaving_saw/clumsy_transform_effect(mob/living/user) - if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) - to_chat(user, "You accidentally cut yourself with [src], like a doofus!") - user.take_bodypart_damage(10) - -/obj/item/melee/transforming/cleaving_saw/melee_attack_chain(mob/user, atom/target, params) - ..() - if(!active) - user.changeNext_move(CLICK_CD_MELEE * 0.5) //when closed, it attacks very rapidly - -/obj/item/melee/transforming/cleaving_saw/nemesis_effects(mob/living/user, mob/living/target) - var/datum/status_effect/stacking/saw_bleed/B = target.has_status_effect(STATUS_EFFECT_SAWBLEED) - if(!B) - target.apply_status_effect(STATUS_EFFECT_SAWBLEED,bleed_stacks_per_hit) - else - B.add_stacks(bleed_stacks_per_hit) - -/obj/item/melee/transforming/cleaving_saw/attack(mob/living/target, mob/living/carbon/human/user) - if(!active || swiping || !target.density || get_turf(target) == get_turf(user)) - if(!active) - faction_bonus_force = 0 - ..() - if(!active) - faction_bonus_force = initial(faction_bonus_force) - else - var/turf/user_turf = get_turf(user) - var/dir_to_target = get_dir(user_turf, get_turf(target)) - swiping = TRUE - var/static/list/cleaving_saw_cleave_angles = list(0, -45, 45) //so that the animation animates towards the target clicked and not towards a side target - for(var/i in cleaving_saw_cleave_angles) - var/turf/T = get_step(user_turf, turn(dir_to_target, i)) - for(var/mob/living/L in T) - if(user.Adjacent(L) && L.density) - melee_attack_chain(user, L) - swiping = FALSE - //Dragon /obj/structure/closet/crate/necropolis/dragon diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 764ede83aa90..081c94f4a8f9 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -110,22 +110,24 @@ var/final_block_chance = I.block_chance - (clamp((armour_penetration-I.armour_penetration)/2,0,100)) + block_chance_modifier //So armour piercing blades can still be parried by other blades, for example if(I.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type)) return TRUE + if(wear_suit) - var/final_block_chance = wear_suit.block_chance - (clamp((armour_penetration-wear_suit.armour_penetration)/2,0,100)) + block_chance_modifier + var/final_block_chance = wear_suit.block_chance - (clamp((armour_penetration - wear_suit.armour_penetration)/2,0,100)) + block_chance_modifier if(wear_suit.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type)) return TRUE if(w_uniform) - var/final_block_chance = w_uniform.block_chance - (clamp((armour_penetration-w_uniform.armour_penetration)/2,0,100)) + block_chance_modifier + var/final_block_chance = w_uniform.block_chance - (clamp((armour_penetration - w_uniform.armour_penetration)/2,0,100)) + block_chance_modifier if(w_uniform.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type)) return TRUE if(wear_neck) - var/final_block_chance = wear_neck.block_chance - (clamp((armour_penetration-wear_neck.armour_penetration)/2,0,100)) + block_chance_modifier + var/final_block_chance = wear_neck.block_chance - (clamp((armour_penetration - wear_neck.armour_penetration)/2,0,100)) + block_chance_modifier if(wear_neck.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type)) return TRUE if(head) - var/final_block_chance = head.block_chance - (clamp((armour_penetration-head.armour_penetration)/2,0,100)) + block_chance_modifier + var/final_block_chance = head.block_chance - (clamp((armour_penetration - head.armour_penetration)/2,0,100)) + block_chance_modifier if(head.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type)) return TRUE + return FALSE /mob/living/carbon/human/proc/check_block() diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index e225121846d7..f8807a2fa392 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1810,18 +1810,26 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/plasma = environment.get_moles(GAS_PLASMA) var/tritium = environment.get_moles(GAS_TRITIUM) var/chlorine = environment.get_moles(GAS_CHLORINE) + var/ammonia = environment.get_moles(GAS_AMMONIA) var/hydrogen_chloride = environment.get_moles(GAS_HYDROGEN_CHLORIDE) - if(chlorine <= MINIMUM_MOLS_TO_HARM && hydrogen_chloride <= MINIMUM_MOLS_TO_HARM && tritium <= MINIMUM_MOLS_TO_HARM && plasma <= MINIMUM_MOLS_TO_HARM) + var/sulfur_dioxide = environment.get_moles(GAS_SO2) + if(chlorine <= MINIMUM_MOLS_TO_HARM && hydrogen_chloride <= MINIMUM_MOLS_TO_HARM && tritium <= MINIMUM_MOLS_TO_HARM && plasma <= MINIMUM_MOLS_TO_HARM && ammonia <= MINIMUM_MOLS_TO_HARM && sulfur_dioxide <= MINIMUM_MOLS_TO_HARM) return var/eyedamage = FALSE var/irritant = FALSE var/burndamage = 0 - var/lowerthreshold = 0 + var/lowerthreshold = FALSE + + var/feels_pain = TRUE if(HAS_TRAIT(H, TRAIT_METALLIC)) //makes certain species take more damage and start taking damage at lower air amounts - lowerthreshold = 1 + lowerthreshold = TRUE + + if(HAS_TRAIT(H, TRAIT_ANALGESIA)) //if we can't feel pain, dont give the pain messages + feels_pain = FALSE - if(plasma > (MINIMUM_MOLS_TO_HARM * 10)) + if(plasma > MINIMUM_MOLS_TO_HARM) + burndamage += max(sqrt(ammonia) - 1 + lowerthreshold, 0) eyedamage = TRUE irritant = TRUE if(tritium) @@ -1834,29 +1842,41 @@ GLOBAL_LIST_EMPTY(roundstart_races) irritant = TRUE if(chlorine > (MINIMUM_MOLS_TO_HARM * 10)) eyedamage = TRUE + if(ammonia) + burndamage += max(sqrt(ammonia) - 2 + lowerthreshold, 0) + irritant = TRUE + if(ammonia > (MINIMUM_MOLS_TO_HARM * 5)) + eyedamage = TRUE if(hydrogen_chloride) burndamage += max(sqrt(hydrogen_chloride) - 1 + lowerthreshold, 0) eyedamage = TRUE irritant = TRUE + if(sulfur_dioxide) + burndamage += max(sqrt(chlorine) - 4 + lowerthreshold, 0) + irritant = TRUE + if(sulfur_dioxide > (MINIMUM_MOLS_TO_HARM * 5)) + eyedamage = TRUE if(!eyedamage && !burndamage && !irritant) return H.apply_damage(burndamage, BURN, spread_damage = TRUE) if(prob(50) && burndamage) - if(lowerthreshold) - to_chat(H, "You're corroding!") - else - to_chat(H, "You're melting!") + if(lowerthreshold && feels_pain) + to_chat(H, span_userdanger("You're corroding!")) + else if(feels_pain) + to_chat(H, span_userdanger("You're melting!")) playsound(H, 'sound/items/welder.ogg', 30, TRUE) if(!H.check_for_goggles() && eyedamage) H.adjustOrganLoss(ORGAN_SLOT_EYES, 1) - if(prob(50)) - to_chat(H, "Your eyes burn!") - if(irritant && prob(50)) + if(prob(50) && feels_pain) + to_chat(H, span_danger("Your eyes burn!")) + H.emote("cry") + H.set_blurriness(10) + if(irritant && prob(50) && feels_pain) if(lowerthreshold) - to_chat(H, "Your outer shell smolders!") + to_chat(H, span_danger("Your outer shell smolders!")) else - to_chat(H, "Your skin itches.") + to_chat(H, span_danger("Your skin itches.")) /// Handle the body temperature status effects for the species diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index 04a870684ccf..a65a7af0cfe9 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -176,7 +176,7 @@ var/oxygen_used = 0 var/moles = breath.total_moles() var/breath_pressure = (moles*R_IDEAL_GAS_EQUATION*breath.return_temperature())/BREATH_VOLUME - var/O2_partialpressure = ((breath.get_moles(GAS_O2)/moles)*breath_pressure) + (((breath.get_moles(GAS_PLUOXIUM)*8)/moles)*breath_pressure) + var/O2_partialpressure = ((breath.get_moles(GAS_O2)/moles)*breath_pressure) + (((breath.get_moles(GAS_O3)*2)/moles)*breath_pressure) var/Toxins_partialpressure = (breath.get_moles(GAS_PLASMA)/moles)*breath_pressure var/CO2_partialpressure = (breath.get_moles(GAS_CO2)/moles)*breath_pressure @@ -261,11 +261,6 @@ var/tritium_partialpressure = (breath.get_moles(GAS_TRITIUM)/breath.total_moles())*breath_pressure radiation += tritium_partialpressure/10 - //NITRYL - if(breath.get_moles(GAS_NITRYL)) - var/nitryl_partialpressure = (breath.get_moles(GAS_NITRYL)/breath.total_moles())*breath_pressure - adjustFireLoss(nitryl_partialpressure/4) - //FREON if(breath.get_moles(GAS_FREON)) var/freon_partialpressure = (breath.get_moles(GAS_FREON)/breath.total_moles())*breath_pressure diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index f9bb15bb5941..9e2a0bd9aaca 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -258,7 +258,7 @@ /obj/item/restraints/handcuffs/cable/zipties, /obj/item/soap/nanotrasen, /obj/item/borg/cyborghug) - emag_modules = list(/obj/item/melee/transforming/energy/sword/cyborg) + emag_modules = list(/obj/item/melee/energy/sword/cyborg) cyborg_base_icon = "robot" moduleselect_icon = "standard" hat_offset = -3 @@ -976,7 +976,7 @@ name = "Syndicate Assault" basic_modules = list( /obj/item/assembly/flash/cyborg, - /obj/item/melee/transforming/energy/sword/cyborg, + /obj/item/melee/energy/sword/cyborg, /obj/item/gun/energy/printer, /obj/item/gun/ballistic/revolver/grenadelauncher/cyborg, /obj/item/card/emag/borg, @@ -1041,7 +1041,7 @@ /obj/item/cautery, /obj/item/surgicaldrill, /obj/item/scalpel, - /obj/item/melee/transforming/energy/sword/cyborg/saw, + /obj/item/melee/energy/sword/cyborg/saw, /obj/item/roller/robo, /obj/item/card/emag/borg, /obj/item/crowbar/cyborg, diff --git a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm index 52346fd7cddd..0f8d8e5cd432 100644 --- a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm +++ b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm @@ -5,7 +5,7 @@ icon_state = "grievous" health = 150 maxHealth = 150 - baton_type = /obj/item/melee/transforming/energy/sword/saber + baton_type = /obj/item/melee/energy/sword/saber base_speed = 4 //he's a fast fucker var/block_chance = 50 weapon_force = 30 diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index 4a072df3ab8b..1f3c2ba24aa7 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -404,7 +404,7 @@ new /obj/item/toy/sword(Tsec) if(ASSEMBLY_FIFTH_STEP) - if(istype(I, /obj/item/melee/transforming/energy/sword/saber)) + if(istype(I, /obj/item/melee/energy/sword/saber)) if(swordamt < 3) if(!user.temporarilyRemoveItemFromInventory(I)) return @@ -429,7 +429,7 @@ icon_state = initial(icon_state) to_chat(user, "You unbolt [src]'s energy swords.") for(var/IS in 1 to swordamt) - new /obj/item/melee/transforming/energy/sword/saber(Tsec) + new /obj/item/melee/energy/sword/saber(Tsec) //Firebot Assembly diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index df2508c5f4a0..1445eab16fbe 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -40,7 +40,6 @@ var/fair_market_price_arrest = 25 // On arrest, charges the violator this much. If they don't have that much in their account, the securitron will beat them instead var/fair_market_price_detain = 5 // Charged each time the violator is stunned on detain var/weapon_force = 20 // Only used for NAP violation beatdowns on non-grievous securitrons - var/payment_department = ACCOUNT_SEC /mob/living/simple_animal/bot/secbot/beepsky name = "Commander Beep O'sky" diff --git a/code/modules/mob/living/simple_animal/hostile/human/pirate.dm b/code/modules/mob/living/simple_animal/hostile/human/pirate.dm index 1a30b46f263e..fd33a21fe038 100644 --- a/code/modules/mob/living/simple_animal/hostile/human/pirate.dm +++ b/code/modules/mob/living/simple_animal/hostile/human/pirate.dm @@ -7,7 +7,7 @@ speak_chance = 0 speak_emote = list("yarrs") loot = list(/obj/effect/mob_spawn/human/corpse/pirate, - /obj/item/melee/transforming/energy/sword/saber/pirate) + /obj/item/melee/energy/sword/saber/pirate) faction = list("pirate") /mob/living/simple_animal/hostile/human/pirate/melee diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm index 63519d29c7cd..fc8cbbce6d8c 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm @@ -42,7 +42,7 @@ Difficulty: Medium pixel_x = -16 base_pixel_x = -16 //mob_trophy = /obj/item/mob_trophy/miner_eye - loot = list(/obj/item/melee/transforming/cleaving_saw, /obj/item/gun/energy/kinetic_accelerator) + loot = list(/obj/item/melee/cleaving_saw, /obj/item/gun/energy/kinetic_accelerator) wander = FALSE del_on_death = TRUE blood_volume = BLOOD_VOLUME_NORMAL @@ -50,7 +50,7 @@ Difficulty: Medium achievement_type = /datum/award/achievement/boss/blood_miner_kill crusher_achievement_type = /datum/award/achievement/boss/blood_miner_crusher score_achievement_type = /datum/award/score/blood_miner_score - var/obj/item/melee/transforming/cleaving_saw/miner/miner_saw + var/obj/item/melee/cleaving_saw/miner/miner_saw var/time_until_next_transform = 0 var/dashing = FALSE var/dash_cooldown = 15 @@ -107,11 +107,11 @@ Difficulty: Medium shoot_ka() transform_weapon() -/obj/item/melee/transforming/cleaving_saw/miner //nerfed saw because it is very murdery +/obj/item/melee/cleaving_saw/miner //nerfed saw because it is very murdery force = 6 - force_on = 10 + active_force = 10 -/obj/item/melee/transforming/cleaving_saw/miner/attack(mob/living/target, mob/living/carbon/human/user) +/obj/item/melee/cleaving_saw/miner/attack(mob/living/target, mob/living/carbon/human/user) target.add_stun_absorption("miner", 10, INFINITY) ..() target.stun_absorption -= "miner" @@ -248,14 +248,12 @@ Difficulty: Medium /mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/proc/transform_weapon() if(time_until_next_transform <= world.time) miner_saw.transform_cooldown = 0 - miner_saw.transform_weapon(src, TRUE) - if(!miner_saw.active) - rapid_melee = 5 // 4 deci cooldown before changes, npcpool subsystem wait is 20, 20/4 = 5 - else - rapid_melee = 3 // same thing but halved (slightly rounded up) + miner_saw.attack_self(src) + var/saw_open = HAS_TRAIT(miner_saw, TRAIT_TRANSFORM_ACTIVE) + rapid_melee = saw_open ? 3 : 5 transform_stop_attack = TRUE - icon_state = "miner[miner_saw.active ? "_transformed":""]" - icon_living = "miner[miner_saw.active ? "_transformed":""]" + icon_state = "miner[saw_open ? "_transformed":""]" + icon_living = "miner[saw_open ? "_transformed":""]" time_until_next_transform = world.time + rand(50, 100) /obj/effect/temp_visual/dir_setting/miner_death diff --git a/code/modules/mod/mod_theme.dm b/code/modules/mod/mod_theme.dm index 2e6325df919f..4643fa939206 100644 --- a/code/modules/mod/mod_theme.dm +++ b/code/modules/mod/mod_theme.dm @@ -682,7 +682,7 @@ /obj/item/restraints/handcuffs, /obj/item/assembly/flash, /obj/item/melee/baton, - /obj/item/melee/transforming/energy/sword, + /obj/item/melee/energy/sword, /obj/item/shield/energy, ) skins = list( @@ -733,7 +733,7 @@ /obj/item/restraints/handcuffs, /obj/item/assembly/flash, /obj/item/melee/baton, - /obj/item/melee/transforming/energy/sword, + /obj/item/melee/energy/sword, /obj/item/shield/energy, ) skins = list( @@ -947,7 +947,7 @@ /obj/item/restraints/handcuffs, /obj/item/assembly/flash, /obj/item/melee/baton, - /obj/item/melee/transforming/energy/sword, + /obj/item/melee/energy/sword, /obj/item/shield/energy, ) skins = list( diff --git a/code/modules/modular_computers/laptop_vendor.dm b/code/modules/modular_computers/laptop_vendor.dm index b1ec3d3edc16..5ad3a674e334 100644 --- a/code/modules/modular_computers/laptop_vendor.dm +++ b/code/modules/modular_computers/laptop_vendor.dm @@ -254,7 +254,7 @@ var/obj/item/card/bank/ID = I var/datum/bank_account/account = ID.registered_account var/target_credits = total_price - credits - if(!account.adjust_money(-target_credits, "laptop_vendor")) + if(!account.adjust_money(-target_credits, CREDIT_LOG_VENDOR_PURCHASE)) say("Insufficient credits on card to purchase!") return credits += target_credits diff --git a/code/modules/overmap/missions.dm b/code/modules/overmap/missions.dm index 0bc2c2f34722..50fe702de5b7 100644 --- a/code/modules/overmap/missions.dm +++ b/code/modules/overmap/missions.dm @@ -39,6 +39,7 @@ return ..() /datum/mission/proc/accept(datum/overmap/ship/controlled/acceptor, turf/accept_loc) + SSblackbox.record_feedback("tally", "mission_accepted", 1, name) accepted = TRUE servant = acceptor LAZYREMOVE(source_outpost.missions, src) @@ -63,10 +64,13 @@ return ..() /datum/mission/proc/turn_in() - servant.ship_account.adjust_money(value, "mission") + SSblackbox.record_feedback("tally", "mission_succeeded", 1, name) + SSblackbox.record_feedback("tally", "mission_payout", value, name) + servant.ship_account.adjust_money(value, CREDIT_LOG_MISSION) qdel(src) /datum/mission/proc/give_up() + SSblackbox.record_feedback("tally", "mission_abandoned", 1, name) qdel(src) /datum/mission/proc/can_complete() diff --git a/code/modules/overmap/ships/controlled_ship_datum.dm b/code/modules/overmap/ships/controlled_ship_datum.dm index efa4e36026c0..cdd86ae2b0b5 100644 --- a/code/modules/overmap/ships/controlled_ship_datum.dm +++ b/code/modules/overmap/ships/controlled_ship_datum.dm @@ -78,6 +78,7 @@ return FALSE message_admins("[key_name_admin(usr)] renamed vessel '[oldname]' to '[new_name]'") log_admin("[key_name(src)] has renamed vessel '[oldname]' to '[new_name]'") + SSblackbox.record_feedback("text", "ship_renames", 1, new_name) shuttle_port?.name = new_name ship_account.account_holder = new_name if(shipkey) diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm index ad18b2bcd0b4..71112e012f77 100644 --- a/code/modules/paperwork/folders.dm +++ b/code/modules/paperwork/folders.dm @@ -12,7 +12,9 @@ var/static/list/folder_insertables = typecacheof(list( /obj/item/paper, /obj/item/photo, - /obj/item/documents + /obj/item/documents, + /obj/item/disk, + /obj/item/tape, )) /obj/item/folder/Initialize() diff --git a/code/modules/paperwork/folders_premade.dm b/code/modules/paperwork/folders_premade.dm index 5237358e34b1..e8f092f77161 100644 --- a/code/modules/paperwork/folders_premade.dm +++ b/code/modules/paperwork/folders_premade.dm @@ -81,3 +81,15 @@ /obj/item/folder/suns/red icon_state = "folder_sunsred" // i'm not sure why SUNS would need secret documents + +//pgf folders + +/obj/item/folder/pgf + desc = "A green folder with Pan Gezenan Federation iconography." + icon_state = "folder_pgf" + +/obj/item/folder/pgf/red + icon_state = "folder_pgfred" + +/obj/item/folder/pgf/blue + icon_state = "folder_pgfblue" diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 400366415d9a..9903beaf6ad8 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -29,7 +29,7 @@ #define PLASMA_TRANSMIT_MODIFIER 4 #define BZ_TRANSMIT_MODIFIER -2 #define TRITIUM_TRANSMIT_MODIFIER 30 //We divide by 10, so this works out to 3 -#define PLUOXIUM_TRANSMIT_MODIFIER -5 //Should halve the power output +#define OZONE_TRANSMIT_MODIFIER -5 //Should halve the power output #define H2O_TRANSMIT_MODIFIER -9 #define BZ_RADIOACTIVITY_MODIFIER 5 //Improves the effect of transmit modifiers @@ -154,7 +154,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) GAS_CO2, GAS_NITROUS, GAS_N2, - GAS_PLUOXIUM, + GAS_O3, GAS_TRITIUM, GAS_BZ, GAS_FREON, @@ -167,7 +167,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) GAS_CO2 = 0, GAS_NITROUS = 0, GAS_N2 = 0, - GAS_PLUOXIUM = 0, + GAS_O3 = 0, GAS_TRITIUM = 0, GAS_BZ = 0, GAS_FREON = 0, @@ -177,7 +177,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) GAS_O2 = OXYGEN_TRANSMIT_MODIFIER, GAS_H2O = H2O_TRANSMIT_MODIFIER, GAS_PLASMA = PLASMA_TRANSMIT_MODIFIER, - GAS_PLUOXIUM = PLUOXIUM_TRANSMIT_MODIFIER, + GAS_O3 = OZONE_TRANSMIT_MODIFIER, GAS_TRITIUM = TRITIUM_TRANSMIT_MODIFIER, GAS_BZ = BZ_TRANSMIT_MODIFIER, ) @@ -188,7 +188,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) GAS_PLASMA = PLASMA_HEAT_PENALTY, GAS_CO2 = CO2_HEAT_PENALTY, GAS_N2 = NITROGEN_HEAT_PENALTY, - GAS_PLUOXIUM = PLUOXIUM_HEAT_PENALTY, + GAS_O3 = PLUOXIUM_HEAT_PENALTY, GAS_TRITIUM = TRITIUM_HEAT_PENALTY, GAS_BZ = BZ_HEAT_PENALTY, GAS_FREON = FREON_HEAT_PENALTY, @@ -196,7 +196,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) ///The list of gases mapped against their heat resistance. We use it to moderate heat damage. var/list/gas_resist = list( GAS_NITROUS = N2O_HEAT_RESISTANCE, - GAS_PLUOXIUM = PLUOXIUM_HEAT_RESISTANCE, + GAS_O3 = PLUOXIUM_HEAT_RESISTANCE, ) ///The list of gases mapped against their powermix ratio var/list/gas_powermix = list( @@ -205,7 +205,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) GAS_PLASMA = 1, GAS_CO2 = 1, GAS_N2 = -1, - GAS_PLUOXIUM = -1, + GAS_O3 = -1, GAS_TRITIUM = 1, GAS_BZ = 1, GAS_FREON = -1, @@ -518,13 +518,13 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) var/list/resistance_mod = gases_we_care_about.Copy() //We're concerned about pluoxium being too easy to abuse at low percents, so we make sure there's a substantial amount. - var/pluoxiumbonus = (gas_comp[GAS_PLUOXIUM] >= 0.15) //makes pluoxium only work at 15%+ + var/pluoxiumbonus = (gas_comp[GAS_O3] >= 0.15) //makes pluoxium only work at 15%+ var/h2obonus = 1 - (gas_comp[GAS_H2O] * 0.25)//At max this value should be 0.75 var/freonbonus = (gas_comp[GAS_FREON] <= 0.03) //Let's just yeet power output if this shit is high - heat_mod[GAS_PLUOXIUM] = pluoxiumbonus - transit_mod[GAS_PLUOXIUM] = pluoxiumbonus - resistance_mod[GAS_PLUOXIUM] = pluoxiumbonus + heat_mod[GAS_O3] = pluoxiumbonus + transit_mod[GAS_O3] = pluoxiumbonus + resistance_mod[GAS_O3] = pluoxiumbonus //No less then zero, and no greater then one, we use this to do explosions and heat to power transfer //Be very careful with modifing this var by large amounts, and for the love of god do not push it past 1 diff --git a/code/modules/projectiles/boxes_magazines/_box_magazine.dm b/code/modules/projectiles/boxes_magazines/_box_magazine.dm index 9c0003fd4b5d..9606536d9f66 100644 --- a/code/modules/projectiles/boxes_magazines/_box_magazine.dm +++ b/code/modules/projectiles/boxes_magazines/_box_magazine.dm @@ -123,10 +123,10 @@ if(!can_load(user)) return - if(istype(attacking_obj, /obj/item/ammo_box/magazine/ammo_stack)) + if(istype(attacking_obj, /obj/item/ammo_box)) var/obj/item/ammo_box/attacking_box = attacking_obj for(var/obj/item/ammo_casing/casing_to_insert in attacking_box.stored_ammo) - if(!((instant_load && attacking_box.instant_load) || (stored_ammo.len >= max_ammo) || do_after(user, 0.5 SECONDS, attacking_box, timed_action_flags = IGNORE_USER_LOC_CHANGE))) + if(!((instant_load && attacking_box.instant_load) || (stored_ammo.len >= max_ammo) || istype(attacking_obj, /obj/item/ammo_box/magazine/ammo_stack) && do_after(user, 0.5 SECONDS, attacking_box, timed_action_flags = IGNORE_USER_LOC_CHANGE))) break var/did_load = give_round(casing_to_insert, replace_spent) if(!did_load) diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 3ba8ef7ec7ac..c23195c81c0f 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -1113,7 +1113,7 @@ GLOBAL_LIST_INIT(gun_saw_types, typecacheof(list( /obj/item/gun/energy/plasmacutter, - /obj/item/melee/transforming/energy, + /obj/item/melee/energy, ))) ///Handles all the logic of sawing off guns, diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm index c583354e7eea..debfc647e667 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/ballistic.dm @@ -14,7 +14,6 @@ desc = "Now comes in flavors like GUN. Uses 10mm ammo, for some reason." name = "projectile gun" w_class = WEIGHT_CLASS_NORMAL - has_safety = TRUE safety = TRUE @@ -234,7 +233,7 @@ to_chat(user, "There's already a [magazine_wording] in \the [src].") return - if(istype(A, /obj/item/ammo_casing) || istype(A, /obj/item/ammo_box/magazine/ammo_stack)) + if(istype(A, /obj/item/ammo_casing) || istype(A, /obj/item/ammo_box)) if (bolt_type == BOLT_TYPE_NO_BOLT || internal_magazine) if (chambered && !chambered.BB) chambered.on_eject(shooter = user) diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 4eba20701ac7..f4193723e8fd 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -67,9 +67,7 @@ default_ammo_type = FALSE if(default_ammo_type) - cell = new default_ammo_type(src) - if(spawn_no_ammo) - cell.use(cell.maxcharge) + cell = new default_ammo_type(src, spawn_no_ammo) update_ammo_types() recharge_newshot(TRUE) if(selfcharge) diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index 35adab3cd4a3..b472b40976c5 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -474,18 +474,57 @@ color = "#808080" // rgb: 128, 128, 128 taste_mult = 0 // oderless and tasteless +/datum/reagent/oxygen/dip_object(obj/item/I, mob/user, obj/item/reagent_containers/H) + . = ..() + var/obj/item/stock_parts/cell/current_cell + if(istype(I, /obj/item/stock_parts/cell)) + if(!current_cell.use(1)) + return + H.reagents.add_reagent(/datum/reagent/ozone, (H.reagents.remove_reagent(/datum/reagent/oxygen, 0.05*I.get_part_rating()))) + return TRUE + return + /datum/reagent/oxygen/expose_obj(obj/O, reac_volume) if((!O) || (!reac_volume)) return 0 var/temp = holder ? holder.chem_temp : T20C - O.atmos_spawn_air("o2=[reac_volume/2];TEMP=[temp]") + O.atmos_spawn_air("[GAS_O2]=[reac_volume/2];TEMP=[temp]") /datum/reagent/oxygen/expose_turf(turf/open/T, reac_volume) if(istype(T)) var/temp = holder ? holder.chem_temp : T20C - T.atmos_spawn_air("o2=[reac_volume/2];TEMP=[temp]") + T.atmos_spawn_air("[GAS_O2]=[reac_volume/2];TEMP=[temp]") + return + +/datum/reagent/ozone + name = "Ozone" + description = "A pale blue gas, with a distinct smell. While it is oxygen with an extra molecule attached, it is quite dangerous." + reagent_state = GAS + metabolization_rate = REAGENTS_METABOLISM * 0.5 + color = "#a1a1e6" + taste_mult = 0 + +/datum/reagent/ozone/on_mob_life(mob/living/carbon/M) + if(prob(30)) + M.adjustOrganLoss(ORGAN_SLOT_LUNGS,1*REM) + if(prob(40)) + M.adjustOrganLoss(ORGAN_SLOT_HEART,2*REM) + . = 1 + return ..() + +/datum/reagent/ozone/expose_obj(obj/exposed_object, reac_volume) + if((!exposed_object) || (!reac_volume)) + return 0 + var/temp = holder ? holder.chem_temp : T20C + exposed_object.atmos_spawn_air("[GAS_O3]=[reac_volume/2];TEMP=[temp]") + +/datum/reagent/ozone/expose_turf(turf/open/exposed_turf, reac_volume) + if(istype(exposed_turf)) + var/temp = holder ? holder.chem_temp : T20C + exposed_turf.atmos_spawn_air("[GAS_O3]=[reac_volume/2];TEMP=[temp]") return + /datum/reagent/copper name = "Copper" description = "A highly ductile metal. Things made out of copper aren't very durable, but it makes a decent material for electrical wiring." @@ -511,12 +550,12 @@ if((!O) || (!reac_volume)) return 0 var/temp = holder ? holder.chem_temp : T20C - O.atmos_spawn_air("n2=[reac_volume/2];TEMP=[temp]") + O.atmos_spawn_air("[GAS_N2]=[reac_volume/2];TEMP=[temp]") /datum/reagent/nitrogen/expose_turf(turf/open/T, reac_volume) if(istype(T)) var/temp = holder ? holder.chem_temp : T20C - T.atmos_spawn_air("n2=[reac_volume/2];TEMP=[temp]") + T.atmos_spawn_air("[GAS_N2]=[reac_volume/2];TEMP=[temp]") return /datum/reagent/hydrogen @@ -549,7 +588,7 @@ name = "Sulfur" description = "A sickly yellow solid mostly known for its nasty smell. It's actually much more helpful than it looks in biochemisty." reagent_state = SOLID - color = "#BF8C00" // rgb: 191, 140, 0 + color = "#f0e518" taste_description = "rotten eggs" /datum/reagent/carbon @@ -599,12 +638,12 @@ if((!exposed_object) || (!reac_volume)) return 0 var/temp = holder ? holder.chem_temp : T20C - exposed_object.atmos_spawn_air("cl2=[reac_volume/2];TEMP=[temp]") + exposed_object.atmos_spawn_air("[GAS_CHLORINE]=[reac_volume/2];TEMP=[temp]") /datum/reagent/chlorine/expose_turf(turf/open/exposed_turf, reac_volume) if(istype(exposed_turf)) var/temp = holder ? holder.chem_temp : T20C - exposed_turf.atmos_spawn_air("cl2=[reac_volume/2];TEMP=[temp]") + exposed_turf.atmos_spawn_air("[GAS_CHLORINE]=[reac_volume/2];TEMP=[temp]") return /datum/reagent/hydrogen_chloride @@ -626,12 +665,12 @@ if((!exposed_object) || (!reac_volume)) return 0 var/temp = holder ? holder.chem_temp : T20C - exposed_object.atmos_spawn_air("hcl=[reac_volume/2];TEMP=[temp]") + exposed_object.atmos_spawn_air("[GAS_HYDROGEN_CHLORIDE]=[reac_volume/2];TEMP=[temp]") /datum/reagent/hydrogen_chloride/expose_turf(turf/open/exposed_turf, reac_volume) if(istype(exposed_turf)) var/temp = holder ? holder.chem_temp : T20C - exposed_turf.atmos_spawn_air("hcl=[reac_volume/2];TEMP=[temp]") + exposed_turf.atmos_spawn_air("[GAS_HYDROGEN_CHLORIDE]=[reac_volume/2];TEMP=[temp]") return /datum/reagent/fluorine @@ -1085,12 +1124,12 @@ if((!O) || (!reac_volume)) return 0 var/temp = holder ? holder.chem_temp : T20C - O.atmos_spawn_air("co2=[reac_volume/5];TEMP=[temp]") + O.atmos_spawn_air("[GAS_CO2]=[reac_volume/5];TEMP=[temp]") /datum/reagent/carbondioxide/expose_turf(turf/open/T, reac_volume) if(istype(T)) var/temp = holder ? holder.chem_temp : T20C - T.atmos_spawn_air("co2=[reac_volume/5];TEMP=[temp]") + T.atmos_spawn_air("[GAS_CO2]=[reac_volume/5];TEMP=[temp]") return // This is more bad ass, and pests get hurt by the corrosive nature of it, not the plant. The new trade off is it culls stability. @@ -1115,12 +1154,12 @@ if((!O) || (!reac_volume)) return 0 var/temp = holder ? holder.chem_temp : T20C - O.atmos_spawn_air("n2o=[reac_volume/5];TEMP=[temp]") + O.atmos_spawn_air("[GAS_NITROUS]=[reac_volume/5];TEMP=[temp]") /datum/reagent/nitrous_oxide/expose_turf(turf/open/T, reac_volume) if(istype(T)) var/temp = holder ? holder.chem_temp : T20C - T.atmos_spawn_air("n2o=[reac_volume/5];TEMP=[temp]") + T.atmos_spawn_air("[GAS_NITROUS]=[reac_volume/5];TEMP=[temp]") /datum/reagent/nitrous_oxide/expose_mob(mob/living/M, method=TOUCH, reac_volume) if(method == VAPOR) @@ -1136,6 +1175,80 @@ M.confused = min(M.confused + 2, 5) ..() +/datum/reagent/carbon_monoxide + name = "Carbon Monoxide" + description = "A highly dangerous gas for sapients." + reagent_state = GAS + metabolization_rate = REAGENTS_METABOLISM + color = "#96898c" + var/accumulation + +/datum/reagent/carbon_monoxide/on_mob_life(mob/living/carbon/victim) + if(holder.has_reagent(/datum/reagent/oxygen)) + holder.remove_reagent(/datum/reagent/carbon_monoxide, 2*REM) + accumulation = accumulation/4 + + accumulation += volume + switch(accumulation) + if(10 to 50) + to_chat(src, span_warning("You feel dizzy.")) + if(50 to 150) + to_chat(victim, span_warning("[pick("Your head hurts.", "Your head pounds.")]")) + victim.Dizzy(5) + if(150 to 250) + to_chat(victim, span_userdanger("[pick("Your head hurts!", "You feel a burning knife inside your brain!", "A wave of pain fills your head!")]")) + victim.Stun(10) + victim.Dizzy(5) + victim.confused = (accumulation/50) + victim.gain_trauma(/datum/brain_trauma/mild/monoxide_poisoning_stage1) + + if(250 to 350) + to_chat(victim, span_userdanger("[pick("What were you doing...?", "Where are you...?", "What's going on...?")]")) + victim.adjustStaminaLoss(3) + + victim.Dizzy(5) + victim.confused = (accumulation/50) + victim.drowsyness = (accumulation/50) + + victim.adjustToxLoss(accumulation/100*REM, 0) + + victim.gain_trauma(/datum/brain_trauma/mild/monoxide_poisoning_stage2) + + if(350 to 1000) + victim.Unconscious(20 SECONDS) + + victim.drowsyness += (accumulation/100) + victim.adjustToxLoss(accumulation/100*REM, 0) + if(1000 to INFINITY) //anti salt measure, if they reach this, just fucking kill them at this point + victim.death() + victim.cure_trauma_type(/datum/brain_trauma/mild/monoxide_poisoning_stage1) + victim.cure_trauma_type(/datum/brain_trauma/mild/monoxide_poisoning_stage2) + + qdel(src) + return TRUE + accumulation -= (metabolization_rate * victim.metabolism_efficiency) + if(accumulation < 0) + holder.remove_reagent(/datum/reagent/carbon_monoxide, volume) + return TRUE //to avoid a runtime + return ..() + +/datum/reagent/carbon_monoxide/expose_obj(obj/O, reac_volume) + if((!O) || (!reac_volume)) + return FALSE + var/temp = holder ? holder.chem_temp : T20C + O.atmos_spawn_air("[GAS_CO]=[reac_volume/2];TEMP=[temp]") + +/datum/reagent/carbon_monoxide/expose_turf(turf/open/T, reac_volume) + if(istype(T)) + var/temp = holder ? holder.chem_temp : T20C + T.atmos_spawn_air("[GAS_CO]=[reac_volume/2];TEMP=[temp]") + return + +/datum/reagent/carbon_monoxide/on_mob_delete(mob/living/living_mob) + var/mob/living/carbon/living_carbon = living_mob + living_carbon.cure_trauma_type(/datum/brain_trauma/mild/monoxide_poisoning_stage1) + living_carbon.cure_trauma_type(/datum/brain_trauma/mild/monoxide_poisoning_stage2) + /datum/reagent/stimulum name = "Stimulum" description = "An unstable experimental gas that greatly increases the energy of those that inhale it." //WS Edit -- No longer references toxin damage. @@ -2506,3 +2619,29 @@ M.adjust_disgust(4) ..() . = 1 + +/datum/reagent/sulfur_dioxide + name = "Sulfur Dioxide" + description = "A transparent gas produced by geological activity and burning certain fuels." + reagent_state = GAS + color = "#f0e518" + taste_mult = 0 // tasteless + +/datum/reagent/sulfur_dioxide/on_mob_life(mob/living/carbon/M) + M.adjustOxyLoss(1*REM, 0) + if(prob(40)) + M.adjustOrganLoss(ORGAN_SLOT_LUNGS,1*REM) + . = 1 + ..() + +/datum/reagent/sulfur_dioxide/expose_obj(obj/exposed_object, reac_volume) + if((!exposed_object) || (!reac_volume)) + return 0 + var/temp = holder ? holder.chem_temp : T20C + exposed_object.atmos_spawn_air("[GAS_SO2]=[reac_volume/2];TEMP=[temp]") + +/datum/reagent/sulfur_dioxide/expose_turf(turf/open/exposed_turf, reac_volume) + if(istype(exposed_turf)) + var/temp = holder ? holder.chem_temp : T20C + exposed_turf.atmos_spawn_air("[GAS_SO2]=[reac_volume/2];TEMP=[temp]") + return diff --git a/code/modules/surgery/advanced/lobotomy.dm b/code/modules/surgery/advanced/lobotomy.dm index 0807e1e5c8cc..501cad86da4e 100644 --- a/code/modules/surgery/advanced/lobotomy.dm +++ b/code/modules/surgery/advanced/lobotomy.dm @@ -25,7 +25,7 @@ name = "perform lobotomy" implements = list( TOOL_SCALPEL = 85, // there is no way this should be reasonable to do basically at all without a real surgery. ghetto lobotomy, for real? - /obj/item/melee/transforming/energy/sword = 25, + /obj/item/melee/energy/sword = 25, /obj/item/melee/knife = 15, /obj/item/shard = 10, /obj/item = 5) diff --git a/code/modules/surgery/gastrectomy.dm b/code/modules/surgery/gastrectomy.dm index 6d00f5ae7588..201e9125c06f 100644 --- a/code/modules/surgery/gastrectomy.dm +++ b/code/modules/surgery/gastrectomy.dm @@ -24,7 +24,7 @@ name = "remove lower duodenum" implements = list( TOOL_SCALPEL = 95, - /obj/item/melee/transforming/energy/sword = 33, + /obj/item/melee/energy/sword = 33, /obj/item/melee/knife = 40, /obj/item/shard = 10) time = 52 diff --git a/code/modules/surgery/hepatectomy.dm b/code/modules/surgery/hepatectomy.dm index 0571cf9b2397..b5b017831d77 100644 --- a/code/modules/surgery/hepatectomy.dm +++ b/code/modules/surgery/hepatectomy.dm @@ -23,7 +23,7 @@ name = "remove damaged liver section" implements = list( TOOL_SCALPEL = 95, - /obj/item/melee/transforming/energy/sword = 33, + /obj/item/melee/energy/sword = 33, /obj/item/melee/knife = 40, /obj/item/shard = 25) time = 52 diff --git a/code/modules/surgery/lobectomy.dm b/code/modules/surgery/lobectomy.dm index 79d3d79bcee5..9e9b8e5241a0 100644 --- a/code/modules/surgery/lobectomy.dm +++ b/code/modules/surgery/lobectomy.dm @@ -22,7 +22,7 @@ name = "excise damaged lung node" implements = list( TOOL_SCALPEL = 95, - /obj/item/melee/transforming/energy/sword = 33, + /obj/item/melee/energy/sword = 33, /obj/item/melee/knife = 40, /obj/item/shard = 25) time = 4.2 SECONDS diff --git a/code/modules/surgery/mechanical.dm b/code/modules/surgery/mechanical.dm index 0c73c34bd0c7..2cf72dab1731 100644 --- a/code/modules/surgery/mechanical.dm +++ b/code/modules/surgery/mechanical.dm @@ -33,14 +33,14 @@ TOOL_CAUTERY = 60, TOOL_HEMOSTAT = 60, TOOL_RETRACTOR = 60, - /obj/item/melee/transforming/energy = 40, + /obj/item/melee/energy = 40, /obj/item/gun/energy/laser = 20) time = 2 SECONDS missinghpbonus = 10 /datum/surgery_step/heal/mechanic/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) var/repairtype - if(tool.tool_behaviour == TOOL_WELDER || tool.tool_behaviour == TOOL_CAUTERY || istype(tool, /obj/item/melee/transforming/energy) || istype(tool, /obj/item/gun/energy/laser)) + if(tool.tool_behaviour == TOOL_WELDER || tool.tool_behaviour == TOOL_CAUTERY || istype(tool, /obj/item/melee/energy) || istype(tool, /obj/item/gun/energy/laser)) brutehealing = 5 burnhealing = 0 repairtype = "dents" diff --git a/code/modules/surgery/organic_steps.dm b/code/modules/surgery/organic_steps.dm index 39fb1d71b258..a3df7efc62ae 100644 --- a/code/modules/surgery/organic_steps.dm +++ b/code/modules/surgery/organic_steps.dm @@ -4,7 +4,7 @@ name = "make incision" implements = list( TOOL_SCALPEL = 100, - /obj/item/melee/transforming/energy/sword = 40, + /obj/item/melee/energy/sword = 40, /obj/item/melee/knife = 40, /obj/item/shard = 25, /obj/item = 15) //any sharp item diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index 665086d1981d..27ccf1421a3f 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -242,7 +242,7 @@ /obj/item/organ/cyberimp/arm/esword name = "arm-mounted energy blade" desc = "An illegal and highly dangerous cybernetic implant that can project a deadly blade of concentrated energy." - items_to_create = list(/obj/item/melee/transforming/energy/blade/hardlight) + items_to_create = list(/obj/item/melee/energy/blade/hardlight) /obj/item/organ/cyberimp/arm/medibeam name = "integrated medical beamgun" @@ -280,7 +280,7 @@ /obj/item/organ/cyberimp/arm/combat name = "combat cybernetics implant" desc = "A powerful cybernetic implant that contains combat modules built into the user's arm." - items_to_create = list(/obj/item/melee/transforming/energy/blade/hardlight, /obj/item/gun/medbeam, /obj/item/borg/stun, /obj/item/assembly/flash/armimplant) + items_to_create = list(/obj/item/melee/energy/blade/hardlight, /obj/item/gun/medbeam, /obj/item/borg/stun, /obj/item/assembly/flash/armimplant) /obj/item/organ/cyberimp/arm/combat/Initialize() . = ..() diff --git a/code/modules/surgery/organs/lungs.dm b/code/modules/surgery/organs/lungs.dm index f6af39b201c0..e522449b7101 100644 --- a/code/modules/surgery/organs/lungs.dm +++ b/code/modules/surgery/organs/lungs.dm @@ -248,36 +248,18 @@ H.hallucination += 5 H.reagents.add_reagent(/datum/reagent/bz_metabolites,1) - // Nitryl - var/nitryl_pp = PP(breath,GAS_NITRYL) - if (prob(nitryl_pp)) - to_chat(H, "Your mouth feels like it's burning!") - if (nitryl_pp >40) - H.emote("gasp") - H.adjustFireLoss(10) - if (prob(nitryl_pp/2)) - to_chat(H, "Your throat closes up!") - H.silent = max(H.silent, 3) - else - H.adjustFireLoss(nitryl_pp/4) - gas_breathed = breath.get_moles(GAS_NITRYL) - if (gas_breathed > gas_stimulation_min) - H.reagents.add_reagent(/datum/reagent/nitryl,1) - - breath.adjust_moles(GAS_NITRYL, -gas_breathed) - // Freon var/freon_pp = PP(breath,GAS_FREON) - if (prob(nitryl_pp)) + if (prob(freon_pp)) to_chat(H, "Your mouth feels like it's burning!") if (freon_pp >40) H.emote("gasp") - H.adjustFireLoss(15) + H.adjustOxyLoss(15) if (prob(freon_pp/2)) to_chat(H, "Your throat closes up!") H.silent = max(H.silent, 3) else - H.adjustFireLoss(freon_pp/4) + H.adjustOxyLoss(freon_pp/4) gas_breathed = breath.get_moles(GAS_FREON) if (gas_breathed > gas_stimulation_min) H.reagents.add_reagent(/datum/reagent/freon,1) @@ -287,15 +269,15 @@ // Chlorine var/chlorine_pp = PP(breath,GAS_CHLORINE) if (prob(chlorine_pp)) - to_chat(H, "Your lungs feel awful!") - if (chlorine_pp >40) + to_chat(H, span_alert("Your lungs feel awful!")) + if (chlorine_pp >20) H.emote("gasp") - H.adjustFireLoss(5) + H.adjustOxyLoss(5) if (prob(chlorine_pp/2)) - to_chat(H, "Your throat closes up!") + to_chat(H, span_alert("Your throat closes up!")) H.silent = max(H.silent, 3) else - H.adjustFireLoss(round(chlorine_pp/8)) + H.adjustOxyLoss(round(chlorine_pp/8)) gas_breathed = breath.get_moles(GAS_CHLORINE) if (gas_breathed > gas_stimulation_min) H.reagents.add_reagent(/datum/reagent/chlorine,1) @@ -304,24 +286,138 @@ // Hydrogen Chloride var/hydrogen_chloride_pp = PP(breath,GAS_HYDROGEN_CHLORIDE) if (prob(hydrogen_chloride_pp)) - to_chat(H, "Your lungs feel terrible!") + to_chat(H, span_alert("Your lungs feel terrible!")) if (hydrogen_chloride_pp >20) H.emote("gasp") - H.adjustFireLoss(10) + H.adjustOxyLoss(10) if (prob(hydrogen_chloride_pp/2)) - to_chat(H, "Your throat closes up!") + to_chat(H, span_alert("Your throat closes up!")) H.silent = max(H.silent, 3) else - H.adjustFireLoss(round(hydrogen_chloride_pp/4)) + H.adjustOxyLoss(round(hydrogen_chloride_pp/4)) if (gas_breathed > gas_stimulation_min) H.reagents.add_reagent(/datum/reagent/hydrogen_chloride) - // Stimulum - gas_breathed = PP(breath,GAS_STIMULUM) + // Carbon Monoxide + var/carbon_monoxide_pp = PP(breath,GAS_CO) + if (carbon_monoxide_pp > gas_stimulation_min) + H.reagents.add_reagent(/datum/reagent/carbon_monoxide, 1) + var/datum/reagent/carbon_monoxide/monoxide_reagent = H.reagents.has_reagent(/datum/reagent/carbon_monoxide) + if(monoxide_reagent.volume > 10) + monoxide_reagent.metabolization_rate = (10 - carbon_monoxide_pp) + else + monoxide_reagent.metabolization_rate = monoxide_reagent::metabolization_rate + switch(carbon_monoxide_pp) + if (0 to 20) + monoxide_reagent.accumulation = min(monoxide_reagent.accumulation,50) + if (20 to 100) + monoxide_reagent.accumulation = min(monoxide_reagent.accumulation, 150) + H.reagents.add_reagent(/datum/reagent/carbon_monoxide,2) + if (100 to 200) + monoxide_reagent.accumulation = min(monoxide_reagent.accumulation, 250) + H.reagents.add_reagent(/datum/reagent/carbon_monoxide,4) + if (200 to 400) + monoxide_reagent.accumulation = min(monoxide_reagent.accumulation, 250) + H.reagents.add_reagent(/datum/reagent/carbon_monoxide,8) + if (400 to INFINITY) + monoxide_reagent.accumulation = max(monoxide_reagent.accumulation, 450) + H.reagents.add_reagent(/datum/reagent/carbon_monoxide,16) + else + var/datum/reagent/carbon_monoxide/monoxide_reagent = H.reagents.has_reagent(/datum/reagent/carbon_monoxide) + if(monoxide_reagent) + monoxide_reagent.accumulation = min(monoxide_reagent.accumulation, 150) + monoxide_reagent.metabolization_rate = 10 //purges 10 per tick + + // Sulfur Dioxide + var/sulfur_dioxide_pp = PP(breath,GAS_SO2) + if (prob(sulfur_dioxide_pp) && !HAS_TRAIT(H, TRAIT_ANALGESIA)) + to_chat(H, span_alert("It hurts to breath.")) + if (sulfur_dioxide_pp >40) + H.emote("gasp") + H.adjustOxyLoss(5) + if (prob(sulfur_dioxide_pp/2)) + to_chat(H, span_alert("Your throat closes up!")) + H.silent = max(H.silent, 3) + else + H.adjustOxyLoss(round(sulfur_dioxide_pp/8)) + gas_breathed = breath.get_moles(GAS_SO2) + if (gas_breathed > gas_stimulation_min) + H.reagents.add_reagent(/datum/reagent/sulfur_dioxide,1) + + // Ozone + var/ozone_pp = PP(breath,GAS_O3) + if (prob(ozone_pp)) + to_chat(H, span_alert("Your heart feels funny.")) + if (ozone_pp >40) + H.emote("gasp") + H.adjustOxyLoss(5) + if (prob(ozone_pp/2)) + to_chat(H, span_alert("Your throat closes up!")) + H.silent = max(H.silent, 3) + gas_breathed = breath.get_moles(GAS_O3) + if (gas_breathed > gas_stimulation_min) + H.reagents.add_reagent(/datum/reagent/ozone,1) + + // Ammonia + var/ammonia_pp = PP(breath,GAS_AMMONIA) + if (prob(ammonia_pp)*2) + to_chat(H, span_alert("Your lungs feel terrible!")) + + if (ammonia_pp > 10) + H.emote("gasp") + H.adjustOxyLoss(5) + H.adjustOxyLoss(round(ammonia_pp/8)) + if (prob(ammonia_pp/2)) + to_chat(H, span_alert("Your throat burns!")) + H.silent = max(H.silent, 2) + else + H.adjustOxyLoss(round(ammonia_pp/8)) + gas_breathed = breath.get_moles(GAS_AMMONIA) if (gas_breathed > gas_stimulation_min) - var/existing = H.reagents.get_reagent_amount(/datum/reagent/stimulum) - H.reagents.add_reagent(/datum/reagent/stimulum, max(0, 5 - existing)) - breath.adjust_moles(GAS_STIMULUM, -gas_breathed) + if(prob(25))//unlike the chlorine reagent ammonia doesnt do lung damage do we handle it here instead + H.adjustOrganLoss(ORGAN_SLOT_LUNGS,2*1.6) + //ammonia is actually disposed of naturally by humans, but extremely poorly by non mammals, maybe we can make it toxic ONLY to certain species (plural) sometime? + H.reagents.add_reagent(/datum/reagent/ammonia,1) + + handle_smell(breath, H) + +///handles the smell a few gases have +/obj/item/organ/lungs/proc/handle_smell(datum/gas_mixture/breath, mob/living/carbon/human/H) + var/pressure = breath.return_pressure() + var/total_moles = breath.total_moles() + + var/list/gases_id = breath.get_gases() + var/list/gases = list() + + for(var/ID as anything in gases_id) + LAZYADD(gases, GLOB.gas_data.datums[ID]) + for(var/datum/gas/checked_gas as anything in gases) + if(!istype(checked_gas)) + continue + if(!checked_gas.odor_power || !checked_gas.odor) + continue + + var/odor_pp = PP(breath,checked_gas.id) * checked_gas.odor_power + + if(odor_pp > 8) //level 3 + if(checked_gas.odor[4]) + to_chat(H, checked_gas.odor[4]) + if(checked_gas.odor_emotes && prob(20)) + H.emote("cough") + + else if(odor_pp > 2) //level 2 + if(checked_gas.odor[3]) + to_chat(H, checked_gas.odor[3]) + if(checked_gas.odor_emotes && prob(5)) + H.emote("cough") + + else if(odor_pp > gas_stimulation_min) //level 1 + if(checked_gas.odor[2]) + to_chat(H, checked_gas.odor[2]) // danger becuse this might be over safety threshold in the case of ammonia + + else if (prob(odor_pp)*20) //level 0 + if(checked_gas.odor[1]) + to_chat(H, checked_gas.odor[1]) /obj/item/organ/lungs/proc/handle_too_little_breath(mob/living/carbon/human/H = null, breath_pp = 0, safe_breath_min = 0, true_pp = 0) . = 0 diff --git a/code/modules/unit_tests/_unit_tests.dm b/code/modules/unit_tests/_unit_tests.dm index 5364a69c3483..3195d86e7fb7 100644 --- a/code/modules/unit_tests/_unit_tests.dm +++ b/code/modules/unit_tests/_unit_tests.dm @@ -69,7 +69,6 @@ #define TEST_OUTPUT_GREEN(text) (text) #endif - #ifdef BASIC_TESTS #include "icons/inhands.dm" diff --git a/code/modules/unit_tests/icons/inhands.dm b/code/modules/unit_tests/icons/inhands.dm index dc05295203e6..b3e5265e2f0b 100644 --- a/code/modules/unit_tests/icons/inhands.dm +++ b/code/modules/unit_tests/icons/inhands.dm @@ -26,7 +26,7 @@ //Add EVEN MORE paths if needed here! //generate_possible_icon_states_list("your/folder/path/inhands/") - for(var/obj/item/item_path as anything in subtypesof(/obj/item)) + for(var/obj/item/item_path as anything in (subtypesof(/obj/item))) if(initial(item_path.item_flags) & ABSTRACT) continue diff --git a/code/modules/unit_tests/icons/missing_icons.dm b/code/modules/unit_tests/icons/missing_icons.dm index f548d2844a0f..36343da89c25 100644 --- a/code/modules/unit_tests/icons/missing_icons.dm +++ b/code/modules/unit_tests/icons/missing_icons.dm @@ -54,4 +54,3 @@ for(var/file_place in possible_icon_states[icon_state]) match_message += (match_message ? " & '[file_place]'" : " - Matching sprite found in: '[file_place]'") TEST_FAIL("Missing icon_state for [obj_path] in '[icon]'.\n\ticon_state = \"[icon_state]\"[match_message]") - diff --git a/code/modules/unit_tests/outfit_sanity.dm b/code/modules/unit_tests/outfit_sanity.dm index 8e85797e713e..6fc875d94837 100644 --- a/code/modules/unit_tests/outfit_sanity.dm +++ b/code/modules/unit_tests/outfit_sanity.dm @@ -74,5 +74,4 @@ else TEST_NOTICE(src, "[outfit.name]'s backpack_contents are invalid! Couldn't add [path] to backpack.") - #undef CHECK_OUTFIT_SLOT diff --git a/code/modules/uplink/uplink_items.dm b/code/modules/uplink/uplink_items.dm index ef38d21a7740..b10fd114db61 100644 --- a/code/modules/uplink/uplink_items.dm +++ b/code/modules/uplink/uplink_items.dm @@ -360,7 +360,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) name = "Bananium Energy Sword" desc = "An energy sword that deals no damage, but will slip anyone it contacts, be it by melee attack, thrown \ impact, or just stepping on it. Beware friendly fire, as even anti-slip shoes will not protect against it." - item = /obj/item/melee/transforming/energy/sword/bananium + item = /obj/item/melee/energy/sword/bananium cost = 3 surplus = 0 include_modes = list(/datum/game_mode/nuclear/clown_ops) @@ -417,7 +417,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) name = "Energy Sword" desc = "The energy sword is an edged weapon with a blade of pure energy. The sword is small enough to be \ pocketed when inactive. Activating it produces a loud, distinctive noise." - item = /obj/item/melee/transforming/energy/sword/saber + item = /obj/item/melee/energy/sword/saber cost = 8 exclude_modes = list(/datum/game_mode/nuclear/clown_ops) diff --git a/code/modules/vending/_vending.dm b/code/modules/vending/_vending.dm index 0724b7233ef9..b2fe73f5e4bc 100644 --- a/code/modules/vending/_vending.dm +++ b/code/modules/vending/_vending.dm @@ -800,7 +800,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C if(payment_account) payment_account.transfer_money(account, price_to_use) else - account.adjust_money(-price_to_use, "vendor_purchase") + account.adjust_money(-price_to_use, CREDIT_LOG_VENDOR_PURCHASE) SSblackbox.record_feedback("amount", "vending_spent", price_to_use) log_econ("[price_to_use] credits were inserted into [src] by [H] to buy [R].") if(last_shopper != REF(usr) || purchase_message_cooldown < world.time) @@ -1032,7 +1032,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C if(owner) owner.transfer_money(account, S.custom_price) else - account.adjust_money(-S.custom_price, "vendor_purchase") + account.adjust_money(-S.custom_price, CREDIT_LOG_VENDOR_PURCHASE) SSblackbox.record_feedback("amount", "vending_spent", S.custom_price) log_econ("[S.custom_price] credits were spent on [src] buying a [S] by [owner.account_holder], owned by [private_a.account_holder].") vending_machine_input[N] = max(vending_machine_input[N] - 1, 0) diff --git a/html/changelogs/AutoChangeLog-pr-3399.yml b/html/changelogs/AutoChangeLog-pr-3399.yml new file mode 100644 index 000000000000..0e803d118349 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3399.yml @@ -0,0 +1,5 @@ +author: Erikafox +changes: + - {rscadd: A new PGFN vessel has entered the frontier - the Elated Bolide class + makes a bright entry into the local system.} +delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3649.yml b/html/changelogs/AutoChangeLog-pr-3649.yml new file mode 100644 index 000000000000..cd733a07c9e8 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3649.yml @@ -0,0 +1,4 @@ +author: SomeguyManperson +changes: + - {bugfix: strippers and speedloaders for rifles now work again} +delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3663.yml b/html/changelogs/AutoChangeLog-pr-3663.yml deleted file mode 100644 index e9cbe3e48dfb..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3663.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: thgvr -changes: - - {imageadd: Updated world icons for knives} -delete-after: true diff --git a/html/changelogs/archive/2024-10.yml b/html/changelogs/archive/2024-10.yml index 4e4bc99d2b7f..00628fe7d833 100644 --- a/html/changelogs/archive/2024-10.yml +++ b/html/changelogs/archive/2024-10.yml @@ -425,3 +425,38 @@ Sadhorizon: - rscadd: A new sand ruin - the E-11 Manufacturing Plant - and associated code. - rscadd: A purple hardhat. +2024-10-29: + FalloutFalcon: + - rscdel: Removed some ancient away mission cruft + - code_imp: flaky tests can now comment under its own prs. + FalloutFalcon, Melbert: + - refactor: transforming weapons are easier to add + MarkSuckerberg: + - server: Logs a few more stats for use in the Statbus at https://shiptest.net/stats + thgvr: + - imageadd: Updated world icons for knives +2024-10-30: + Erikafox: + - rscadd: Some planets now have new lighting values. Please report back on if they + are "Pleasant" + rye-rice: + - rscadd: You can now detect certain gases from smell, most notably plasma + - rscadd: Adds 6 new gases, all unused at the moment + - rscdel: 3 gases, Pluox, Nitryl, and Stimming + - balance: The noble gas suppresssion threshold has been increased from 10 mols + to 75 mols + - balance: Various gases have had their enthalpy (energy released during fires) + adjusted, changing the behavior of gas fires slightly. + - balance: Plasma is a much more potent skin/eye irritant + - balance: Hydrogen gas is no longer visible + - bugfix: Freon's stage one breath effects should work now, before they were tied + to nitryl's amount + rye-rice, Jedi Toothpaste: + - rscadd: adds Beagle Mug + - rscadd: adds Beagle Mug to Atlas Class +2024-10-31: + Gristlebee: + - rscadd: Indie Viper guncase comes with 2 speedloaders. + SomeguyManperson: + - code_imp: empty energy weapons now get emptied slightly differently, no player-facing + changes diff --git a/icons/mob/inhands/64x64_lefthand.dmi b/icons/mob/inhands/64x64_lefthand.dmi index 50a17a22d470..64efd1262a22 100644 Binary files a/icons/mob/inhands/64x64_lefthand.dmi and b/icons/mob/inhands/64x64_lefthand.dmi differ diff --git a/icons/mob/inhands/64x64_righthand.dmi b/icons/mob/inhands/64x64_righthand.dmi index bbeddf915282..e91c7830c614 100644 Binary files a/icons/mob/inhands/64x64_righthand.dmi and b/icons/mob/inhands/64x64_righthand.dmi differ diff --git a/icons/mob/inhands/weapons/axes_lefthand.dmi b/icons/mob/inhands/weapons/axes_lefthand.dmi index 3b95d17cdc78..584ca2b2290e 100644 Binary files a/icons/mob/inhands/weapons/axes_lefthand.dmi and b/icons/mob/inhands/weapons/axes_lefthand.dmi differ diff --git a/icons/mob/inhands/weapons/axes_righthand.dmi b/icons/mob/inhands/weapons/axes_righthand.dmi index 1f5273d20d30..8a29d67a8871 100644 Binary files a/icons/mob/inhands/weapons/axes_righthand.dmi and b/icons/mob/inhands/weapons/axes_righthand.dmi differ diff --git a/icons/mob/inhands/weapons/chainsaw_lefthand.dmi b/icons/mob/inhands/weapons/chainsaw_lefthand.dmi index 5235f1510102..658f772c9c75 100644 Binary files a/icons/mob/inhands/weapons/chainsaw_lefthand.dmi and b/icons/mob/inhands/weapons/chainsaw_lefthand.dmi differ diff --git a/icons/mob/inhands/weapons/chainsaw_righthand.dmi b/icons/mob/inhands/weapons/chainsaw_righthand.dmi index 0800a5273156..21035a077de9 100644 Binary files a/icons/mob/inhands/weapons/chainsaw_righthand.dmi and b/icons/mob/inhands/weapons/chainsaw_righthand.dmi differ diff --git a/icons/mob/inhands/weapons/polearms_lefthand.dmi b/icons/mob/inhands/weapons/polearms_lefthand.dmi index afe36277e9f5..f7a1aa75a665 100644 Binary files a/icons/mob/inhands/weapons/polearms_lefthand.dmi and b/icons/mob/inhands/weapons/polearms_lefthand.dmi differ diff --git a/icons/mob/inhands/weapons/polearms_righthand.dmi b/icons/mob/inhands/weapons/polearms_righthand.dmi index b72556f0b135..1fae6b8eb45d 100644 Binary files a/icons/mob/inhands/weapons/polearms_righthand.dmi and b/icons/mob/inhands/weapons/polearms_righthand.dmi differ diff --git a/icons/mob/inhands/weapons/staves_lefthand.dmi b/icons/mob/inhands/weapons/staves_lefthand.dmi index da61d8df47ea..151e9645b371 100644 Binary files a/icons/mob/inhands/weapons/staves_lefthand.dmi and b/icons/mob/inhands/weapons/staves_lefthand.dmi differ diff --git a/icons/mob/inhands/weapons/staves_righthand.dmi b/icons/mob/inhands/weapons/staves_righthand.dmi index 3cb569627eaa..8df69b74cc36 100644 Binary files a/icons/mob/inhands/weapons/staves_righthand.dmi and b/icons/mob/inhands/weapons/staves_righthand.dmi differ diff --git a/icons/mob/inhands/weapons/swords_lefthand.dmi b/icons/mob/inhands/weapons/swords_lefthand.dmi index 49732e254e41..fc5ed5ee90b2 100644 Binary files a/icons/mob/inhands/weapons/swords_lefthand.dmi and b/icons/mob/inhands/weapons/swords_lefthand.dmi differ diff --git a/icons/mob/inhands/weapons/swords_righthand.dmi b/icons/mob/inhands/weapons/swords_righthand.dmi index 93a806555870..6e04504c3fb7 100644 Binary files a/icons/mob/inhands/weapons/swords_righthand.dmi and b/icons/mob/inhands/weapons/swords_righthand.dmi differ diff --git a/icons/mob/pets.dmi b/icons/mob/pets.dmi index ec6900432306..28ace37f4170 100644 Binary files a/icons/mob/pets.dmi and b/icons/mob/pets.dmi differ diff --git a/icons/obj/bureaucracy.dmi b/icons/obj/bureaucracy.dmi index ab9af894d43e..f1f583593bc6 100644 Binary files a/icons/obj/bureaucracy.dmi and b/icons/obj/bureaucracy.dmi differ diff --git a/icons/obj/drinks/drinks.dmi b/icons/obj/drinks/drinks.dmi index 2ab3cd0db5ef..67447e75ee3d 100644 Binary files a/icons/obj/drinks/drinks.dmi and b/icons/obj/drinks/drinks.dmi differ diff --git a/icons/obj/lavaland/artefacts.dmi b/icons/obj/lavaland/artefacts.dmi index 6793b0c10cb8..4239f83aa0e9 100644 Binary files a/icons/obj/lavaland/artefacts.dmi and b/icons/obj/lavaland/artefacts.dmi differ diff --git a/icons/obj/nutanks.dmi b/icons/obj/nutanks.dmi index 94e4c7288512..b8a584ef4609 100644 Binary files a/icons/obj/nutanks.dmi and b/icons/obj/nutanks.dmi differ diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi index 5353677357cf..f5f101c276af 100644 Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ diff --git a/icons/obj/surgery.dmi b/icons/obj/surgery.dmi index 816d3671a8d9..e213c294d669 100644 Binary files a/icons/obj/surgery.dmi and b/icons/obj/surgery.dmi differ diff --git a/icons/obj/weapon/axe.dmi b/icons/obj/weapon/axe.dmi index 0ff8a4364833..46d9982ab5f2 100644 Binary files a/icons/obj/weapon/axe.dmi and b/icons/obj/weapon/axe.dmi differ diff --git a/icons/obj/weapon/baton.dmi b/icons/obj/weapon/baton.dmi index c39a8b4e073b..4c63ef28b8aa 100644 Binary files a/icons/obj/weapon/baton.dmi and b/icons/obj/weapon/baton.dmi differ diff --git a/icons/obj/weapon/blunt.dmi b/icons/obj/weapon/blunt.dmi index 480515bbd794..013f4fd1db2b 100644 Binary files a/icons/obj/weapon/blunt.dmi and b/icons/obj/weapon/blunt.dmi differ diff --git a/icons/obj/weapon/energy.dmi b/icons/obj/weapon/energy.dmi index 5100d715923a..79742da9d23c 100644 Binary files a/icons/obj/weapon/energy.dmi and b/icons/obj/weapon/energy.dmi differ diff --git a/icons/obj/weapon/spear.dmi b/icons/obj/weapon/spear.dmi index 98b3761430ed..384f1c751bcf 100644 Binary files a/icons/obj/weapon/spear.dmi and b/icons/obj/weapon/spear.dmi differ diff --git a/icons/obj/weapon/sword.dmi b/icons/obj/weapon/sword.dmi index a81830bd7cfb..915be217a2af 100644 Binary files a/icons/obj/weapon/sword.dmi and b/icons/obj/weapon/sword.dmi differ diff --git a/shiptest.dme b/shiptest.dme index 1a0fa7effb95..5535e83f4eec 100644 --- a/shiptest.dme +++ b/shiptest.dme @@ -174,6 +174,7 @@ #include "code\__DEFINES\dcs\signals\signals_obj\signals_item\signals_hydroponic.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_item\signals_implant.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_item\signals_item.dm" +#include "code\__DEFINES\dcs\signals\signals_obj\signals_item\signals_transform.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_machine\signals_aquarium.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_machine\signals_machinery.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_machine\signals_supermatter.dm" @@ -559,7 +560,6 @@ #include "code\datums\components\taped.dm" #include "code\datums\components\tether.dm" #include "code\datums\components\thermite.dm" -#include "code\datums\components\twohanded.dm" #include "code\datums\components\udder.dm" #include "code\datums\components\uplink.dm" #include "code\datums\components\wearertargeting.dm" @@ -579,6 +579,9 @@ #include "code\datums\components\fantasy\suffixes.dm" #include "code\datums\components\food\edible.dm" #include "code\datums\components\food\food_storage.dm" +#include "code\datums\components\melee\charged.dm" +#include "code\datums\components\melee\transforming.dm" +#include "code\datums\components\melee\twohanded.dm" #include "code\datums\components\plumbing\_plumbing.dm" #include "code\datums\components\plumbing\chemical_acclimator.dm" #include "code\datums\components\plumbing\filter.dm" @@ -1030,6 +1033,7 @@ #include "code\game\MapData\shuttles\misc.dm" #include "code\game\MapData\shuttles\nanotrasen_mimir.dm" #include "code\game\MapData\shuttles\nanotrasen_ranger.dm" +#include "code\game\MapData\shuttles\pgf_bolide.dm" #include "code\game\MapData\shuttles\pgf_crying_sun.dm" #include "code\game\MapData\shuttles\srm_elder.dm" #include "code\game\mecha\mech_bay.dm" @@ -1342,7 +1346,7 @@ #include "code\game\objects\items\melee\stunbaton.dm" #include "code\game\objects\items\melee\sword.dm" #include "code\game\objects\items\melee\teleprod.dm" -#include "code\game\objects\items\melee\transforming.dm" +#include "code\game\objects\items\melee\trickweapon.dm" #include "code\game\objects\items\melee\weaponry.dm" #include "code\game\objects\items\robot\ai_upgrades.dm" #include "code\game\objects\items\robot\robot_items.dm" @@ -1553,6 +1557,7 @@ #include "code\game\turfs\open\floor\plating\asteroid.dm" #include "code\game\turfs\open\floor\plating\beach.dm" #include "code\game\turfs\open\floor\plating\icemoon.dm" +#include "code\game\turfs\open\floor\plating\jungle.dm" #include "code\game\turfs\open\floor\plating\lavaland.dm" #include "code\game\turfs\open\floor\plating\misc_plating.dm" #include "code\game\turfs\open\floor\plating\planet.dm" @@ -1865,14 +1870,11 @@ #include "code\modules\awaymissions\zlevel.dm" #include "code\modules\awaymissions\mission_code\Academy.dm" #include "code\modules\awaymissions\mission_code\Cabin.dm" -#include "code\modules\awaymissions\mission_code\caves.dm" #include "code\modules\awaymissions\mission_code\centcomAway.dm" #include "code\modules\awaymissions\mission_code\challenge.dm" #include "code\modules\awaymissions\mission_code\murderdome.dm" -#include "code\modules\awaymissions\mission_code\research.dm" #include "code\modules\awaymissions\mission_code\snowdin.dm" #include "code\modules\awaymissions\mission_code\spacebattle.dm" -#include "code\modules\awaymissions\mission_code\undergroundoutpost45.dm" #include "code\modules\balloon_alert\balloon_alert.dm" #include "code\modules\buildmode\bm_mode.dm" #include "code\modules\buildmode\buildmode.dm" diff --git a/tools/pull_request_hooks/rerunFlakyTests.js b/tools/pull_request_hooks/rerunFlakyTests.js index d3085a67260b..41c997c0bef2 100644 --- a/tools/pull_request_hooks/rerunFlakyTests.js +++ b/tools/pull_request_hooks/rerunFlakyTests.js @@ -2,10 +2,8 @@ const LABEL = "🤖 Flaky Test Report"; const TITLE_BOT_HEADER = "title: "; // Only check jobs that start with these. -// Helps make sure we don't restart something like screenshot tests or linters, which are not known to be flaky. -const CONSIDERED_JOBS = [ - "Integration Tests", -]; +// Helps make sure we don't restart something like linters, which are not known to be flaky. +const CONSIDERED_JOBS = ["Integration Tests"]; async function getFailedJobsForRun(github, context, workflowRunId, runAttempt) { const jobs = await github.paginate( @@ -14,14 +12,14 @@ async function getFailedJobsForRun(github, context, workflowRunId, runAttempt) { owner: context.repo.owner, repo: context.repo.repo, run_id: workflowRunId, - attempt_number: runAttempt + attempt_number: runAttempt, }, - response => { + (response) => { return response.data; - }); + } + ); - return jobs - .filter((job) => job.conclusion === "failure"); + return jobs.filter((job) => job.conclusion === "failure"); } export async function rerunFlakyTests({ github, context }) { @@ -33,7 +31,7 @@ export async function rerunFlakyTests({ github, context }) { ); const filteredFailingJobs = failingJobs.filter((job) => { - console.log(`Failing job: ${job.name}`) + console.log(`Failing job: ${job.name}`); return CONSIDERED_JOBS.some((title) => job.name.startsWith(title)); }); if (filteredFailingJobs.length === 0) { @@ -139,7 +137,9 @@ export function extractDetails(log) { if (runtimeMatch) { const runtime = runtimeMatch.groups.error.trim(); - const invalidTimerMatch = runtime.match(/^Invalid timer:.+object:(?[^[]+).*delegate:(?.+?), source:/); + const invalidTimerMatch = runtime.match( + /^Invalid timer:.+object:(?[^[]+).*delegate:(?.+?), source:/ + ); if (invalidTimerMatch) { return { title: `Flaky test ${failGroup}: Invalid timer: ${invalidTimerMatch.groups.proc.trim()} on ${invalidTimerMatch.groups.object.trim()}`, @@ -153,7 +153,9 @@ export function extractDetails(log) { }; } - const hardDelMatch = failure.headline.match(/^(?\/[\w/]+) hard deleted .* times out of a total del count of/); + const hardDelMatch = failure.headline.match( + /^(?\/[\w/]+) hard deleted .* times out of a total del count of/ + ); if (hardDelMatch) { return { title: `Flaky hard delete: ${hardDelMatch.groups.object}`, @@ -202,7 +204,9 @@ async function getExistingIssueId(graphql, context, title) { } ); - const exactTitle = openFlakyTestIssues.find((issue) => issue.title === title); + const exactTitle = openFlakyTestIssues.find( + (issue) => issue.title === title + ); if (exactTitle !== undefined) { return exactTitle.number; } @@ -229,7 +233,27 @@ function createBody({ title, failures }, runUrl) { ${failures .map( (failure) => - `${failure.group}: ${failure.headline}\n\t${failure.details.join("\n")}` + `${failure.group}: ${ + failure.headline + }\n\t${failure.details.join("\n")}` + ) + .join("\n")} + \`\`\` + `.replace(/^\s*/gm, ""); +} + +function createComment(failures, runUrl) { + return ` + Flaky tests were detected again in [this test run](${runUrl}). + + Failures: + \`\`\` + ${failures + .map( + (failure) => + `${failure.group}: ${ + failure.headline + }\n\t${failure.details.join("\n")}` ) .join("\n")} \`\`\` @@ -245,7 +269,7 @@ export async function reportFlakyTests({ github, context }) { ); const filteredFailingJobs = failedJobsFromLastRun.filter((job) => { - console.log(`Failing job: ${job.name}`) + console.log(`Failing job: ${job.name}`); return CONSIDERED_JOBS.some((title) => job.name.startsWith(title)); }); @@ -275,8 +299,22 @@ export async function reportFlakyTests({ github, context }) { ); if (existingIssueId !== undefined) { - // Maybe in the future, if it's helpful, update the existing issue with new links - console.log(`Existing issue found: #${existingIssueId}`); + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: existingIssueId, + body: createComment( + details.failures, + `https://github.com/${context.repo.owner}/${ + context.repo.repo + }/actions/runs/${ + context.payload.workflow_run.id + }/attempts/${context.payload.workflow_run.run_attempt - 1}` + ), + }); + console.log( + `Existing issue found: #${existingIssueId}, updated it with a comment` + ); return; }