diff --git a/_maps/map_files/OmegaStation/OmegaStation.dmm b/_maps/map_files/OmegaStation/OmegaStation.dmm index e9fec9bb24..d0bc17a426 100644 --- a/_maps/map_files/OmegaStation/OmegaStation.dmm +++ b/_maps/map_files/OmegaStation/OmegaStation.dmm @@ -151,16 +151,6 @@ icon_state = "1-2" }, /obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aat" = ( @@ -168,16 +158,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aau" = ( @@ -187,16 +167,6 @@ icon_state = "1-2" }, /obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aav" = ( @@ -302,32 +272,12 @@ pixel_y = 3 }, /obj/item/storage/firstaid/regular, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaD" = ( /obj/structure/chair/office/dark{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaE" = ( @@ -338,16 +288,6 @@ icon_state = "1-2" }, /obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaF" = ( @@ -358,16 +298,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaG" = ( @@ -378,32 +308,12 @@ icon_state = "1-2" }, /obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaH" = ( /obj/structure/chair/office/dark{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaI" = ( @@ -411,16 +321,6 @@ /obj/machinery/cell_charger, /obj/item/stock_parts/cell/high, /obj/item/stock_parts/cell/high, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaJ" = ( @@ -487,16 +387,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaN" = ( @@ -506,16 +396,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaO" = ( @@ -528,16 +408,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaP" = ( @@ -550,32 +420,12 @@ pixel_x = -3; pixel_y = 3 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaR" = ( @@ -585,17 +435,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "aaS" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -604,16 +446,6 @@ /obj/item/kirbyplants{ icon_state = "plant-22" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaT" = ( @@ -623,16 +455,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaU" = ( @@ -651,16 +473,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaV" = ( @@ -682,12 +494,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaY" = ( @@ -697,12 +503,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aaZ" = ( @@ -721,12 +521,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "aba" = ( @@ -734,12 +528,6 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abb" = ( @@ -756,16 +544,6 @@ c_tag = "Bar"; dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "abc" = ( @@ -778,17 +556,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/command/bridge) "abd" = ( /obj/structure/cable/white{ @@ -805,17 +573,8 @@ }, /obj/effect/landmark/event_spawn, /obj/machinery/holopad, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, /area/command/bridge) "abe" = ( /obj/structure/cable/white{ @@ -827,12 +586,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abf" = ( @@ -848,12 +601,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abg" = ( @@ -864,12 +611,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abh" = ( @@ -885,12 +626,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abi" = ( @@ -902,10 +637,6 @@ /area/asteroid/nearstation) "abk" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command/glass{ - name = "Bridge Access"; - req_access_txt = "19" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/sign/directions/engineering{ desc = "A sign that shows there are doors here. There are doors everywhere!"; @@ -916,24 +647,20 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/command/bridge) -"abl" = ( -/obj/machinery/door/firedoor, /obj/machinery/door/airlock/command/glass{ name = "Bridge Access"; req_access_txt = "19" }, +/turf/open/floor/plasteel/dark, +/area/command/bridge) +"abl" = ( +/obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/command/glass{ + name = "Bridge Access"; + req_access_txt = "19" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/bridge) "abm" = ( /obj/structure/cable/white{ @@ -967,50 +694,25 @@ }, /turf/open/floor/plating, /area/engineering/main) -"abo" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/command/bridge) "abp" = ( /obj/structure/cable/white{ icon_state = "1-2" }, /obj/structure/table/wood, /obj/item/storage/lockbox/medal, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/command/bridge) "abq" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/airlock/command/glass{ name = "Bridge Access"; req_access_txt = "19" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/bridge) "abr" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command/glass{ - name = "Bridge Access"; - req_access_txt = "19" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" @@ -1021,11 +723,11 @@ name = "WARNING: PRESSURIZED DOORS"; pixel_x = 32 }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/command/glass{ + name = "Bridge Access"; + req_access_txt = "19" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/bridge) "abs" = ( /turf/closed/wall/r_wall, @@ -1059,24 +761,18 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "abz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/light_switch{ pixel_x = 24 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "abA" = ( /turf/closed/wall, @@ -1104,26 +800,12 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abD" = ( /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abE" = ( @@ -1136,28 +818,12 @@ /obj/structure/table/wood, /obj/item/paper_bin, /obj/item/pen, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abF" = ( /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "abG" = ( @@ -1182,13 +848,9 @@ /obj/machinery/light_switch{ pixel_x = -24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "abI" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -1198,11 +860,9 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 26 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "abJ" = ( /obj/structure/table/wood, @@ -1212,16 +872,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "abK" = ( @@ -1430,24 +1080,18 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "ace" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "acf" = ( /obj/structure/cable/white{ @@ -1464,10 +1108,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "ach" = ( @@ -1510,36 +1150,24 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "acm" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "acn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "aco" = ( /obj/structure/table/wood, @@ -1559,11 +1187,9 @@ c_tag = "Bridge - Head of Personnel's Quarters"; name = "command camera" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hop) "acp" = ( /obj/structure/bed, @@ -1633,9 +1259,6 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "acw" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, /obj/structure/cable/white{ icon_state = "4-8" }, @@ -1645,13 +1268,15 @@ /obj/structure/cable/white{ icon_state = "2-8" }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, /turf/open/floor/plating, /area/maintenance/starboard) "acx" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel/freezer, /area/commons/toilet/restrooms) "acy" = ( @@ -1659,9 +1284,6 @@ name = "External Airlock"; req_access_txt = "13" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, @@ -1674,7 +1296,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/starboard) "acz" = ( /obj/structure/cable/white{ @@ -1784,16 +1406,6 @@ /obj/machinery/camera{ c_tag = "Head of Security's Office - Quarters" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/item/storage/fancy/donut_box{ pixel_y = 7 }, @@ -1890,24 +1502,18 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "acV" = ( /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "acW" = ( /obj/structure/cable/white{ @@ -1916,35 +1522,13 @@ /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /obj/machinery/door/airlock/command{ name = "Council Chambers"; req_access_txt = "19" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/command/bridge) -"acX" = ( -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "acY" = ( @@ -2024,20 +1608,14 @@ /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /obj/machinery/door/airlock/command{ name = "Council Chambers"; req_access_txt = "19" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/bridge) "ade" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -2047,13 +1625,9 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "adf" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -2065,11 +1639,9 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "adg" = ( /obj/structure/closet/secure_closet/hop, @@ -2081,11 +1653,9 @@ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hop) "adh" = ( /obj/structure/cable/white{ @@ -2253,16 +1823,6 @@ /turf/open/floor/plating, /area/command/heads_quarters/hos) "adD" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/closet/secure_closet/hos, /obj/item/gun/energy/e_gun/hos, /turf/open/floor/plasteel/dark, @@ -2270,10 +1830,6 @@ "adE" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -2287,7 +1843,7 @@ name = "Head of Security's Office"; req_access_txt = "58" }, -/turf/open/floor/plasteel, +/turf/open/floor/wood, /area/command/heads_quarters/hos) "adF" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -2400,11 +1956,9 @@ name = "Station Intercom"; pixel_x = 28 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "adO" = ( /obj/machinery/status_display/ai, @@ -2439,13 +1993,9 @@ /obj/structure/sign/nanotrasen{ pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "adT" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -2454,11 +2004,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "adU" = ( /obj/structure/sign/warning/electricshock{ @@ -2479,10 +2027,6 @@ name = "Head of Personnel's Quarters"; req_access_txt = "57" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/command/heads_quarters/hop) "adW" = ( @@ -2747,19 +2291,15 @@ /area/command/heads_quarters/captain/private) "aew" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Captain's Quarters"; - req_access_txt = "20" - }, /obj/structure/cable/white{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/command{ + name = "Captain's Quarters"; + req_access_txt = "20" }, -/turf/open/floor/plasteel, +/turf/open/floor/wood, /area/command/heads_quarters/captain/private) "aex" = ( /obj/structure/cable/white, @@ -2775,11 +2315,9 @@ /obj/machinery/light{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "aez" = ( /obj/structure/table/reinforced, @@ -2799,10 +2337,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aeA" = ( @@ -2813,16 +2347,6 @@ uses = 10 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aeB" = ( @@ -2838,10 +2362,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/closet/crate/goldcrate, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aeC" = ( @@ -2864,10 +2385,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/closet/crate/silvercrate, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aeE" = ( @@ -2884,16 +2402,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aeF" = ( @@ -2914,12 +2422,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aeG" = ( @@ -2930,13 +2432,9 @@ /obj/machinery/computer/security/telescreen/entertainment{ pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "aeH" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -2945,11 +2443,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "aeI" = ( /obj/effect/spawner/structure/window/reinforced, @@ -2964,12 +2460,10 @@ "aeJ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/structure/bed/dogbed/ian, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /mob/living/simple_animal/pet/dog/corgi/Ian, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/command/heads_quarters/hop) "aeK" = ( /obj/structure/cable/white{ @@ -2979,31 +2473,19 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/command/heads_quarters/hop) "aeL" = ( /obj/machinery/photocopier, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/command/heads_quarters/hop) "aeM" = ( /obj/structure/filingcabinet/security, /obj/item/folder/documents, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/command/heads_quarters/hop) "aeN" = ( /obj/structure/table/wood, @@ -3021,11 +2503,7 @@ name = "Head of Personnel Quarter's APC"; pixel_y = 23 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/command/heads_quarters/hop) "aeO" = ( /obj/structure/table/wood, @@ -3042,10 +2520,9 @@ pixel_y = 24 }, /obj/machinery/recharger, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hop) "aeP" = ( /obj/structure/cable/white{ @@ -3079,10 +2556,6 @@ name = "Quartermaster"; req_access_txt = "41" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/cargo/qm) "aeR" = ( @@ -3128,16 +2601,6 @@ /turf/open/floor/plasteel, /area/cargo/storage) "aeW" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -3183,25 +2646,13 @@ /turf/open/floor/plasteel, /area/cargo/storage) "afb" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/suit_storage_unit/hos, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 9 + }, /area/command/heads_quarters/hos) "afc" = ( /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -3278,10 +2729,6 @@ }, /obj/machinery/suit_storage_unit/captain, /obj/effect/turf_decal/stripes/end, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/heads_quarters/captain/private) "afl" = ( @@ -3342,11 +2789,9 @@ dir = 8; name = "command camera" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "afq" = ( /obj/structure/table/reinforced, @@ -3372,13 +2817,7 @@ network = list("minisat"); start_active = 1 }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "afr" = ( @@ -3407,12 +2846,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aft" = ( @@ -3428,13 +2861,9 @@ dir = 4; name = "command camera" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "afu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -3447,11 +2876,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "afv" = ( /obj/machinery/door/firedoor, @@ -3461,23 +2888,17 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/machinery/door/airlock/command{ - name = "Head of Personnel's Office"; - req_access_txt = "57" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/command{ + name = "Head of Personnel's Office"; + req_access_txt = "57" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hop) "afw" = ( /obj/structure/cable/white{ @@ -3545,13 +2966,9 @@ dir = 8; name = "command camera" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hop) "afB" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -3578,73 +2995,31 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-2" }, /turf/open/floor/plasteel, /area/cargo/storage) "afE" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/cargo/storage) "afF" = ( /obj/effect/landmark/start/cargo_technician, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/conveyor_switch/oneway{ + dir = 8; + id = "cargounload" }, /turf/open/floor/plasteel, /area/cargo/storage) "afG" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/cargo/storage) "afH" = ( -/obj/machinery/conveyor_switch/oneway{ - dir = 8; - id = "cargounload" +/turf/open/floor/plating{ + icon_state = "panelscorched" }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/cargo/storage) +/area/maintenance/port/fore) "afI" = ( /obj/machinery/button/door{ id = "cargounload"; @@ -3675,17 +3050,13 @@ /area/cargo/storage) "afK" = ( /obj/machinery/door/firedoor, +/obj/structure/cable/white{ + icon_state = "1-2" + }, /obj/machinery/door/airlock/mining{ name = "Cargo Bay"; req_one_access_txt = "48;50" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/white{ - icon_state = "1-2" - }, /turf/open/floor/plasteel, /area/cargo/storage) "afL" = ( @@ -3741,12 +3112,6 @@ name = "Head of Security's Office Maintenance"; req_access_txt = "4" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/fore) "afS" = ( @@ -3762,12 +3127,6 @@ /turf/open/floor/wood, /area/command/heads_quarters/hos) "afT" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/door/airlock/maintenance_hatch{ name = "Security Maintenance"; req_access_txt = "63" @@ -3790,30 +3149,20 @@ /area/maintenance/fore) "afW" = ( /obj/machinery/door/firedoor, +/obj/structure/cable/white{ + icon_state = "4-8" + }, /obj/machinery/door/airlock/command{ name = "Captain's Emergency Escape"; req_access_txt = "20" }, -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/maintenance/fore) "afX" = ( /obj/structure/cable/white{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/heads_quarters/captain/private) "afY" = ( @@ -3878,23 +3227,17 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "agf" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "agg" = ( /obj/machinery/airalarm{ @@ -3923,25 +3266,11 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "agh" = ( /obj/machinery/computer/upload/ai, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "agi" = ( @@ -3950,16 +3279,6 @@ "agj" = ( /obj/machinery/computer/upload/borg, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "agk" = ( @@ -3973,23 +3292,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "agl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "agm" = ( /obj/structure/cable/white{ @@ -4096,13 +3405,9 @@ pixel_y = -24; req_access_txt = "57" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hop) "agu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4126,16 +3431,6 @@ /turf/open/floor/plasteel, /area/cargo/storage) "agw" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-4" }, @@ -4145,30 +3440,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/cargo/storage) "agy" = ( /obj/effect/landmark/start/cargo_technician, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "4-8" }, @@ -4179,16 +3454,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/cargo/storage) "agA" = ( @@ -4301,11 +3566,9 @@ name = "Station Intercom"; pixel_x = -26 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hos) "agM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4338,10 +3601,6 @@ icon_state = "0-4" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/heads_quarters/captain/private) "agP" = ( @@ -4407,10 +3666,6 @@ /area/command/heads_quarters/captain/private) "agU" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Captain's Office"; - req_access_txt = "20" - }, /obj/structure/cable/white{ icon_state = "4-8" }, @@ -4423,13 +3678,11 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/door/airlock/command{ + name = "Captain's Office"; + req_access_txt = "20" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/heads_quarters/captain/private) "agV" = ( /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -4439,24 +3692,18 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "agW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "agX" = ( /obj/structure/table/reinforced, @@ -4472,10 +3719,6 @@ dir = 4 }, /obj/item/aiModule/supplied/freeform, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "agY" = ( @@ -4492,16 +3735,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "aha" = ( @@ -4522,16 +3755,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "ahb" = ( @@ -4542,16 +3765,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "ahc" = ( @@ -4580,25 +3793,15 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "ahe" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "ahf" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -4608,11 +3811,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "ahg" = ( /obj/structure/cable/white, @@ -4676,16 +3877,6 @@ /turf/open/floor/plasteel, /area/cargo/storage) "ahm" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/cargo/storage) @@ -4693,16 +3884,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/cargo/storage) @@ -4783,16 +3964,12 @@ /turf/open/floor/plasteel, /area/cargo/storage) "ahu" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/maintenance_hatch{ name = "Security Maintenance"; req_access_txt = "63" }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/security/prison) "ahv" = ( @@ -4812,14 +3989,12 @@ /obj/machinery/light{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/computer/card/minor/hos{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/command/heads_quarters/hos) "ahy" = ( /obj/machinery/door/firedoor, @@ -4827,15 +4002,13 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock/command{ name = "Head of Security's Office"; req_access_txt = "58" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/command/heads_quarters/hos) "ahz" = ( /obj/structure/reagent_dispensers/peppertank{ @@ -4922,10 +4095,6 @@ /obj/effect/turf_decal/stripes/end{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/heads_quarters/captain/private) "ahI" = ( @@ -4997,21 +4166,15 @@ pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "ahP" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 }, /obj/machinery/ore_silo, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "ahQ" = ( @@ -5029,16 +4192,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "ahT" = ( @@ -5075,12 +4228,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/nuke_storage) "ahW" = ( @@ -5088,16 +4235,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -5112,11 +4249,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "ahY" = ( /turf/closed/wall/r_wall, @@ -5252,6 +4387,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/machinery/conveyor_switch/oneway{ + id = "cargoload" + }, /turf/open/floor/plasteel, /area/cargo/storage) "aij" = ( @@ -5333,15 +4471,11 @@ /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/airlock/security/glass{ name = "Security E.V.A. Storage"; req_access_txt = "63" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/security/brig) "ais" = ( @@ -5371,14 +4505,10 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/checker, /area/security/brig) "aiv" = ( /obj/item/cultivator, @@ -5398,35 +4528,27 @@ }, /area/maintenance/starboard/central) "aix" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/structure/cable/white{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/fore) "aiy" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command/glass{ - name = "Bridge Access"; - req_access_txt = "19" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/command/glass{ + name = "Bridge Access"; + req_access_txt = "19" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/bridge) "aiz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -5464,19 +4586,15 @@ /area/ai_monitored/command/nuke_storage) "aiC" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command/glass{ - name = "Bridge Access"; - req_access_txt = "19" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/command/glass{ + name = "Bridge Access"; + req_access_txt = "19" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/command/bridge) "aiD" = ( /obj/machinery/door/poddoor/shutters/preopen{ @@ -5509,16 +4627,12 @@ /area/hallway/primary/starboard/fore) "aiH" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/starboard/fore) @@ -5671,14 +4785,10 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/checker, /area/security/brig) "aiS" = ( /obj/structure/sign/poster/official/do_not_question{ @@ -5716,6 +4826,7 @@ /obj/effect/turf_decal/tile/red{ dir = 8 }, +/obj/effect/turf_decal/stripes/box, /turf/open/floor/plasteel, /area/security/brig) "aiW" = ( @@ -5730,12 +4841,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/brig) "aiY" = ( @@ -5845,18 +4950,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "aji" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ajj" = ( @@ -5867,9 +4966,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ajk" = ( @@ -5880,9 +4976,6 @@ pixel_y = 32 }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ajl" = ( @@ -5893,9 +4986,6 @@ name = "Station Intercom"; pixel_y = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ajm" = ( @@ -5908,9 +4998,6 @@ /obj/machinery/light{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ajn" = ( @@ -5921,12 +5008,6 @@ dir = 4 }, /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ajo" = ( @@ -5956,9 +5037,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "ajr" = ( @@ -5968,9 +5046,6 @@ /obj/machinery/airalarm{ pixel_y = 23 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "ajs" = ( @@ -6022,9 +5097,6 @@ pixel_y = 24 }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "ajw" = ( @@ -6035,9 +5107,6 @@ name = "Station Intercom"; pixel_y = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "ajx" = ( @@ -6050,9 +5119,6 @@ /obj/machinery/camera{ c_tag = "Fore Primary Hallway 2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "ajy" = ( @@ -6086,12 +5152,6 @@ dir = 4 }, /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "ajB" = ( @@ -6131,9 +5191,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "ajF" = ( @@ -6146,15 +5203,15 @@ /obj/machinery/camera{ c_tag = "Central Hallway North-East" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "ajG" = ( /turf/closed/wall/r_wall, /area/command/heads_quarters/cmo) "ajH" = ( +/obj/machinery/door/window/eastleft{ + req_access_txt = "48;50" + }, /obj/structure/plasticflaps/opaque, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, @@ -6189,16 +5246,6 @@ dir = 4 }, /obj/effect/landmark/start/cargo_technician, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/cargo/storage) "ajM" = ( @@ -6244,16 +5291,6 @@ /area/medical/medbay/zone3) "ajO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/effect/landmark/start/paramedic, /turf/open/floor/plasteel, /area/medical/medbay/zone3) @@ -6278,11 +5315,9 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/turf/open/floor/plasteel/dark, /area/command/heads_quarters/hos) "ajS" = ( /obj/structure/cable/white{ @@ -6351,10 +5386,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/security/brig) "ajX" = ( @@ -6368,10 +5399,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/security/brig) "ajZ" = ( @@ -6429,7 +5456,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ake" = ( @@ -6439,9 +5465,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -6452,9 +5475,6 @@ }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/machinery/light, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -6466,9 +5486,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/chair, /turf/open/floor/plasteel{ heat_capacity = 1e+006 @@ -6482,9 +5499,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/chair, /turf/open/floor/plasteel{ heat_capacity = 1e+006 @@ -6498,9 +5512,6 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "2-8" }, @@ -6519,9 +5530,6 @@ dir = 1; pixel_y = -22 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -6536,9 +5544,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -6623,12 +5628,6 @@ dir = 4 }, /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "akr" = ( @@ -6645,9 +5644,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -6662,9 +5658,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -6782,7 +5775,6 @@ codes_txt = "patrol;next_patrol=4.2-HoP"; location = "4.1-BridgeEast" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/fore) "akB" = ( @@ -6793,7 +5785,6 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/fore) "akC" = ( @@ -6812,7 +5803,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/fore) "akD" = ( @@ -6904,7 +5894,6 @@ location = "4.2-HoP"; name = "Billy Herrington memorial navigation beacon" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "akJ" = ( @@ -6915,9 +5904,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -6996,16 +5982,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/atmos) "akS" = ( @@ -7032,16 +6008,12 @@ /obj/structure/cable/white{ icon_state = "1-4" }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/machinery/door/airlock/security{ name = "Armoury"; req_access_txt = "3" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plasteel, /area/security/brig) "akV" = ( @@ -7095,12 +6067,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/brig) "akZ" = ( @@ -7134,9 +6100,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "ald" = ( @@ -7183,10 +6146,6 @@ name = "Teleport Access"; req_access_txt = "17" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/command/teleporter) "alk" = ( @@ -7309,10 +6268,6 @@ name = "E.V.A. Storage"; req_access_txt = "18" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/ai_monitored/command/storage/eva) "alx" = ( @@ -7329,9 +6284,6 @@ /area/ai_monitored/command/storage/eva) "aly" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "alz" = ( @@ -7379,32 +6331,12 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/cargo/storage) "alD" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/cargo/storage) "alE" = ( @@ -7477,18 +6409,12 @@ /area/security/brig) "alK" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - name = "Security Office"; - req_access_txt = "63" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/security/glass{ + name = "Security Office"; + req_access_txt = "63" }, /turf/open/floor/plasteel, /area/security/brig) @@ -7506,10 +6432,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/security/brig) "alN" = ( @@ -7604,9 +6526,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "alT" = ( @@ -7647,7 +6566,6 @@ /turf/open/floor/wood, /area/service/lawoffice) "alY" = ( -/obj/machinery/shieldwallgen, /obj/machinery/button/door{ id = "teleportershutters"; name = "Teleporter Shutters"; @@ -7655,10 +6573,7 @@ req_access_txt = "19" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, +/obj/machinery/shieldwallgen, /turf/open/floor/plasteel/dark, /area/command/teleporter) "alZ" = ( @@ -7690,7 +6605,6 @@ /turf/open/floor/plasteel, /area/command/teleporter) "amc" = ( -/obj/machinery/shieldwallgen, /obj/structure/cable/white{ icon_state = "4-8" }, @@ -7698,12 +6612,7 @@ c_tag = "Teleporter" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/shieldwallgen, /turf/open/floor/plasteel/dark, /area/command/teleporter) "amd" = ( @@ -7729,19 +6638,9 @@ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "amg" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -7752,16 +6651,6 @@ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "ami" = ( @@ -7769,22 +6658,7 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/hallway/primary/central) -"amj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) "amk" = ( -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/central) "aml" = ( @@ -7796,16 +6670,7 @@ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "amm" = ( /obj/structure/cable/white{ @@ -7831,10 +6696,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/storage/eva) "amp" = ( @@ -7878,12 +6739,6 @@ pixel_x = 26; req_access_txt = "19" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/storage/eva) "amt" = ( @@ -7895,9 +6750,6 @@ name = "Station Intercom"; pixel_x = -26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "amu" = ( @@ -8052,7 +6904,9 @@ /obj/structure/sign/warning/nosmoking{ pixel_y = 32 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "amI" = ( /obj/machinery/holopad, @@ -8076,12 +6930,6 @@ c_tag = "Security - Central"; dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/brig) "amL" = ( @@ -8102,12 +6950,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/brig) "amN" = ( @@ -8176,7 +7018,6 @@ /turf/open/floor/wood, /area/service/lawoffice) "amT" = ( -/obj/structure/table/reinforced, /obj/item/stack/cable_coil/white, /obj/item/stack/packageWrap, /obj/item/hand_labeler, @@ -8189,10 +7030,7 @@ dir = 4; name = "command camera" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, +/obj/structure/table/reinforced, /turf/open/floor/plasteel/dark, /area/command/teleporter) "amU" = ( @@ -8234,12 +7072,6 @@ /area/command/teleporter) "amX" = ( /obj/machinery/teleport/hub, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/teleporter) "amY" = ( @@ -8255,34 +7087,19 @@ icon_state = "1-8" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "ana" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, /area/hallway/primary/fore) -"anb" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) "anc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/fore) "and" = ( @@ -8294,13 +7111,7 @@ icon_state = "1-4" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "ane" = ( /obj/structure/sign/warning/electricshock, @@ -8311,7 +7122,9 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/ai_monitored/command/storage/eva) "ang" = ( /obj/structure/cable/white{ @@ -8351,15 +7164,13 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/ai_monitored/command/storage/eva) "ank" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "anl" = ( @@ -8368,10 +7179,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "anm" = ( @@ -8394,17 +7201,13 @@ /area/cargo/storage) "ano" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining/glass{ - name = "Cargo Office"; - req_access_txt = "48;50" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/mining/glass{ + name = "Cargo Office"; + req_access_txt = "48;50" }, /turf/open/floor/plasteel, /area/cargo/storage) @@ -8421,12 +7224,16 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/cargo/miningdock) "anr" = ( /obj/machinery/mineral/equipment_vendor, /obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/cargo/miningdock) "ans" = ( /obj/machinery/power/apc{ @@ -8445,7 +7252,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 6 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/cargo/miningdock) "ant" = ( /obj/effect/spawner/structure/window/reinforced, @@ -8501,16 +7310,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/brig) "anA" = ( @@ -8569,10 +7368,6 @@ "anD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/security/brig) "anE" = ( @@ -8616,10 +7411,6 @@ "anH" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "anI" = ( @@ -8628,10 +7419,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "anJ" = ( @@ -8679,10 +7466,6 @@ }, /obj/structure/closet/crate/engineering, /obj/item/hand_tele, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/teleporter) "anM" = ( @@ -8710,19 +7493,13 @@ /turf/open/floor/plasteel, /area/command/heads_quarters/ce) "anP" = ( -/obj/machinery/teleport/station, /obj/machinery/light{ dir = 4 }, /obj/machinery/status_display{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/teleport/station, /turf/open/floor/plasteel/dark, /area/command/teleporter) "anQ" = ( @@ -8732,48 +7509,33 @@ "anR" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Atrium" - }, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/door/airlock/public/glass{ + name = "Atrium" + }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "anS" = ( /obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/machinery/door/airlock/public/glass{ name = "Atrium" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plasteel, /area/hallway/primary/fore) "anT" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/machinery/door/airlock/public/glass{ name = "Atrium" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plasteel, /area/hallway/primary/fore) "anU" = ( -/obj/structure/closet/crate/rcd{ - pixel_y = 4 - }, /obj/machinery/door/window/northleft{ dir = 4; name = "RCD Storage"; @@ -8791,15 +7553,8 @@ /obj/machinery/status_display{ pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/structure/closet/crate/rcd{ + pixel_y = 4 }, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/storage/eva) @@ -8844,9 +7599,6 @@ dir = 4; pixel_x = -24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "aoa" = ( @@ -8870,12 +7622,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "aoc" = ( @@ -9148,23 +7894,17 @@ /area/security/brig) "aox" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - id_tag = "secinterior"; - name = "Brig"; - req_access_txt = "63" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, +/obj/machinery/door/airlock/security/glass{ + id_tag = "secinterior"; + name = "Brig"; + req_access_txt = "63" + }, /turf/open/floor/plasteel, /area/security/brig) "aoy" = ( @@ -9191,23 +7931,17 @@ /area/security/brig) "aoA" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - id_tag = "secexterior"; - name = "Brig"; - req_access_txt = "63" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, +/obj/machinery/door/airlock/security/glass{ + id_tag = "secexterior"; + name = "Brig"; + req_access_txt = "63" + }, /turf/open/floor/plasteel, /area/security/brig) "aoB" = ( @@ -9230,7 +7964,7 @@ /obj/structure/table/wood, /obj/structure/window/reinforced/spawner/west, /obj/item/folder/blue, -/turf/open/floor/carpet/green/airless, +/turf/open/floor/carpet/green, /area/service/lawoffice) "aoE" = ( /obj/machinery/airalarm{ @@ -9245,7 +7979,6 @@ /turf/open/floor/wood, /area/service/lawoffice) "aoF" = ( -/obj/structure/table/reinforced, /obj/item/stock_parts/cell/high, /obj/item/stock_parts/cell/high, /obj/machinery/cell_charger, @@ -9253,10 +7986,7 @@ dir = 4; pixel_x = -22 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, +/obj/structure/table/reinforced, /turf/open/floor/plasteel/dark, /area/command/teleporter) "aoG" = ( @@ -9277,16 +8007,10 @@ /turf/open/floor/plasteel, /area/command/teleporter) "aoI" = ( -/obj/machinery/computer/teleporter{ - dir = 8 - }, /obj/machinery/newscaster{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/computer/teleporter{ dir = 8 }, /turf/open/floor/plasteel/dark, @@ -9295,6 +8019,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/obj/machinery/space_heater, /turf/open/floor/plasteel, /area/maintenance/port/central) "aoK" = ( @@ -9356,9 +8081,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, @@ -9368,25 +8090,12 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aoQ" = ( /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, @@ -9407,22 +8116,16 @@ /turf/open/floor/plasteel, /area/service/bar/atrium) "aoS" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plating, /area/maintenance/starboard/central) "aoU" = ( @@ -9454,7 +8157,9 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/ai_monitored/command/storage/eva) "aoX" = ( /obj/structure/tank_dispenser/oxygen, @@ -9469,7 +8174,9 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/ai_monitored/command/storage/eva) "aoZ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -9478,9 +8185,6 @@ /obj/machinery/light{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -9514,12 +8218,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "apc" = ( @@ -9598,21 +8296,15 @@ /area/hallway/primary/starboard/fore) "api" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Mining Dock"; - req_access_txt = "48" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/mining{ + name = "Mining Dock"; + req_access_txt = "48" }, /turf/open/floor/plasteel, /area/cargo/miningdock) @@ -9730,23 +8422,17 @@ /area/command/heads_quarters/ce) "apr" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/door/firedoor, /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, /obj/machinery/door/airlock/command/glass{ name = "Chief Engineer"; req_access_txt = "56" }, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 - }, /turf/open/floor/plasteel, /area/command/heads_quarters/ce) "aps" = ( @@ -9777,16 +8463,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/main) "apu" = ( @@ -9797,9 +8473,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/structure/sign/departments/custodian{ pixel_x = 32; pixel_y = 32 @@ -9836,18 +8509,14 @@ /obj/structure/cable/white{ icon_state = "1-4" }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, /obj/machinery/door/airlock/security/glass{ name = "Security Office"; req_access_txt = "63" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, /turf/open/floor/plasteel, /area/security/brig) "apy" = ( @@ -9873,10 +8542,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/security/brig) "apA" = ( @@ -9914,26 +8579,20 @@ /area/security/brig) "apC" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - id_tag = "secinterior"; - name = "Brig"; - req_access_txt = "63" - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, +/obj/machinery/door/airlock/security/glass{ + id_tag = "secinterior"; + name = "Brig"; + req_access_txt = "63" + }, /turf/open/floor/plasteel, /area/security/brig) "apD" = ( @@ -9960,26 +8619,20 @@ /area/security/brig) "apF" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - id_tag = "secexterior"; - name = "Brig"; - req_access_txt = "63" - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, +/obj/machinery/door/airlock/security/glass{ + id_tag = "secexterior"; + name = "Brig"; + req_access_txt = "63" + }, /turf/open/floor/plasteel, /area/security/brig) "apG" = ( @@ -10013,9 +8666,6 @@ name = "Station Intercom"; pixel_x = 26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "apI" = ( @@ -10033,10 +8683,6 @@ pixel_y = -28 }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/teleporter) "apL" = ( @@ -10073,7 +8719,6 @@ /turf/open/floor/plasteel, /area/command/teleporter) "apO" = ( -/obj/machinery/shieldwallgen, /obj/item/radio/intercom{ name = "Station Intercom"; pixel_x = 28 @@ -10082,12 +8727,7 @@ pixel_y = -32 }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/shieldwallgen, /turf/open/floor/plasteel/dark, /area/command/teleporter) "apP" = ( @@ -10125,21 +8765,15 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "apS" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plasteel, /area/maintenance/port/central) @@ -10173,9 +8807,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -10184,16 +8815,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "apW" = ( @@ -10201,11 +8822,6 @@ /obj/effect/turf_decal/loading_area{ dir = 8 }, -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/service/bar/atrium) "apX" = ( @@ -10250,7 +8866,6 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/central) "aqc" = ( -/obj/structure/table/reinforced, /obj/item/tank/jetpack/carbondioxide{ pixel_x = 3; pixel_y = 3 @@ -10264,10 +8879,7 @@ /obj/structure/sign/warning/nosmoking{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, +/obj/structure/table/reinforced, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/storage/eva) "aqd" = ( @@ -10307,7 +8919,6 @@ /turf/open/floor/plasteel, /area/ai_monitored/command/storage/eva) "aqg" = ( -/obj/structure/table/reinforced, /obj/item/stack/sheet/plasteel{ amount = 15 }, @@ -10327,19 +8938,11 @@ /obj/structure/extinguisher_cabinet{ pixel_y = -28 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table/reinforced, /turf/open/floor/plasteel/dark, /area/ai_monitored/command/storage/eva) "aqh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -10523,6 +9126,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, +/obj/structure/closet/secure_closet/contraband/armory, /turf/open/floor/plasteel, /area/security/brig) "aqC" = ( @@ -10602,28 +9206,16 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/security/brig) "aqJ" = ( /obj/structure/cable/white{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/security/brig) "aqK" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -10631,17 +9223,9 @@ dir = 4 }, /obj/machinery/vending/wardrobe/sec_wardrobe, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/security/brig) "aqL" = ( /obj/structure/cable/white{ @@ -10681,12 +9265,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/brig) "aqP" = ( @@ -10746,9 +9324,6 @@ /obj/machinery/light{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aqT" = ( @@ -10839,46 +9414,34 @@ "arc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Atrium" - }, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/turf/open/floor/plasteel, +/obj/machinery/door/airlock/public/glass{ + name = "Atrium" + }, +/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "ard" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ name = "Atrium" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "are" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Atrium" - }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/turf/open/floor/plasteel, +/obj/machinery/door/airlock/public/glass{ + name = "Atrium" + }, +/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "arf" = ( /obj/effect/spawner/structure/window/reinforced, @@ -10904,9 +9467,6 @@ /obj/structure/extinguisher_cabinet{ pixel_x = -24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -10916,7 +9476,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "ark" = ( @@ -10989,15 +9548,13 @@ /turf/closed/wall, /area/maintenance/port/fore) "arp" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch"; req_access_txt = "12" }, -/turf/open/floor/plasteel, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, /area/maintenance/port/fore) "arq" = ( /turf/closed/wall/r_wall, @@ -11007,16 +9564,6 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "ars" = ( @@ -11039,12 +9586,6 @@ /obj/machinery/newscaster/security_unit{ pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/structure/table/reinforced, /obj/item/grenade/barrier{ pixel_x = -3; @@ -11063,53 +9604,25 @@ c_tag = "Brig Control Room"; dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/security/brig) "arv" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 9 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "arw" = ( /obj/machinery/computer/atmos_control/tank/mix_tank, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "arx" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "ary" = ( @@ -11117,16 +9630,6 @@ name = "Mix to Distro" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "arz" = ( @@ -11141,16 +9644,6 @@ name = "Station Intercom"; pixel_y = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "arA" = ( @@ -11186,11 +9679,9 @@ dir = 1 }, /obj/structure/closet/l3closet/security, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/security/brig) "arE" = ( /obj/structure/cable/white{ @@ -11200,58 +9691,32 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/security/brig) "arF" = ( /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/security/brig) "arG" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/machinery/door/airlock/security/glass{ - name = "Gear Room"; - req_access_txt = "63" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-4" }, /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/security/glass{ + name = "Gear Room"; + req_access_txt = "63" }, /turf/open/floor/plasteel, /area/security/brig) @@ -11281,10 +9746,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/security/brig) "arJ" = ( @@ -11308,10 +9769,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/security/brig) "arL" = ( @@ -11322,18 +9779,12 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/machinery/door/airlock/security/glass{ - name = "Security Desk"; - req_access_txt = "63" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/security/glass{ + name = "Security Desk"; + req_access_txt = "63" }, /turf/open/floor/plasteel, /area/security/brig) @@ -11350,17 +9801,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/security/brig) "arN" = ( /obj/machinery/button/door{ @@ -11400,16 +9843,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/security/brig) "arO" = ( @@ -11510,21 +9943,15 @@ /turf/open/floor/plating, /area/maintenance/port/central) "arW" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/port/central) @@ -11612,11 +10039,9 @@ c_tag = "Central Diner 3"; dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "ase" = ( /obj/item/kirbyplants{ @@ -11699,13 +10124,9 @@ /obj/machinery/newscaster{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "ask" = ( /obj/structure/cable/white{ @@ -11725,19 +10146,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/central) -"asm" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel, -/area/maintenance/port/fore) "asn" = ( /obj/machinery/airalarm/unlocked{ dir = 4; @@ -11750,12 +10158,6 @@ /obj/machinery/light{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/structure/table/reinforced, /obj/item/storage/box/chemimp{ pixel_x = 6 @@ -11764,7 +10166,9 @@ pixel_x = -3 }, /obj/item/storage/lockbox/loyalty, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/security/brig) "aso" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -11862,12 +10266,6 @@ name = "Security RC"; pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/structure/table/reinforced, /obj/item/storage/box/teargas{ pixel_x = 3; @@ -11878,7 +10276,9 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/security/brig) "asA" = ( /obj/structure/reagent_dispensers/fueltank, @@ -11928,17 +10328,6 @@ }, /turf/open/floor/plasteel, /area/maintenance/port/fore) -"asE" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/maintenance/port/fore) "asF" = ( /obj/machinery/atmospherics/pipe/simple/supply/visible{ dir = 5 @@ -11973,16 +10362,6 @@ c_tag = "Atmospherics North"; network = list("ss13","engine") }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "asI" = ( @@ -11999,10 +10378,9 @@ pixel_y = -32 }, /obj/structure/closet/secure_closet/security/sec, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/turf/open/floor/plasteel/dark, /area/security/brig) "asK" = ( /obj/structure/rack, @@ -12036,13 +10414,7 @@ c_tag = "Security - Gear Room"; dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/security/brig) "asL" = ( /obj/structure/closet/secure_closet/security/sec, @@ -12050,13 +10422,7 @@ dir = 1; pixel_y = -26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/security/brig) "asM" = ( /obj/structure/cable/white, @@ -12160,13 +10526,9 @@ c_tag = "Security - Front Desk"; dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, /area/security/brig) "asS" = ( /obj/machinery/computer/secure_data{ @@ -12182,12 +10544,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/security/brig) "asT" = ( @@ -12200,27 +10556,18 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "asU" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering/glass{ - name = "Primary Tool Storage" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/engineering/glass{ + name = "Primary Tool Storage" }, /turf/open/floor/plasteel, /area/commons/storage/primary) @@ -12346,10 +10693,6 @@ /turf/closed/wall, /area/service/theater) "atg" = ( -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" @@ -12357,11 +10700,11 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock{ + name = "Theatre Backstage"; + req_access_txt = "46" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/maintenance/port/central) "ath" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -12374,14 +10717,9 @@ /obj/machinery/light{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "atj" = ( /obj/machinery/vending/coffee, @@ -12392,14 +10730,9 @@ /obj/machinery/light{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "atk" = ( /obj/effect/spawner/structure/window/reinforced/tinted, @@ -12423,25 +10756,6 @@ }, /turf/open/floor/plasteel/white/corner, /area/hallway/primary/starboard/fore) -"atq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/maintenance/starboard) "atr" = ( /obj/structure/table/wood, /obj/item/storage/secure/briefcase, @@ -12528,15 +10842,13 @@ /area/security/detectives_office) "atA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock/security{ name = "Detective's Office"; req_access_txt = "4" }, -/turf/open/floor/plasteel, +/turf/open/floor/wood{ + icon_state = "wood-broken" + }, /area/security/detectives_office) "atB" = ( /obj/machinery/portable_atmospherics/canister/air, @@ -12656,17 +10968,13 @@ }, /area/maintenance/port/fore) "atL" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Security Maintenance"; - req_access_txt = "63" - }, /obj/structure/cable/white{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Security Maintenance"; + req_access_txt = "63" }, /turf/open/floor/plasteel, /area/security/brig) @@ -12677,9 +10985,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "atN" = ( @@ -12690,24 +10995,15 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "atO" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering/glass{ - name = "Primary Tool Storage" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/engineering/glass{ + name = "Primary Tool Storage" }, /turf/open/floor/plasteel, /area/commons/storage/primary) @@ -12883,16 +11179,6 @@ pixel_y = 3 }, /obj/item/camera_film, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/theater) "atY" = ( @@ -12930,11 +11216,9 @@ /area/service/theater) "aub" = ( /obj/machinery/vending/cigarette, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "auc" = ( /obj/item/reagent_containers/food/condiment/saltshaker{ @@ -12944,33 +11228,13 @@ /obj/item/reagent_containers/food/condiment/peppermill{ pixel_x = -8 }, -/obj/structure/table/wood, /obj/item/kitchen/fork, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, +/obj/structure/table/wood, /turf/open/floor/plasteel, /area/service/bar/atrium) "aud" = ( /obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aue" = ( @@ -12994,17 +11258,9 @@ pixel_y = 3 }, /obj/item/lighter, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aug" = ( /obj/structure/sign/barsign{ @@ -13033,17 +11289,9 @@ c_tag = "Bar Backroom"; dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "auk" = ( /obj/structure/sink/kitchen{ @@ -13052,16 +11300,6 @@ pixel_y = 28 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aul" = ( @@ -13079,17 +11317,9 @@ pixel_x = 26 }, /obj/structure/closet, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aun" = ( /obj/effect/landmark/blobstart, @@ -13106,9 +11336,6 @@ /obj/machinery/status_display{ pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -13214,21 +11441,17 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/firedoor, +/obj/structure/cable/white{ + icon_state = "4-8" }, /obj/machinery/door/airlock/security{ name = "Detective's Office"; req_access_txt = "4" }, -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - icon_state = "4-8" +/turf/open/floor/wood{ + icon_state = "wood-broken7" }, -/turf/open/floor/plasteel, /area/security/detectives_office) "auA" = ( /obj/effect/turf_decal/stripes/line{ @@ -13361,18 +11584,12 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plasteel, /area/maintenance/port/fore) @@ -13384,11 +11601,9 @@ dir = 4 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/port) "auO" = ( /obj/structure/cable/white{ @@ -13406,9 +11621,6 @@ /obj/machinery/camera{ c_tag = "Port Hallway 2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "auP" = ( @@ -13418,9 +11630,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "auQ" = ( @@ -13430,9 +11639,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "auR" = ( @@ -13443,9 +11649,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "auS" = ( @@ -13455,9 +11658,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "auT" = ( @@ -13520,16 +11720,6 @@ "ava" = ( /obj/structure/table/wood, /obj/item/instrument/guitar, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/theater) "avb" = ( @@ -13564,11 +11754,9 @@ /obj/structure/table/wood, /obj/item/clothing/head/fedora, /obj/item/clothing/mask/cigarette/pipe, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "avf" = ( /obj/structure/chair/stool, @@ -13578,16 +11766,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "avg" = ( @@ -13596,16 +11774,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "avh" = ( @@ -13614,16 +11782,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "avi" = ( @@ -13664,33 +11822,15 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "avl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "avm" = ( @@ -13716,7 +11856,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/service/bar/atrium) "avp" = ( /obj/effect/landmark/start/bartender, @@ -13724,16 +11866,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "avq" = ( @@ -13744,20 +11876,12 @@ dir = 8; pixel_x = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/service/bar/atrium) "avs" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13772,9 +11896,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -13801,7 +11922,6 @@ /obj/machinery/airalarm{ pixel_y = 23 }, -/obj/effect/turf_decal/bot, /turf/open/floor/plasteel/freezer, /area/commons/toilet/restrooms) "avx" = ( @@ -13813,34 +11933,17 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/engineering/atmos) "avy" = ( /obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/o2{ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "avz" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13963,18 +12066,12 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plasteel, /area/maintenance/port/fore) @@ -14080,11 +12177,9 @@ pixel_x = -32 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/port) "avT" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14094,9 +12189,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "avU" = ( @@ -14106,14 +12198,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"avV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "avW" = ( @@ -14124,7 +12208,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "avX" = ( @@ -14135,7 +12218,6 @@ /obj/item/kirbyplants{ icon_state = "plant-21" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "avY" = ( @@ -14212,16 +12294,6 @@ "awf" = ( /obj/structure/table/wood, /obj/item/camera, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/theater) "awg" = ( @@ -14249,11 +12321,9 @@ /obj/structure/chair/comfy/brown{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "awk" = ( /obj/structure/chair/stool, @@ -14262,31 +12332,11 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "awl" = ( /obj/structure/table/wood, /obj/item/storage/bag/tray, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "awm" = ( @@ -14294,16 +12344,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "awn" = ( @@ -14348,17 +12388,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "awq" = ( /obj/effect/landmark/start/bartender, @@ -14376,37 +12408,21 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aws" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Bar Backroom"; - req_access_txt = "25" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/door/airlock{ + name = "Bar Backroom"; + req_access_txt = "25" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "awt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -14415,16 +12431,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "awu" = ( @@ -14432,16 +12438,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "awv" = ( @@ -14454,34 +12450,18 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aww" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Bar Maintenance"; - req_access_txt = "25" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Bar Maintenance"; + req_access_txt = "25" }, /turf/open/floor/plating, /area/maintenance/starboard/central) @@ -14507,9 +12487,6 @@ pixel_x = -26 }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -14543,16 +12520,6 @@ /obj/structure/sign/warning/nosmoking{ pixel_y = 30 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "awD" = ( @@ -14582,25 +12549,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/engineering/atmos) -"awG" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/maintenance/port/aft) "awH" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 1 @@ -14644,15 +12592,11 @@ /obj/structure/cable/white{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /obj/machinery/door/airlock/maintenance_hatch{ name = "Atmospherics Maintenance"; req_access_txt = "24" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /turf/open/floor/plasteel, /area/maintenance/port/fore) "awN" = ( @@ -14663,6 +12607,10 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/delivery, +/obj/machinery/door/window/eastright{ + dir = 1; + req_access_txt = "24" + }, /turf/open/floor/plasteel, /area/engineering/atmos) "awO" = ( @@ -14671,10 +12619,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "awP" = ( @@ -14687,16 +12631,6 @@ "awR" = ( /obj/structure/table/wood, /obj/item/soap/nanotrasen, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/theater) "awS" = ( @@ -14711,16 +12645,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "awU" = ( @@ -14732,16 +12656,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "awV" = ( @@ -14750,63 +12664,26 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "awW" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "awX" = ( /obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "awY" = ( /obj/structure/cable/white{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "awZ" = ( @@ -14815,16 +12692,6 @@ /obj/item/reagent_containers/food/drinks/shaker, /obj/item/reagent_containers/rag, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "axa" = ( @@ -14841,22 +12708,16 @@ dir = 1; pixel_y = -24 }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "axc" = ( /obj/machinery/light, /obj/machinery/vending/wardrobe/bar_wardrobe, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/service/bar/atrium) "axd" = ( /obj/structure/closet/secure_closet/bar, @@ -14866,17 +12727,9 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 26 }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "axe" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14887,7 +12740,6 @@ /area/maintenance/starboard/central) "axf" = ( /obj/structure/table, -/obj/effect/turf_decal/bot, /obj/structure/bedsheetbin/towel, /obj/structure/sign/poster/official/cleanliness{ pixel_y = -32 @@ -14910,7 +12762,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/effect/turf_decal/bot, /obj/machinery/light_switch{ pixel_x = 8; pixel_y = -24 @@ -14989,7 +12840,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/turf/open/floor/plasteel/checker, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "axq" = ( /obj/machinery/light{ @@ -15003,7 +12854,10 @@ }, /obj/effect/turf_decal/bot, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "axr" = ( /obj/structure/cable/white{ @@ -15012,7 +12866,10 @@ /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "axs" = ( /obj/structure/reagent_dispensers/fueltank, @@ -15023,7 +12880,10 @@ /obj/effect/decal/cleanable/oil, /obj/effect/turf_decal/bot, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "axt" = ( /obj/effect/spawner/structure/window/reinforced, @@ -15126,16 +12986,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"axC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "axD" = ( @@ -15145,17 +12995,9 @@ }, /obj/effect/turf_decal/bot, /obj/machinery/computer/arcade, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/commons/dorms) "axE" = ( /obj/machinery/status_display{ @@ -15163,54 +13005,30 @@ }, /obj/effect/turf_decal/bot, /obj/structure/closet/wardrobe/white, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/commons/dorms) "axF" = ( /obj/machinery/light_switch{ pixel_y = 24 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/item/kirbyplants{ icon_state = "plant-21" }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/commons/dorms) "axG" = ( /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/cryopod{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 5 + }, /area/commons/dorms) "axH" = ( /obj/structure/closet/secure_closet/personal/cabinet, @@ -15282,16 +13100,6 @@ pixel_y = -3 }, /obj/item/lipstick/random, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/theater) "axN" = ( @@ -15316,16 +13124,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "axP" = ( @@ -15349,16 +13147,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "axR" = ( @@ -15370,17 +13158,9 @@ name = "Bar Door"; req_access_txt = "25" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "axS" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -15407,16 +13187,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/bar/atrium) "axU" = ( @@ -15430,9 +13200,6 @@ /obj/machinery/newscaster{ pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -15466,18 +13233,14 @@ /obj/structure/cable/white{ icon_state = "2-4" }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable/white{ + icon_state = "1-2" + }, /obj/machinery/door/airlock/security/glass{ name = "Security E.V.A. Storage"; req_access_txt = "63" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/white{ - icon_state = "1-2" - }, /turf/open/floor/plasteel, /area/security/brig) "ayb" = ( @@ -15527,17 +13290,12 @@ /obj/effect/decal/cleanable/oil, /obj/effect/decal/cleanable/dirt, /obj/machinery/meter/atmos, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "ayi" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible, @@ -15545,6 +13303,9 @@ icon_state = "4-8" }, /obj/machinery/meter/atmos/atmos_waste_loop, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "ayj" = ( @@ -15649,42 +13410,17 @@ }, /turf/open/floor/plating, /area/engineering/atmos) -"ayt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) "ayu" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/commons/dorms) -"ayv" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/commons/dorms) "ayw" = ( /obj/effect/landmark/start/assistant, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "ayx" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "ayy" = ( /obj/effect/turf_decal/stripes/line{ @@ -15734,35 +13470,19 @@ dir = 4 }, /obj/machinery/door/firedoor, +/obj/structure/cable/white{ + icon_state = "1-8" + }, /obj/machinery/door/airlock/security/glass{ id_tag = "secinterior"; name = "Brig"; req_access_txt = "63" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable/white{ - icon_state = "1-8" - }, /turf/open/floor/plasteel, /area/security/brig) "ayE" = ( /obj/structure/table/wood, /obj/item/instrument/violin, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/theater) "ayF" = ( @@ -15799,27 +13519,15 @@ c_tag = "Central Diner 2"; dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "ayJ" = ( /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "ayK" = ( @@ -15827,16 +13535,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "ayL" = ( @@ -15878,17 +13576,9 @@ }, /obj/item/storage/fancy/cigarettes/cigars/havana, /obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "ayO" = ( /obj/structure/table/reinforced, @@ -15896,17 +13586,9 @@ pixel_x = 32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "ayP" = ( /turf/closed/wall, @@ -15954,9 +13636,6 @@ /obj/machinery/light{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -15964,13 +13643,9 @@ "ayV" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/port) "ayW" = ( /obj/structure/table/reinforced, @@ -16126,12 +13801,6 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /turf/open/floor/plasteel, /area/maintenance/port/fore) "azh" = ( @@ -16170,17 +13839,10 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "azm" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, @@ -16206,6 +13868,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "azq" = ( @@ -16213,14 +13878,17 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "azr" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 +/obj/machinery/atmospherics/pipe/manifold/supply/visible{ + dir = 1 }, /turf/open/floor/plasteel, /area/engineering/atmos) @@ -16298,16 +13966,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/atmos) "azz" = ( @@ -16329,66 +13987,25 @@ /turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "azA" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/closet/crate/bin, /turf/open/floor/plasteel, /area/commons/dorms) "azB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/commons/dorms) -"azC" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "azD" = ( /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock{ id_tag = "Dorm1"; name = "Dorm 1" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/grimy, /area/commons/dorms) "azE" = ( /obj/structure/table/wood, /obj/item/staff/broom, /obj/item/clothing/head/witchwig, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/theater) "azF" = ( @@ -16431,11 +14048,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "azJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16445,16 +14060,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "azK" = ( @@ -16463,16 +14068,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "azL" = ( @@ -16543,18 +14138,12 @@ /turf/open/floor/plating, /area/maintenance/starboard/central) "azS" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/starboard/central) @@ -16562,9 +14151,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -16574,13 +14160,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard/fore) "azV" = ( /obj/structure/table/reinforced, @@ -16597,16 +14179,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "azX" = ( @@ -16622,16 +14194,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "azZ" = ( @@ -16804,10 +14366,6 @@ /area/engineering/atmos) "aAu" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Access"; - req_access_txt = "24" - }, /obj/structure/cable/white{ icon_state = "4-8" }, @@ -16817,11 +14375,9 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/atmos{ + name = "Atmospherics Access"; + req_access_txt = "24" }, /turf/open/floor/plasteel, /area/engineering/atmos) @@ -16836,12 +14392,6 @@ /area/engineering/atmos) "aAw" = ( /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -16853,30 +14403,10 @@ /area/security/prison) "aAx" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/atmos) "aAy" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/atmos) "aAz" = ( @@ -16892,16 +14422,6 @@ dir = 4 }, /obj/effect/landmark/start/atmospheric_technician, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/atmos) "aAB" = ( @@ -16924,24 +14444,15 @@ codes_txt = "patrol;next_patrol=1.1-BrigCentral"; location = "9.6-LeavingDorms" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aAD" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Lockerroom" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/public/glass{ + name = "Lockerroom" }, /turf/open/floor/plasteel, /area/commons/dorms) @@ -16949,9 +14460,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/commons/dorms) "aAF" = ( @@ -16966,32 +14474,13 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/commons/dorms) -"aAH" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/commons/dorms) "aAI" = ( /obj/structure/sign/warning/nosmoking{ pixel_y = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aAJ" = ( /obj/structure/table, @@ -17023,27 +14512,13 @@ /area/service/theater) "aAM" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock{ + name = "Theatre Backstage"; + req_access_txt = "46" }, /turf/open/floor/plasteel/dark, /area/service/theater) @@ -17087,16 +14562,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aAP" = ( @@ -17112,16 +14577,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aAQ" = ( @@ -17182,21 +14637,15 @@ /turf/open/floor/plasteel, /area/service/bar/atrium) "aAT" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/starboard/central) @@ -17244,9 +14693,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -17258,19 +14704,14 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "aBb" = ( /obj/machinery/vending/cola/random, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard/fore) "aBc" = ( /obj/machinery/computer/security{ @@ -17619,9 +15060,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aBL" = ( @@ -17636,25 +15074,18 @@ codes_txt = "patrol;next_patrol=9.5-Dorms"; location = "9.4-EnteringDorms" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "aBM" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Lockerroom" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/public/glass{ + name = "Lockerroom" }, /turf/open/floor/plasteel, /area/commons/dorms) @@ -17665,9 +15096,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -17679,16 +15107,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/commons/dorms) "aBP" = ( @@ -17698,24 +15116,13 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/commons/dorms) "aBQ" = ( /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aBR" = ( /obj/machinery/light, @@ -17731,12 +15138,7 @@ codes_txt = "patrol;next_patrol=9.6-LeavingDorms"; location = "9.5-Dorms" }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/commons/dorms) -"aBS" = ( -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aBT" = ( /obj/machinery/washing_machine, @@ -17777,11 +15179,9 @@ /obj/machinery/camera{ c_tag = "Theatre Storage" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aBW" = ( /turf/open/floor/wood{ @@ -17806,17 +15206,9 @@ /obj/structure/cable/white{ icon_state = "0-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aBY" = ( /obj/machinery/airalarm{ @@ -17841,16 +15233,6 @@ "aBZ" = ( /obj/structure/table/wood, /obj/item/reagent_containers/food/snacks/cheesiehonkers, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aCa" = ( @@ -17882,16 +15264,12 @@ /area/service/kitchen) "aCd" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/airlock{ name = "Kitchen"; req_access_txt = "28" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/service/kitchen) "aCe" = ( /turf/closed/wall, @@ -17901,9 +15279,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -17915,13 +15290,9 @@ pixel_x = 24 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard/fore) "aCi" = ( /obj/effect/spawner/structure/window/reinforced, @@ -18033,10 +15404,6 @@ /area/security/brig) "aCr" = ( /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/security/glass{ name = "Gen-Pop Access"; @@ -18159,13 +15526,10 @@ dir = 8 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "aCE" = ( /obj/structure/cable/white{ @@ -18176,13 +15540,10 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "aCF" = ( /obj/effect/decal/cleanable/dirt, @@ -18231,10 +15592,6 @@ name = "Atmospherics Lockdown Blast door" }, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics Desk"; - req_access_txt = "24" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-8" @@ -18242,11 +15599,11 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/door/airlock/atmos/glass{ + name = "Atmospherics Desk"; + req_access_txt = "24" + }, /turf/open/floor/plasteel, /area/engineering/atmos) "aCJ" = ( @@ -18293,56 +15650,28 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/machinery/camera{ - c_tag = "Central Hallway East"; - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aCM" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/central) "aCN" = ( -/obj/structure/table, /obj/item/storage/firstaid/regular, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/item/paicard{ pixel_x = 15 }, +/obj/structure/table, /turf/open/floor/plasteel, /area/commons/dorms) "aCO" = ( -/obj/structure/table, /obj/item/storage/toolbox/mechanical{ pixel_x = 3; pixel_y = 3 }, /obj/item/storage/toolbox/emergency, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table, /turf/open/floor/plasteel, /area/commons/dorms) "aCP" = ( @@ -18354,11 +15683,9 @@ /obj/structure/sign/poster/contraband/clown{ pixel_x = -32 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aCQ" = ( /obj/effect/landmark/start/clown, @@ -18386,17 +15713,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aCT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -18432,19 +15751,15 @@ /obj/machinery/camera{ c_tag = "Kitchen" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/kitchen) "aCW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/kitchen) "aCX" = ( /obj/structure/sink/kitchen{ @@ -18452,11 +15767,9 @@ name = "sink"; pixel_y = 28 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/kitchen) "aCY" = ( /obj/machinery/light{ @@ -18468,11 +15781,9 @@ pixel_y = 32 }, /obj/structure/closet/secure_closet/freezer/kitchen, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/kitchen) "aCZ" = ( /obj/structure/closet/secure_closet/freezer/fridge, @@ -18481,11 +15792,9 @@ }, /obj/item/storage/box/donkpockets, /obj/item/storage/box/donkpockets, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/kitchen) "aDa" = ( /obj/structure/table/reinforced, @@ -18499,11 +15808,9 @@ /obj/structure/sign/nanotrasen{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/kitchen) "aDb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -18610,24 +15917,11 @@ /turf/open/floor/plasteel, /area/engineering/atmos) "aDm" = ( -/obj/structure/bookcase/random/fiction, -/obj/structure/cable/white{ - icon_state = "1-2" +/turf/open/floor/plating{ + icon_state = "platingdmg3" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/dark, -/area/service/library) +/area/maintenance/port/fore) "aDn" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -18639,7 +15933,9 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aDp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -18658,16 +15954,6 @@ /turf/open/floor/plasteel, /area/hallway/primary/port/aft) "aDq" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/closet/crate/bin, /obj/machinery/airalarm{ dir = 1; @@ -18691,19 +15977,15 @@ /area/engineering/atmos) "aDt" = ( /obj/machinery/door/firedoor, +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /obj/machinery/door/airlock/atmos{ name = "Atmospherics Engine Access"; req_access_txt = "24" }, -/obj/structure/cable/white{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /turf/open/floor/plasteel, /area/engineering/atmos) "aDu" = ( @@ -18788,24 +16070,17 @@ "aDC" = ( /obj/structure/table/reinforced, /obj/item/airlock_painter, -/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/hallway/primary/port) "aDD" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aDE" = ( /obj/effect/landmark/start/assistant, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aDF" = ( /obj/machinery/light{ @@ -18814,11 +16089,7 @@ /obj/machinery/newscaster{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aDG" = ( /obj/effect/landmark/event_spawn, @@ -18862,11 +16133,9 @@ /obj/structure/mirror{ pixel_x = -28 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aDK" = ( /obj/effect/landmark/start/mime, @@ -18893,35 +16162,21 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aDN" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock{ + name = "Theatre Backstage"; + req_access_txt = "46" }, /turf/open/floor/plasteel, /area/service/theater) @@ -18939,16 +16194,6 @@ /obj/structure/cable/white{ icon_state = "1-8" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aDP" = ( @@ -18956,16 +16201,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aDQ" = ( @@ -19057,21 +16292,13 @@ }, /turf/open/floor/plasteel, /area/service/kitchen) -"aDZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) "aEa" = ( /obj/structure/table, /obj/item/storage/firstaid/regular, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/hallway/primary/starboard) "aEb" = ( /obj/effect/turf_decal/bot, @@ -19082,16 +16309,6 @@ /area/hallway/secondary/exit) "aEc" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aEd" = ( @@ -19111,16 +16328,6 @@ codes_txt = "patrol;next_patrol=6.3-DeparturesS"; location = "6.2-DeparturesN" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aEf" = ( @@ -19131,13 +16338,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aEg" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/effect/turf_decal/stripes/line, -/obj/machinery/atmospherics/components/trinary/mixer/airmix/flipped{ - dir = 4 - }, /turf/open/floor/plasteel, /area/engineering/atmos) "aEh" = ( @@ -19153,9 +16354,6 @@ /obj/machinery/camera{ c_tag = "Aft Primary Hallway 4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/aft) "aEi" = ( @@ -19175,9 +16373,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/aft) "aEj" = ( @@ -19205,9 +16400,6 @@ /obj/structure/cable/white{ icon_state = "0-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/aft) "aEl" = ( @@ -19245,32 +16437,15 @@ name = "Station Intercom"; pixel_x = -26 }, -/obj/machinery/camera{ - c_tag = "Engineering Secure Storage"; - dir = 4; - network = list("ss13","engine") - }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/engineering/main) "aEo" = ( /obj/machinery/shieldgen, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/main) "aEp" = ( /obj/effect/turf_decal/stripes/line{ @@ -19288,36 +16463,19 @@ "aEr" = ( /obj/machinery/portable_atmospherics/canister/toxins, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/engineering/main) "aEs" = ( /obj/machinery/portable_atmospherics/canister/nitrogen, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/main) "aEt" = ( /turf/closed/wall/r_wall, /area/engineering/main) "aEu" = ( -/obj/machinery/computer/monitor{ - name = "Engineering Power Monitoring Console" - }, /obj/machinery/status_display{ pixel_x = -32 }, @@ -19331,9 +16489,8 @@ dir = 1 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/computer/monitor{ + name = "Engineering Power Monitoring Console" }, /turf/open/floor/plasteel/dark, /area/engineering/main) @@ -19341,12 +16498,12 @@ /obj/structure/cable/white{ icon_state = "0-8" }, -/obj/machinery/power/smes{ - charge = 5e+006 - }, /obj/structure/cable/white{ icon_state = "0-4" }, +/obj/machinery/power/smes{ + charge = 5e+006 + }, /turf/open/floor/circuit/green, /area/engineering/main) "aEw" = ( @@ -19427,32 +16584,12 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aED" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aEE" = ( @@ -19460,32 +16597,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aEF" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aEG" = ( @@ -19505,12 +16622,6 @@ /obj/machinery/door/airlock/public/glass{ name = "Engineering Foyer" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aEI" = ( @@ -19521,9 +16632,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aEJ" = ( @@ -19533,63 +16641,35 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 24 }, -/obj/effect/turf_decal/tile/neutral, +/obj/machinery/camera{ + c_tag = "Central Hallway West"; + dir = 8 + }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aEK" = ( -/obj/machinery/vending/clothing, /obj/machinery/firealarm{ dir = 4; pixel_x = -24 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/obj/machinery/vending/clothing, +/turf/open/floor/plasteel/dark/side, /area/commons/dorms) "aEL" = ( /obj/machinery/status_display{ pixel_y = -32 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/gear_painter, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/commons/dorms) "aEM" = ( /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/vending/kink, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/commons/dorms) "aEN" = ( -/obj/machinery/vending/autodrobe, /obj/structure/extinguisher_cabinet{ pixel_x = 26 }, @@ -19598,17 +16678,8 @@ dir = 8 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/obj/machinery/vending/autodrobe, +/turf/open/floor/plasteel/dark/side, /area/commons/dorms) "aEO" = ( /obj/structure/closet/secure_closet/personal/cabinet, @@ -19669,10 +16740,9 @@ /obj/structure/sign/poster/contraband/random{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aET" = ( /obj/structure/table/wood, @@ -19684,13 +16754,7 @@ name = "Station Intercom"; pixel_y = -26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/theater) "aEU" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -19700,13 +16764,7 @@ pixel_y = -32 }, /obj/structure/closet/crate/wooden/toy, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/theater) "aEV" = ( /obj/structure/closet/crate/bin, @@ -19717,13 +16775,9 @@ dir = 8; pixel_x = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, /area/service/theater) "aEW" = ( /obj/structure/chair/stool, @@ -19731,31 +16785,11 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aEX" = ( /obj/structure/table/wood, /obj/item/reagent_containers/food/snacks/chips, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aEY" = ( @@ -19868,21 +16902,15 @@ /turf/open/floor/plasteel/white, /area/service/kitchen) "aFf" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Kitchen Maintenance"; - req_access_txt = "28" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Kitchen Maintenance"; + req_access_txt = "28" }, /turf/open/floor/plating, /area/maintenance/starboard/central) @@ -19949,16 +16977,6 @@ /area/hallway/secondary/exit) "aFl" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aFm" = ( @@ -19972,16 +16990,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aFo" = ( @@ -20007,10 +17015,6 @@ /obj/machinery/power/emitter, /obj/machinery/light/small, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/engineering/main) "aFr" = ( @@ -20020,17 +17024,9 @@ pixel_y = -26 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/main) "aFs" = ( /obj/effect/turf_decal/stripes/line{ @@ -20046,17 +17042,9 @@ /area/engineering/main) "aFu" = ( /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/engineering/main) "aFv" = ( /obj/structure/closet/crate, @@ -20070,12 +17058,6 @@ pixel_x = 26 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/main) "aFw" = ( @@ -20156,17 +17138,21 @@ /turf/open/floor/plasteel, /area/engineering/main) "aFB" = ( -/obj/effect/turf_decal/delivery, -/obj/machinery/airalarm{ - pixel_y = 24 - }, /obj/machinery/camera{ c_tag = "Starboard Bow Solar"; network = list("ss13","engine") }, +/obj/machinery/power/solar_control{ + id = "forestarboard"; + name = "Starboard Bow Solar Control" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, /obj/structure/cable{ icon_state = "4-8" }, +/obj/effect/turf_decal/bot, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "aFC" = ( @@ -20198,16 +17184,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aFE" = ( @@ -20222,16 +17198,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aFF" = ( @@ -20242,16 +17208,6 @@ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aFG" = ( @@ -20262,16 +17218,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/break_room) "aFH" = ( @@ -20289,17 +17235,11 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/door/airlock/public/glass{ - name = "Engineering Foyer" - }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/public/glass{ + name = "Engineering Foyer" }, /turf/open/floor/plasteel, /area/engineering/break_room) @@ -20310,9 +17250,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -20331,9 +17268,6 @@ codes_txt = "patrol;next_patrol=9.3-Engi"; location = "9.2-EnteringEngi" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -20344,11 +17278,6 @@ pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Central Hallway West"; - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "aFM" = ( @@ -20387,16 +17316,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aFP" = ( @@ -20404,16 +17323,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aFQ" = ( @@ -20497,9 +17406,6 @@ name = "Station Intercom"; pixel_x = -26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aFY" = ( @@ -20520,16 +17426,6 @@ "aGa" = ( /obj/effect/landmark/event_spawn, /obj/item/beacon, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aGb" = ( @@ -20608,10 +17504,6 @@ /area/engineering/main) "aGk" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering/glass{ - name = "Power Monitoring"; - req_access_txt = "32" - }, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -20622,9 +17514,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/engineering/glass{ + name = "Power Monitoring"; + req_access_txt = "32" }, /turf/open/floor/plasteel, /area/engineering/main) @@ -20660,20 +17552,16 @@ /area/engineering/main) "aGn" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Access"; - req_access_txt = "10" - }, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, +/obj/machinery/door/airlock/engineering{ + name = "Engineering Access"; + req_access_txt = "10" + }, /turf/open/floor/plasteel, /area/engineering/main) "aGo" = ( @@ -20753,7 +17641,6 @@ /obj/item/stock_parts/cell/high, /obj/item/stock_parts/cell/high, /obj/machinery/cell_charger, -/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/hallway/primary/port) "aGw" = ( @@ -20764,9 +17651,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -20775,7 +17659,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "aGy" = ( @@ -20869,11 +17752,9 @@ pixel_y = 32 }, /obj/machinery/door/window/southleft, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/medical/genetics) "aGG" = ( /obj/structure/cable/white{ @@ -20966,16 +17847,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aGO" = ( @@ -20991,16 +17862,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aGP" = ( @@ -21009,16 +17870,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aGQ" = ( @@ -21060,10 +17911,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel/white/corner, +/turf/open/floor/plasteel/dark/side, /area/service/kitchen) "aGS" = ( /obj/machinery/processor, @@ -21072,23 +17920,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel/white/corner, +/turf/open/floor/plasteel/dark/side, /area/service/kitchen) "aGT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/kitchen) "aGU" = ( /obj/structure/rack, @@ -21102,13 +17941,7 @@ /obj/item/storage/box/donkpockets, /obj/item/clothing/head/chefhat, /obj/machinery/light, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/kitchen) "aGV" = ( /obj/structure/table/reinforced, @@ -21121,13 +17954,7 @@ dir = 1; pixel_y = -22 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/kitchen) "aGW" = ( /obj/structure/table/reinforced, @@ -21136,21 +17963,12 @@ pixel_x = -3; pixel_y = 5 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/kitchen) "aGX" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aGY" = ( @@ -21176,12 +17994,6 @@ dir = 8 }, /obj/effect/turf_decal/loading_area, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, /obj/structure/disposalpipe/segment{ dir = 9 }, @@ -21227,33 +18039,19 @@ name = "Station Intercom"; pixel_y = 26 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/medical/genetics) "aHd" = ( /obj/structure/window/reinforced, /obj/machinery/clonepod, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/medical/genetics) "aHe" = ( /obj/effect/turf_decal/bot_white/right, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aHf" = ( @@ -21268,20 +18066,10 @@ "aHg" = ( /obj/machinery/camera{ c_tag = "Gravity Generator Room"; - dir = 8; + dir = 6; network = list("ss13","engine") }, /obj/effect/turf_decal/bot_white/left, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aHh" = ( @@ -21439,7 +18227,7 @@ /area/engineering/main) "aHs" = ( /obj/effect/turf_decal/tile/blue, -/obj/machinery/vending/medical, +/obj/structure/closet/crate/freezer/blood, /turf/open/floor/plasteel/white, /area/medical/medbay/zone3) "aHt" = ( @@ -21461,15 +18249,13 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/item/kirbyplants{ - icon_state = "plant-22" - }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/obj/machinery/vending/wardrobe/engi_wardrobe, /turf/open/floor/engine, /area/engineering/main) "aHv" = ( @@ -21501,10 +18287,6 @@ name = "Engineering Lockdown Shutters" }, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Access"; - req_access_txt = "10" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, @@ -21514,13 +18296,13 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, +/obj/machinery/door/airlock/engineering{ + name = "Engineering Access"; + req_access_txt = "10" + }, /turf/open/floor/plasteel, /area/engineering/main) "aHy" = ( @@ -21592,9 +18374,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -21607,7 +18386,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "aHE" = ( @@ -21618,30 +18396,20 @@ icon_state = "4-8" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/port) "aHF" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/port/central) @@ -21656,11 +18424,6 @@ /obj/structure/cable/white{ icon_state = "0-4" }, -/obj/structure/table, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, /obj/machinery/button/door{ id = "geneticsbot"; name = "Genetics Shutter Control"; @@ -21674,7 +18437,10 @@ pixel_y = 4 }, /obj/item/storage/box/rxglasses, -/turf/open/floor/plasteel/dark, +/obj/structure/table, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/medical/genetics) "aHH" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21736,10 +18502,6 @@ /turf/closed/wall, /area/service/hydroponics) "aHO" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Hydroponics Maintenance"; - req_access_txt = "35" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -21747,9 +18509,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Hydroponics Maintenance"; + req_access_txt = "35" }, /turf/open/floor/plating, /area/maintenance/port/central) @@ -21791,31 +18553,11 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aHT" = ( /obj/structure/table/wood, /obj/item/reagent_containers/food/drinks/coffee, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aHU" = ( @@ -21844,49 +18586,37 @@ /area/service/kitchen) "aHW" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Kitchen Coldroom"; - req_access_txt = "28" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock{ + name = "Kitchen Coldroom"; + req_access_txt = "28" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/service/kitchen) "aHX" = ( /obj/structure/sign/warning/nosmoking{ pixel_x = 32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/effect/turf_decal/bot, /obj/machinery/computer/scan_consolenew{ dir = 8 }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/medical/genetics) "aHY" = ( /obj/structure/table, /obj/item/paper_bin, /obj/item/pen, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard) "aHZ" = ( /obj/item/kirbyplants{ @@ -21899,16 +18629,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aIb" = ( @@ -21916,16 +18636,6 @@ pixel_x = -32 }, /obj/effect/turf_decal/bot_white, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aIc" = ( @@ -21933,16 +18643,6 @@ /area/engineering/gravity_generator) "aId" = ( /obj/effect/turf_decal/bot_white, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aIe" = ( @@ -22187,9 +18887,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -22203,23 +18900,18 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "aIB" = ( /turf/closed/wall, /area/service/janitor) "aIC" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Custodial Maintenance"; - req_access_txt = "26" - }, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Custodial Maintenance"; + req_access_txt = "26" }, /turf/open/floor/plating, /area/maintenance/port/central) @@ -22242,11 +18934,9 @@ /obj/effect/turf_decal/delivery, /obj/item/wrench, /obj/item/wirecutters, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/hydroponics) "aIF" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -22254,11 +18944,9 @@ pixel_y = 32 }, /obj/structure/closet/secure_closet/hydroponics, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/corner{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/hydroponics) "aIG" = ( /obj/machinery/hydroponics/constructable, @@ -22308,11 +18996,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/corner{ + dir = 4 }, -/turf/open/floor/plasteel/dark, /area/service/hydroponics) "aIM" = ( /obj/machinery/requests_console{ @@ -22325,26 +19011,21 @@ /obj/machinery/chem_master/condimaster{ name = "BrewMaster 3000" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/hydroponics) "aIN" = ( -/obj/machinery/vending/hydronutrients, /obj/structure/noticeboard{ pixel_y = 30 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/vending/hydronutrients, +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/hydroponics) "aIO" = ( -/obj/machinery/vending/hydroseeds, /obj/machinery/light_switch{ pixel_x = -8; pixel_y = 24 @@ -22357,11 +19038,10 @@ req_access_txt = "35" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/vending/hydroseeds, +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/service/hydroponics) "aIP" = ( /obj/structure/table/reinforced, @@ -22380,16 +19060,9 @@ pixel_x = 32 }, /obj/structure/closet/crate/bin, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aIR" = ( /obj/structure/closet/secure_closet/freezer/meat, @@ -22450,9 +19123,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aIY" = ( @@ -22463,9 +19133,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aIZ" = ( @@ -22486,14 +19153,14 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aJb" = ( -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner, /area/hallway/secondary/exit) "aJc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner, @@ -22539,51 +19206,26 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/machinery/dna_scannernew, -/obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/delivery, /obj/machinery/firealarm{ dir = 8; pixel_x = 24 }, -/turf/open/floor/plasteel/dark, +/obj/machinery/dna_scannernew, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/medical/genetics) "aJh" = ( /obj/machinery/light{ dir = 8 }, /obj/effect/turf_decal/bot_white/left, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aJi" = ( /obj/machinery/gravity_generator/main/station, /obj/effect/turf_decal/bot_white, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aJj" = ( @@ -22753,17 +19395,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel/dark, /area/engineering/main) -"aJx" = ( -/obj/structure/cable/white{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/dark, -/area/medical/morgue) "aJy" = ( /obj/structure/cable{ icon_state = "1-2" @@ -22860,16 +19491,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/main) "aJE" = ( @@ -22891,16 +19512,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/main) "aJG" = ( @@ -22938,7 +19549,6 @@ /turf/open/floor/plasteel, /area/engineering/main) "aJI" = ( -/obj/structure/table/reinforced, /obj/item/storage/box/mousetraps{ pixel_x = 3; pixel_y = 3 @@ -22957,11 +19567,10 @@ c_tag = "Custodial Closet" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aJJ" = ( /obj/vehicle/ridden/janicart, @@ -22977,14 +19586,18 @@ icon_state = "0-2" }, /obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/service/janitor) "aJK" = ( /obj/structure/cable/white{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/service/janitor) "aJL" = ( /obj/structure/closet/crate/bin, @@ -22997,13 +19610,9 @@ name = "Station Intercom"; pixel_x = 26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 5 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aJM" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -23131,27 +19740,13 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "aJX" = ( /obj/machinery/vending/cola/random, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aJY" = ( /obj/structure/sign/warning/nosmoking, @@ -23240,13 +19835,7 @@ "aKg" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/hallway/primary/port/aft) "aKh" = ( /obj/structure/sign/nanotrasen, @@ -23293,19 +19882,15 @@ /turf/closed/wall, /area/maintenance/port/aft) "aKn" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line, /obj/structure/cable/white{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/space/basic, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, +/turf/open/floor/plating, /area/maintenance/port/aft) "aKo" = ( /obj/structure/lattice, @@ -23316,16 +19901,6 @@ dir = 4; pixel_x = -23 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -23335,16 +19910,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aKr" = ( @@ -23360,26 +19925,22 @@ /area/solars/port/aft) "aKs" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command/glass{ - name = "Gravity Generator Chamber"; - req_access_txt = "19; 61" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/structure/cable{ icon_state = "2-4" }, /obj/structure/cable{ icon_state = "1-4" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/turf/open/floor/plasteel, +/obj/machinery/door/airlock/engineering/glass{ + name = "Gravity Generator"; + req_access_txt = "11" + }, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/engineering/gravity_generator) "aKt" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -23404,16 +19965,6 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/gravity_generator) "aKv" = ( @@ -23439,10 +19990,6 @@ /area/engineering/gravity_generator) "aKx" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Access"; - req_access_txt = "10" - }, /obj/structure/cable/white{ icon_state = "1-8" }, @@ -23452,16 +19999,14 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, +/obj/machinery/door/airlock/engineering{ + name = "Engineering Access"; + req_access_txt = "10" + }, /turf/open/floor/plasteel, /area/engineering/gravity_generator) "aKy" = ( @@ -23552,10 +20097,6 @@ /area/engineering/main) "aKH" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Access"; - req_access_txt = "10" - }, /obj/structure/cable/white{ icon_state = "1-8" }, @@ -23565,11 +20106,9 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/engineering{ + name = "Engineering Access"; + req_access_txt = "10" }, /turf/open/floor/plasteel, /area/engineering/main) @@ -23634,16 +20173,6 @@ }, /obj/item/rcl/pre_loaded, /obj/item/rcl/pre_loaded, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/main) "aKM" = ( @@ -23654,7 +20183,7 @@ /obj/effect/turf_decal/bot, /obj/structure/closet/l3closet/janitor, /obj/item/toy/figure/janitor, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side, /area/service/janitor) "aKN" = ( /obj/structure/cable/white{ @@ -23663,16 +20192,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/main) "aKO" = ( @@ -23696,7 +20215,6 @@ /turf/open/floor/plasteel, /area/engineering/main) "aKP" = ( -/obj/structure/table/reinforced, /obj/item/clothing/gloves/color/orange, /obj/item/reagent_containers/spray/cleaner, /obj/item/reagent_containers/spray/cleaner, @@ -23709,11 +20227,10 @@ pixel_x = -32 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aKQ" = ( /obj/effect/landmark/start/janitor, @@ -23758,13 +20275,9 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aKT" = ( /obj/effect/turf_decal/stripes/line{ @@ -23781,38 +20294,17 @@ /area/service/hydroponics) "aKU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/hydroponics) "aKV" = ( /turf/closed/wall/r_wall, /area/medical/virology) "aKW" = ( -/obj/machinery/seed_extractor, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/seed_extractor, /turf/open/floor/plasteel, /area/service/hydroponics) "aKX" = ( -/obj/structure/table/glass, /obj/item/crowbar/red, /obj/item/cultivator, /obj/item/shovel/spade, @@ -23824,20 +20316,10 @@ }, /obj/item/reagent_containers/glass/bucket, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table/glass, /turf/open/floor/plasteel, /area/service/hydroponics) "aKY" = ( -/obj/structure/table/glass, /obj/machinery/reagentgrinder{ desc = "Used to grind things up into raw materials and liquids."; pixel_y = 5 @@ -23848,35 +20330,16 @@ /obj/item/reagent_containers/glass/bottle/nutrient/rh, /obj/item/reagent_containers/dropper, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table/glass, /turf/open/floor/plasteel, /area/service/hydroponics) "aKZ" = ( -/obj/structure/table/glass, /obj/item/watertank, /obj/item/reagent_containers/spray/pestspray, /obj/item/grenade/chem_grenade/antiweed, /obj/item/grenade/chem_grenade/antiweed, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table/glass, /turf/open/floor/plasteel, /area/service/hydroponics) "aLa" = ( @@ -23886,16 +20349,6 @@ icon_state = "1-2" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/hydroponics) "aLb" = ( @@ -23919,13 +20372,7 @@ /obj/item/reagent_containers/food/snacks/grown/tomato, /obj/effect/turf_decal/bot, /obj/item/paper/guides/jobs/hydroponics, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/hydroponics) "aLd" = ( /obj/structure/table/glass, @@ -23941,13 +20388,7 @@ /obj/item/seeds/tower, /obj/effect/turf_decal/bot, /obj/item/book/manual/hydroponics_pod_people, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/hydroponics) "aLe" = ( /obj/machinery/smartfridge, @@ -23980,13 +20421,9 @@ dir = 8; pixel_x = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aLi" = ( /obj/structure/kitchenspike, @@ -24013,9 +20450,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aLn" = ( @@ -24046,6 +20480,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, +/obj/effect/turf_decal/trimline/green/line, /turf/open/floor/plating, /area/maintenance/port/aft) "aLq" = ( @@ -24145,6 +20580,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, +/obj/effect/turf_decal/trimline/green/line{ + dir = 1 + }, /turf/open/floor/plating, /area/maintenance/port/aft) "aLC" = ( @@ -24166,16 +20604,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "aLF" = ( @@ -24249,13 +20677,10 @@ /turf/open/floor/plasteel, /area/engineering/gravity_generator) "aLL" = ( -/obj/effect/turf_decal/box, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solars/port/aft) +/obj/structure/grille, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) "aLM" = ( /obj/structure/cable/white{ icon_state = "1-2" @@ -24387,16 +20812,6 @@ /turf/open/floor/plasteel, /area/engineering/main) "aMa" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/main) "aMb" = ( @@ -24447,7 +20862,6 @@ /turf/open/floor/plasteel, /area/engineering/main) "aMe" = ( -/obj/structure/table/reinforced, /obj/item/storage/box/lights/mixed{ pixel_x = 3; pixel_y = 3 @@ -24458,11 +20872,10 @@ dir = 4; pixel_x = -23 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aMf" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -24503,13 +20916,9 @@ dir = 9 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aMi" = ( /obj/effect/turf_decal/stripes/line{ @@ -24675,17 +21084,7 @@ /obj/structure/sign/poster/contraband/random{ pixel_y = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/maintenance/port/aft) "aMw" = ( /obj/structure/rack, @@ -24695,17 +21094,10 @@ }, /obj/item/storage/secure/briefcase, /obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aMx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24721,13 +21113,9 @@ icon_state = "plant-22" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard) "aMz" = ( /obj/item/kirbyplants{ @@ -24750,16 +21138,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aMC" = ( @@ -24809,16 +21187,12 @@ /area/tcommsat/server) "aML" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Telecomms Control Room"; - req_access_txt = "19; 61" - }, /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/engineering{ + name = "Telecommunications"; + req_access_txt = "61" }, /turf/open/floor/plasteel, /area/tcommsat/server) @@ -24935,15 +21309,9 @@ /turf/open/floor/engine, /area/engineering/supermatter) "aMY" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/machinery/dna_scannernew, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel/dark, +/obj/machinery/dna_scannernew, +/turf/open/floor/plasteel/dark/side, /area/medical/genetics) "aMZ" = ( /obj/structure/cable{ @@ -25056,9 +21424,6 @@ c_tag = "Atmospherics South West"; dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -25068,7 +21433,6 @@ /obj/machinery/newscaster{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "aNj" = ( @@ -25079,11 +21443,9 @@ pixel_y = -26 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aNk" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -25091,18 +21453,13 @@ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side, /area/service/janitor) "aNl" = ( -/obj/structure/table, /obj/machinery/airalarm/unlocked{ dir = 4; pixel_x = -23 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, /obj/item/clipboard, /obj/item/folder/white, /obj/item/storage/pill_bottle/mutadone{ @@ -25118,32 +21475,25 @@ pixel_x = 5; pixel_y = 13 }, -/turf/open/floor/plasteel/dark, +/obj/structure/table, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/medical/genetics) "aNm" = ( /obj/effect/turf_decal/bot, /obj/machinery/vending/wardrobe/jani_wardrobe, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/janitor) "aNn" = ( -/obj/structure/table/glass, /obj/item/storage/box/syringes, /obj/effect/turf_decal/bot, /obj/item/storage/box/disks_plantgene, /obj/item/toy/figure/botanist, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/obj/structure/table/glass, +/turf/open/floor/plasteel/dark/side, /area/service/hydroponics) "aNo" = ( /obj/machinery/light_switch{ @@ -25170,12 +21520,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/door/airlock/medical/glass{ name = "Genetics"; req_access_txt = "5; 9; 68" @@ -25216,13 +21560,9 @@ /area/service/hydroponics) "aNt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/corner{ + dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, /area/service/hydroponics) "aNu" = ( /obj/structure/closet/crate/bin, @@ -25232,13 +21572,7 @@ dir = 8 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/service/hydroponics) "aNv" = ( /obj/structure/window/reinforced{ @@ -25257,30 +21591,22 @@ /area/service/hydroponics) "aNy" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Atrium" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/service/bar/atrium) -"aNz" = ( -/obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ name = "Atrium" }, +/turf/open/floor/plasteel/dark, +/area/service/bar/atrium) +"aNz" = ( +/obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/public/glass{ + name = "Atrium" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "aNA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25328,9 +21654,6 @@ pixel_x = -24 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -25440,19 +21763,15 @@ /area/medical/genetics) "aNQ" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 1 + }, /obj/machinery/door/airlock/medical/glass{ id_tag = "cloningfoyer"; name = "Cloning Lab"; req_access_txt = "5" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, /turf/open/floor/plasteel, /area/medical/genetics) "aNR" = ( @@ -25475,23 +21794,13 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone3) "aNT" = ( -/obj/machinery/announcement_system, /obj/machinery/status_display/ai{ pixel_x = -32 }, /obj/machinery/firealarm{ pixel_y = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/announcement_system, /turf/open/floor/plasteel/dark, /area/tcommsat/server) "aNU" = ( @@ -25515,21 +21824,11 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/server) "aNX" = ( -/obj/machinery/computer/telecomms/monitor{ - dir = 8 - }, /obj/item/radio/intercom{ name = "Station Intercom"; pixel_y = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/computer/telecomms/monitor{ dir = 8 }, /turf/open/floor/plasteel/dark, @@ -25608,37 +21907,27 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/door/airlock/command{ - name = "Chief Medical Officer's Office"; - req_access_txt = "40" - }, /obj/machinery/door/firedoor, /obj/structure/cable/white{ icon_state = "2-8" }, +/obj/machinery/door/airlock/command{ + name = "Chief Medical Officer's Office"; + req_access_txt = "40" + }, /turf/open/floor/plasteel, /area/command/heads_quarters/cmo) "aOf" = ( -/obj/machinery/door/airlock{ - name = "Custodial Closet"; - req_access_txt = "26" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock{ + name = "Custodial Closet"; + req_access_txt = "26" }, /turf/open/floor/plasteel, /area/service/janitor) @@ -25666,15 +21955,11 @@ /area/service/hydroponics) "aOi" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/airlock/medical/glass{ name = "Hydroponics"; req_access_txt = "35" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/service/hydroponics) "aOj" = ( @@ -25779,41 +22064,29 @@ /obj/machinery/shieldgen, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/maintenance/port/aft) "aOu" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/starboard/central) "aOv" = ( -/obj/machinery/computer/message_monitor{ - dir = 4 - }, /obj/machinery/newscaster{ pixel_x = -32 }, /obj/item/paper/monitorkey, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/computer/message_monitor{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/tcommsat/server) "aOw" = ( @@ -25833,9 +22106,6 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/server) "aOy" = ( -/obj/machinery/computer/telecomms/server{ - dir = 8 - }, /obj/machinery/newscaster{ pixel_x = 32 }, @@ -25843,14 +22113,7 @@ pixel_x = 24; pixel_y = -24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/computer/telecomms/server{ dir = 8 }, /turf/open/floor/plasteel/dark, @@ -26017,17 +22280,9 @@ /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aON" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aOO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26040,17 +22295,9 @@ icon_state = "4-8" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/port/aft) "aOP" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -26060,9 +22307,6 @@ /obj/structure/cable/white{ icon_state = "1-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -26121,12 +22365,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/airalarm{ pixel_y = 24 }, @@ -26249,12 +22487,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/aft) "aPe" = ( @@ -26410,9 +22642,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aPq" = ( @@ -26434,9 +22663,6 @@ /obj/structure/cable/white{ icon_state = "0-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aPr" = ( @@ -26450,9 +22676,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aPs" = ( @@ -26465,9 +22688,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aPt" = ( @@ -26480,9 +22700,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aPu" = ( @@ -26493,9 +22710,6 @@ /obj/structure/cable/white{ icon_state = "1-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aPv" = ( @@ -26534,9 +22748,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aPx" = ( @@ -26549,20 +22760,15 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aPy" = ( /obj/structure/table, /obj/item/storage/briefcase, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard) "aPz" = ( /obj/effect/turf_decal/delivery, @@ -26590,11 +22796,11 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor, /obj/machinery/door/airlock/grunge{ name = "Morgue"; req_access_txt = "5" }, -/obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/medical/morgue) "aPB" = ( @@ -26638,10 +22844,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel/dark, /area/medical/morgue) "aPF" = ( @@ -26663,10 +22865,6 @@ /turf/open/floor/plating, /area/tcommsat/server) "aPH" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, /obj/structure/disposalpipe/trunk{ dir = 1 }, @@ -26790,15 +22988,11 @@ /area/maintenance/port/aft) "aPU" = ( /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock{ id_tag = "Dorm2"; name = "Dorm 2" }, -/turf/open/floor/plasteel, +/turf/open/floor/carpet, /area/commons/dorms) "aPV" = ( /obj/structure/barricade/wooden, @@ -26806,10 +23000,6 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/maintenance/port/aft) "aPW" = ( @@ -26819,17 +23009,9 @@ pixel_x = -24 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/port/aft) "aPX" = ( /obj/item/kirbyplants{ @@ -26839,9 +23021,6 @@ c_tag = "Central Primary Hallway South-West"; dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -26851,9 +23030,6 @@ codes_txt = "patrol;next_patrol=9.2-EnteringEngi"; location = "9.1-Library" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, @@ -26869,9 +23045,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -26883,18 +23056,12 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, /area/hallway/primary/port/aft) "aQb" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -26904,21 +23071,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/aft) "aQd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -26929,17 +23087,11 @@ dir = 8; network = list("ss13","medbay") }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/machinery/computer/scan_consolenew{ dir = 1 }, /obj/effect/turf_decal/bot, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/medical/genetics) "aQf" = ( /obj/machinery/firealarm{ @@ -26949,9 +23101,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -26966,16 +23115,6 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aQh" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/airalarm{ dir = 4; pixel_x = -22 @@ -26983,16 +23122,6 @@ /turf/open/floor/plasteel/dark, /area/medical/morgue) "aQi" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, @@ -27137,7 +23266,6 @@ dir = 4 }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aQy" = ( @@ -27148,7 +23276,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aQz" = ( @@ -27159,7 +23286,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "aQA" = ( @@ -27174,29 +23300,15 @@ dir = 1 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard) "aQB" = ( /obj/structure/sign/poster/contraband/random, /turf/closed/wall, /area/maintenance/port/aft) "aQC" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, @@ -27211,16 +23323,6 @@ icon_state = "2-4" }, /obj/effect/landmark/blobstart, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, @@ -27234,9 +23336,6 @@ /turf/open/floor/plating/asteroid, /area/command/heads_quarters/rd) "aQF" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/structure/sign/warning/fire{ desc = "A sign that states the labeled room's number."; icon_state = "roomnum"; @@ -27244,7 +23343,7 @@ pixel_x = -1; pixel_y = 26 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aQG" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ @@ -27254,16 +23353,6 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "aQH" = ( @@ -27271,16 +23360,12 @@ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/machinery/door/airlock/command{ - name = "Telecomms Server Room"; - req_access_txt = "61" - }, -/obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/engineering/glass{ + name = "Server Room"; + req_access_txt = "61" }, /turf/open/floor/plasteel/grimy, /area/tcommsat/server) @@ -27289,12 +23374,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/medical/morgue) "aQJ" = ( @@ -27320,12 +23399,6 @@ "aQL" = ( /obj/structure/table/wood, /obj/item/clothing/gloves/color/latex, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/medical/morgue) "aQM" = ( @@ -27389,38 +23462,26 @@ /turf/open/floor/engine, /area/engineering/main) "aQU" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/structure/cable/white{ icon_state = "1-2" }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plasteel, /area/maintenance/port/aft) "aQV" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/computer/arcade{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/maintenance/port/aft) "aQW" = ( /turf/closed/wall, @@ -27431,28 +23492,20 @@ /area/service/library) "aQY" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/public/glass{ name = "Library Access" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/service/library) "aQZ" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Library Access" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/public/glass{ + name = "Library Access" }, /turf/open/floor/plasteel, /area/service/library) @@ -27475,7 +23528,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral, /obj/structure/sign/warning/fire{ desc = "A sign that states the labeled room's number."; dir = 4; @@ -27484,7 +23536,7 @@ pixel_x = -1; pixel_y = -24 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "aRf" = ( /turf/closed/wall, @@ -27568,10 +23620,6 @@ /obj/structure/bodycontainer/morgue{ dir = 2 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/medical/morgue) @@ -27609,58 +23657,42 @@ /area/science/lab) "aRu" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research Division Access"; - req_access_txt = "47" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/research{ + name = "Research Division Access"; + req_access_txt = "47" }, /turf/open/floor/plasteel, /area/science/research) "aRv" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/research{ name = "Research Division Access"; req_access_txt = "47" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/science/research) "aRw" = ( /obj/structure/bodycontainer/morgue{ dir = 2 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, /turf/open/floor/plasteel/dark, /area/medical/morgue) "aRx" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/starboard/aft) @@ -27709,10 +23741,6 @@ /obj/item/clipboard, /obj/item/storage/firstaid/o2, /obj/item/crowbar, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/tcommsat/server) "aRC" = ( @@ -27723,19 +23751,11 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/tcommsat/server) "aRE" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer/on, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/thermomachine/freezer/on, /turf/open/floor/plasteel/dark, /area/tcommsat/server) "aRF" = ( @@ -27873,36 +23893,21 @@ c_tag = "Library 2"; dir = 4 }, -/turf/open/floor/plasteel/dark, +/obj/structure/sign/painting{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aRU" = ( /obj/structure/table/wood, /obj/item/folder, /obj/item/pen, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aRV" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -27916,16 +23921,6 @@ name = "Station Intercom"; pixel_y = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aRX" = ( @@ -27934,7 +23929,9 @@ /obj/machinery/newscaster{ pixel_y = 32 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aRY" = ( /obj/structure/table/wood, @@ -27946,23 +23943,15 @@ }, /obj/item/paper_bin, /obj/item/pen, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aRZ" = ( /obj/structure/chair/office/dark{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aSa" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -27978,16 +23967,6 @@ "aSc" = ( /obj/structure/table/wood, /obj/machinery/computer/libraryconsole, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aSd" = ( @@ -27996,7 +23975,9 @@ /obj/machinery/newscaster{ pixel_x = 32 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aSe" = ( /obj/machinery/vending/wallmed{ @@ -28020,7 +24001,9 @@ }, /obj/machinery/shieldgen, /obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/maintenance/port/aft) "aSg" = ( /obj/item/cigbutt, @@ -28049,7 +24032,9 @@ /obj/structure/closet/secure_closet/medical1, /obj/item/storage/box/beakers, /obj/item/storage/box/pillbottles, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/medical/chemistry) "aSk" = ( /obj/structure/cable/white{ @@ -28071,16 +24056,6 @@ /turf/open/floor/plasteel, /area/medical/chemistry) "aSm" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) @@ -28099,16 +24074,6 @@ /turf/open/floor/plasteel, /area/medical/chemistry) "aSo" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel/dark, /area/medical/morgue) @@ -28146,10 +24111,6 @@ "aSt" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aSu" = ( @@ -28313,29 +24274,15 @@ }, /area/maintenance/port/aft) "aSM" = ( -/obj/machinery/door/airlock/command{ - name = "Telecomms Server Room"; - req_access_txt = "61" - }, /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/engineering/glass{ + name = "Server Room"; + req_access_txt = "61" }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) @@ -28354,7 +24301,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/obj/machinery/vending/wardrobe/engi_wardrobe, +/obj/structure/sign/warning/vacuum/external{ + pixel_x = -32 + }, /turf/open/floor/engine, /area/engineering/main) "aSQ" = ( @@ -28362,12 +24311,6 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/port/aft) "aSR" = ( @@ -28396,18 +24339,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, /area/engineering/main) -"aSU" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ - dir = 1 - }, -/turf/open/floor/engine, -/area/engineering/main) "aSV" = ( /obj/machinery/power/emitter/anchored{ dir = 1; @@ -28425,11 +24356,8 @@ /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ dir = 1 }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/effect/turf_decal/stripes/end{ + dir = 1 }, /turf/open/floor/engine, /area/engineering/main) @@ -28483,64 +24411,40 @@ dir = 8 }, /obj/effect/landmark/start/assistant, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aTd" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aTe" = ( /obj/structure/chair/office/dark{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aTf" = ( /obj/structure/table/wood, /obj/item/clipboard, /obj/item/storage/dice, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aTg" = ( /obj/structure/table/wood, /obj/item/folder, /obj/item/pen/red, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aTh" = ( /obj/structure/chair/office/dark{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aTi" = ( @@ -28548,7 +24452,9 @@ dir = 4 }, /obj/effect/landmark/start/librarian, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aTj" = ( /obj/effect/turf_decal/stripes/line{ @@ -28638,7 +24544,9 @@ dir = 6 }, /obj/machinery/vending/wardrobe/chem_wardrobe, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/medical/chemistry) "aTr" = ( /obj/structure/cable/white{ @@ -28669,15 +24577,13 @@ /turf/open/floor/plasteel, /area/medical/chemistry) "aTv" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -22 +/obj/machinery/door/airlock/virology/glass{ + name = "Isolation Room"; + req_access_txt = "39" }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 1 +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 }, /turf/open/floor/plasteel/freezer, /area/medical/virology) @@ -28693,16 +24599,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aTy" = ( @@ -28735,16 +24631,6 @@ /area/commons/lounge) "aTD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aTE" = ( @@ -28817,10 +24703,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aTL" = ( @@ -28856,21 +24738,15 @@ /turf/open/floor/plasteel/white, /area/science/research) "aTO" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Science Maintenance"; - req_access_txt = "47" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Science Maintenance"; + req_access_txt = "47" }, /turf/open/floor/plating, /area/science/research) @@ -28944,26 +24820,18 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aTW" = ( -/obj/structure/bed, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel/freezer, /area/medical/virology) "aTX" = ( @@ -28971,16 +24839,6 @@ dir = 8 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "aTY" = ( @@ -28991,16 +24849,6 @@ dir = 4 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "aTZ" = ( @@ -29011,16 +24859,6 @@ dir = 9 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "aUa" = ( @@ -29028,16 +24866,6 @@ /turf/closed/wall/r_wall/rust, /area/engineering/main) "aUb" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/landmark/event_spawn, /obj/structure/cable/white{ @@ -29059,7 +24887,9 @@ /obj/structure/cable/white{ icon_state = "0-4" }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aUd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -29106,7 +24936,9 @@ /area/maintenance/port/aft) "aUj" = ( /obj/machinery/photocopier, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aUk" = ( /obj/structure/table/wood, @@ -29119,31 +24951,15 @@ /obj/structure/sign/poster/contraband/random{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aUm" = ( /obj/machinery/computer/slot_machine, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aUn" = ( /obj/effect/spawner/structure/window/reinforced/tinted, @@ -29176,17 +24992,9 @@ pixel_y = 5 }, /obj/item/reagent_containers/syringe, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aUq" = ( /obj/structure/table/wood, @@ -29212,16 +25020,12 @@ /turf/closed/wall, /area/medical/chemistry) "aUs" = ( -/obj/structure/table/glass, /obj/machinery/reagentgrinder{ pixel_y = 5 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/obj/structure/table/glass, +/turf/open/floor/plasteel, /area/medical/chemistry) "aUt" = ( /obj/effect/turf_decal/bot, @@ -29241,6 +25045,7 @@ /obj/structure/cable/white{ icon_state = "1-8" }, +/obj/effect/turf_decal/trimline/green/line, /turf/open/floor/plating, /area/maintenance/port/aft) "aUv" = ( @@ -29259,7 +25064,7 @@ dir = 4 }, /obj/structure/closet/crate/bin, -/turf/open/floor/plasteel/white, +/turf/open/floor/plasteel, /area/medical/chemistry) "aUx" = ( /obj/structure/chair/comfy/brown{ @@ -29281,26 +25086,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aUB" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aUC" = ( @@ -29309,10 +25100,6 @@ dir = 5 }, /obj/machinery/rnd/production/protolathe/department/science, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aUD" = ( @@ -29345,10 +25132,6 @@ dir = 8 }, /obj/item/multitool, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aUF" = ( @@ -29401,39 +25184,24 @@ /obj/machinery/computer/security/telescreen/entertainment{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/effect/turf_decal/trimline/green/line, /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aUK" = ( /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/machinery/door/airlock/virology{ name = "Virology Access"; req_access_txt = "39" }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, /turf/open/floor/plasteel, /area/medical/virology) "aUL" = ( @@ -29448,16 +25216,12 @@ /area/maintenance/port/aft) "aUM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Medbay Maintenance"; - req_access_txt = "5" - }, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Medbay Maintenance"; + req_access_txt = "5" }, /turf/open/floor/plasteel, /area/maintenance/port/aft) @@ -29467,7 +25231,7 @@ icon_state = "1-2" }, /obj/effect/turf_decal/trimline/green/line{ - dir = 8 + dir = 9 }, /turf/open/floor/plating, /area/maintenance/port/aft) @@ -29482,16 +25246,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "aUP" = ( @@ -29542,16 +25296,6 @@ pixel_x = -26 }, /obj/machinery/libraryscanner, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aUW" = ( @@ -29606,16 +25350,6 @@ name = "Station Intercom"; pixel_x = 26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aVc" = ( @@ -29757,16 +25491,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aVp" = ( @@ -29785,22 +25509,6 @@ }, /turf/open/floor/plasteel/grimy, /area/commons/lounge) -"aVs" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) "aVt" = ( /obj/machinery/computer/rdconsole/core{ dir = 4 @@ -29818,10 +25526,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aVu" = ( @@ -29831,16 +25535,6 @@ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aVv" = ( @@ -29850,10 +25544,6 @@ dir = 6 }, /obj/machinery/rnd/production/circuit_imprinter/department/science, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aVw" = ( @@ -29869,10 +25559,6 @@ /obj/item/integrated_electronics/analyzer, /obj/item/integrated_electronics/debugger, /obj/item/integrated_electronics/wirer, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aVy" = ( @@ -29914,16 +25600,6 @@ /turf/open/floor/circuit/green/telecomms/mainframe, /area/science/research) "aVC" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/science/research) "aVD" = ( @@ -29944,15 +25620,11 @@ /area/science/research) "aVF" = ( /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock{ id_tag = "Dorm3"; name = "Dorm 3" }, -/turf/open/floor/plasteel, +/turf/open/floor/wood, /area/commons/dorms) "aVG" = ( /turf/open/floor/plating{ @@ -29961,15 +25633,11 @@ /area/maintenance/port/aft) "aVH" = ( /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock{ id_tag = "Dorm4"; name = "Room Four" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/grimy, /area/commons/dorms) "aVI" = ( /obj/effect/turf_decal/trimline/green/line{ @@ -30023,19 +25691,15 @@ /obj/machinery/status_display{ pixel_x = -32 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aVO" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/window/northright{ + name = "Library Desk Door"; + req_access_txt = "37" }, /turf/open/floor/plasteel/dark, /area/service/library) @@ -30043,19 +25707,11 @@ /obj/structure/table/wood, /obj/item/flashlight/lamp, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aVQ" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aVR" = ( @@ -30086,7 +25742,9 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aVU" = ( /obj/effect/turf_decal/tile/neutral{ @@ -30103,9 +25761,13 @@ /turf/open/floor/plasteel/dark, /area/service/library) "aVV" = ( -/obj/structure/bookcase/random/religion, -/turf/open/floor/plasteel/dark, -/area/service/library) +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/loading_area{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) "aVW" = ( /obj/structure/rack, /obj/item/storage/toolbox/mechanical, @@ -30124,13 +25786,11 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 26 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aVY" = ( -/obj/machinery/door/airlock/grunge{ - name = "Crematorium"; - req_access_txt = "27" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" @@ -30139,23 +25799,13 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/grunge{ + name = "Crematorium"; + req_access_txt = "27" }, /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "aVZ" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" @@ -30163,9 +25813,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/port/aft) @@ -30274,13 +25924,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/white, /area/medical/chemistry) "aWj" = ( /obj/structure/table/glass, @@ -30355,7 +25999,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/medical/medbay/zone3) "aWn" = ( /obj/machinery/firealarm{ @@ -30382,10 +26028,6 @@ }, /obj/item/stock_parts/cell/high, /obj/item/stock_parts/cell/high, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/lab) "aWp" = ( @@ -30423,16 +26065,6 @@ /obj/machinery/atmospherics/pipe/simple/general/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/science/research) "aWu" = ( @@ -30443,18 +26075,12 @@ /turf/open/floor/circuit/green/telecomms/mainframe, /area/science/research) "aWv" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/port/aft) @@ -30499,16 +26125,6 @@ /obj/machinery/light_switch{ pixel_y = -24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aWB" = ( @@ -30517,7 +26133,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aWC" = ( /obj/structure/table/wood, @@ -30527,24 +26145,18 @@ }, /obj/item/camera_film, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aWD" = ( /obj/machinery/holopad, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aWE" = ( -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aWF" = ( /obj/structure/cable/white{ @@ -30559,16 +26171,6 @@ /obj/machinery/status_display{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aWH" = ( @@ -30622,38 +26224,28 @@ /turf/open/floor/plasteel, /area/medical/virology) "aWM" = ( -/obj/machinery/door/airlock/virology{ - name = "Virology Access"; - req_access_txt = "39" - }, /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/machinery/door/airlock/virology{ + name = "Virology Access"; + req_access_txt = "39" + }, /turf/open/floor/plasteel/white, /area/medical/virology) "aWN" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical/glass{ - name = "Chemistry Lab"; - req_access_txt = "5; 33" - }, /obj/structure/cable/white{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/medical/glass{ + name = "Chemistry Lab"; + req_access_txt = "5; 33" }, /turf/open/floor/plasteel, /area/medical/chemistry) @@ -30713,15 +26305,14 @@ /area/commons/lounge) "aWU" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research and Development Lab"; - req_one_access_txt = "7;29" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, +/obj/machinery/door/airlock/research{ + name = "Research and Development Lab"; + req_one_access_txt = "7;29" + }, /turf/open/floor/plasteel, /area/science/lab) "aWV" = ( @@ -30768,20 +26359,6 @@ name = "Server Access"; req_access_txt = "30" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/research) "aXa" = ( @@ -30840,20 +26417,12 @@ /obj/structure/sign/painting{ pixel_y = -32 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aXh" = ( /obj/machinery/light, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/library) "aXi" = ( @@ -30871,16 +26440,6 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "aXj" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/sign/painting{ pixel_y = -32 }, @@ -30894,7 +26453,9 @@ c_tag = "Library 1"; dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, /area/service/library) "aXm" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30998,17 +26559,13 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone3) "aXv" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plasteel, /area/maintenance/port/aft) @@ -31016,26 +26573,16 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aXx" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research Division Access"; - req_access_txt = "47" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/research{ + name = "Research Division Access"; + req_access_txt = "47" }, /turf/open/floor/plasteel, /area/science/research) @@ -31103,10 +26650,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -26 - }, /turf/open/floor/plasteel, /area/medical/virology) "aXE" = ( @@ -31124,23 +26667,17 @@ /turf/open/floor/plasteel/white, /area/science/research) "aXF" = ( -/obj/machinery/door/airlock/command{ - name = "Research Division Server Room"; - req_access_txt = "30" - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/door/airlock/command{ + name = "Research Division Server Room"; + req_access_txt = "30" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/science/research) "aXG" = ( /obj/machinery/atmospherics/pipe/simple/general/hidden, @@ -31150,16 +26687,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/research) "aXH" = ( @@ -31172,16 +26699,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/research) "aXI" = ( @@ -31193,16 +26710,6 @@ pixel_x = 24 }, /obj/item/clothing/suit/armor/reactive/teleport, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/research) "aXJ" = ( @@ -31236,16 +26743,12 @@ /area/service/library) "aXN" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel, +/turf/open/floor/wood, /area/maintenance/port/aft) "aXO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -31296,20 +26799,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 6 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/medical/medbay/zone3) "aXT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aXU" = ( @@ -31336,16 +26831,6 @@ /area/medical/medbay/zone3) "aXX" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aXY" = ( @@ -31379,26 +26864,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"aYc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYd" = ( @@ -31408,10 +26873,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYe" = ( @@ -31427,24 +26888,10 @@ /obj/structure/cable/white{ icon_state = "0-2" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYf" = ( /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYg" = ( @@ -31452,26 +26899,16 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYh" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research Division Access"; - req_access_txt = "47" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/research{ + name = "Research Division Access"; + req_access_txt = "47" }, /turf/open/floor/plasteel, /area/science/research) @@ -31561,16 +26998,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "aYq" = ( @@ -31584,16 +27011,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/research) "aYr" = ( @@ -31611,16 +27028,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/research) "aYs" = ( @@ -31631,16 +27038,6 @@ /obj/structure/cable/white{ icon_state = "0-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/research) "aYt" = ( @@ -31653,21 +27050,15 @@ /turf/open/floor/plating, /area/maintenance/starboard) "aYu" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/starboard/aft) @@ -31731,21 +27122,15 @@ /area/maintenance/port/aft) "aYB" = ( /obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/command{ - name = "Research Director's Office"; - req_access_txt = "30" - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/door/airlock/command{ + name = "Research Director's Office"; + req_access_txt = "30" }, /turf/open/floor/plasteel, /area/command/heads_quarters/rd) @@ -31777,7 +27162,9 @@ "aYF" = ( /obj/structure/chair/comfy/black, /obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/wood, +/turf/open/floor/wood{ + icon_state = "wood-broken6" + }, /area/maintenance/port/aft) "aYG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -31810,12 +27197,6 @@ name = "Medbay Storage"; req_access_txt = "5" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aYK" = ( @@ -31907,16 +27288,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aYS" = ( @@ -31931,23 +27302,17 @@ /area/medical/medbay/zone3) "aYT" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical/glass{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/unres{ dir = 8 }, +/obj/machinery/door/airlock/medical/glass{ + id_tag = "MedbayFoyer"; + name = "Medbay"; + req_access_txt = "5" + }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aYU" = ( @@ -31955,12 +27320,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYV" = ( @@ -31971,28 +27330,12 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -32011,16 +27354,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aYZ" = ( @@ -32046,15 +27379,11 @@ /area/science/robotics/mechbay) "aZd" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/research{ name = "Mech Bay"; req_access_txt = "29" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/science/robotics/mechbay) "aZe" = ( @@ -32064,7 +27393,6 @@ "aZf" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/science/research) "aZg" = ( @@ -32073,7 +27401,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/science/research) "aZh" = ( @@ -32138,17 +27465,11 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "aZq" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, +/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel, /area/maintenance/port/aft) "aZr" = ( @@ -32164,14 +27485,10 @@ /area/maintenance/port/aft) "aZs" = ( /obj/machinery/vending/autodrobe, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/maintenance/port/aft) "aZt" = ( /obj/effect/turf_decal/tile/neutral{ @@ -32265,14 +27582,10 @@ /area/maintenance/port/aft) "aZz" = ( /obj/structure/dresser, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/maintenance/port/aft) "aZA" = ( /obj/structure/table/glass, @@ -32283,12 +27596,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/item/folder/white, /obj/item/toy/figure/chemist, /obj/item/reagent_containers/glass/beaker/large{ @@ -32299,16 +27606,15 @@ pixel_x = 3; pixel_y = 6 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/medical/chemistry) "aZB" = ( -/obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/virology/glass{ - name = "Isolation Room"; - req_access_txt = "39" +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 24 }, -/turf/open/floor/plasteel/freezer, +/turf/open/floor/plasteel, /area/medical/virology) "aZC" = ( /obj/structure/table/wood, @@ -32336,31 +27642,19 @@ name = "Atmospherics Maintenance"; req_access_txt = "12;24" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/port/aft) "aZF" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical/glass{ - name = "Medbay Storage"; - req_access_txt = "5" - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/door/airlock/medical/glass{ + name = "Medbay Storage"; + req_access_txt = "5" }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) @@ -32392,16 +27686,6 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aZJ" = ( @@ -32458,16 +27742,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aZN" = ( @@ -32504,26 +27778,20 @@ /area/medical/medbay/zone3) "aZP" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical/glass{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/unres{ dir = 8 }, +/obj/machinery/door/airlock/medical/glass{ + id_tag = "MedbayFoyer"; + name = "Medbay"; + req_access_txt = "5" + }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "aZQ" = ( @@ -32533,12 +27801,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aZR" = ( @@ -32555,16 +27817,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "aZS" = ( @@ -32595,10 +27847,6 @@ icon_state = "0-2" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/mechbay) "aZV" = ( @@ -32606,29 +27854,17 @@ /obj/effect/landmark/start/cyborg, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/mechbay) "aZW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/mechbay) "aZX" = ( /obj/structure/reagent_dispensers/fueltank, /obj/effect/decal/cleanable/oil, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/mechbay) "aZY" = ( @@ -32672,10 +27908,6 @@ network = list("ss13","rd") }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bac" = ( @@ -32683,10 +27915,6 @@ /obj/effect/turf_decal/stripes/end{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bad" = ( @@ -32699,10 +27927,6 @@ dir = 1 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bae" = ( @@ -32722,7 +27946,7 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/solars/port/aft) "baf" = ( /obj/item/stack/sheet/metal/fifty, @@ -32742,10 +27966,6 @@ pixel_y = 32 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bag" = ( @@ -32778,10 +27998,6 @@ /obj/item/stack/sheet/plasteel{ amount = 15 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bah" = ( @@ -32798,28 +28014,21 @@ }, /area/maintenance/starboard) "baj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/obj/effect/landmark/xeno_spawn, /obj/structure/sign/warning/vacuum{ pixel_x = -32; pixel_y = 32 }, -/obj/effect/turf_decal/delivery, /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/caution, +/turf/open/floor/plating, /area/maintenance/solars/port/aft) "bak" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/solars/port/aft) "bal" = ( /obj/effect/turf_decal/stripes/line{ @@ -32828,9 +28037,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /obj/machinery/door/airlock/external{ name = "External Airlock"; req_access_txt = "13" @@ -32841,12 +28047,9 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/solars/port/aft) "bam" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /obj/structure/sign/warning/vacuum{ pixel_y = 32 }, @@ -32859,8 +28062,8 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) @@ -32877,20 +28080,14 @@ /turf/open/floor/plating, /area/maintenance/solars/port/aft) "bap" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "baq" = ( @@ -32960,7 +28157,9 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/medical/medbay/zone3) "bay" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -32996,16 +28195,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "baB" = ( @@ -33028,16 +28217,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "baD" = ( @@ -33091,16 +28270,6 @@ c_tag = "Medbay Foyer"; dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "baI" = ( @@ -33159,16 +28328,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "baM" = ( @@ -33230,21 +28389,15 @@ /area/science/robotics/mechbay) "baR" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Mech Bay"; - req_access_txt = "29" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/research{ + name = "Mech Bay"; + req_access_txt = "29" }, /turf/open/floor/plasteel, /area/science/robotics/mechbay) @@ -33329,12 +28482,6 @@ /area/science/robotics/lab) "bba" = ( /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bbb" = ( @@ -33366,13 +28513,13 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "bbf" = ( -/obj/machinery/power/smes, /obj/machinery/camera{ c_tag = "Port Quarter Solar"; dir = 4; network = list("ss13","engine") }, -/obj/structure/cable{ +/obj/machinery/power/smes, +/obj/structure/cable/white{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -33387,6 +28534,9 @@ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/white{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "bbi" = ( @@ -33397,32 +28547,10 @@ pixel_x = 24 }, /obj/structure/cable/white{ - icon_state = "2-8" - }, -/obj/structure/cable/white{ - icon_state = "0-2" + icon_state = "0-8" }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) -"bbj" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/maintenance/port/aft) "bbk" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -33430,19 +28558,11 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/turf/open/floor/plasteel/dark, -/area/maintenance/port/aft) -"bbl" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/area/maintenance/port/aft) +"bbl" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, @@ -33452,22 +28572,16 @@ /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "bbm" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plasteel, /area/maintenance/port/aft) "bbn" = ( @@ -33489,10 +28603,10 @@ /obj/machinery/power/terminal{ dir = 1 }, -/obj/effect/turf_decal/delivery, -/obj/structure/cable/white{ +/obj/structure/cable{ icon_state = "0-4" }, +/obj/effect/turf_decal/delivery, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "bbp" = ( @@ -33559,33 +28673,17 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bbx" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - name = "Security Checkpoint"; - req_access_txt = "63" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/security/glass{ + name = "Security Checkpoint"; + req_access_txt = "63" }, /turf/open/floor/plasteel, /area/security/checkpoint) @@ -33713,21 +28811,15 @@ /area/science/research) "bbI" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research/glass{ - name = "Robotics Lab"; - req_access_txt = "29" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/research/glass{ + name = "Robotics Lab"; + req_access_txt = "29" }, /turf/open/floor/plasteel, /area/science/robotics/lab) @@ -33759,16 +28851,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/science/robotics/lab) "bbM" = ( @@ -33800,12 +28882,6 @@ dir = 8; pixel_x = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bbP" = ( @@ -33839,9 +28915,15 @@ /area/solars/starboard/fore) "bbR" = ( /obj/machinery/light/small, -/obj/structure/cable/white{ - icon_state = "1-8" +/obj/machinery/power/solar_control{ + dir = 8; + id = "aftport"; + name = "Port Quarter Solar Control" }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/bot, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "bbS" = ( @@ -33889,32 +28971,24 @@ /turf/open/floor/plating/airless, /area/solars/starboard/fore) "bbZ" = ( -/obj/effect/turf_decal/delivery, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, /obj/structure/cable{ icon_state = "2-4" }, /obj/machinery/light/small{ dir = 8 }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bca" = ( /obj/structure/sign/warning/vacuum{ pixel_x = 32; pixel_y = 32 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/effect/landmark/xeno_spawn, -/obj/effect/turf_decal/delivery, /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/caution, +/turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcb" = ( /obj/machinery/door/airlock/external{ @@ -33930,7 +29004,7 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcc" = ( /obj/effect/turf_decal/stripes/line, @@ -33942,14 +29016,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable{ icon_state = "1-2" }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcd" = ( -/obj/structure/table/reinforced, /obj/machinery/vending/wallmed{ name = "Emergency NanoMed"; pixel_x = -26; @@ -33959,17 +29031,8 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/item/storage/backpack/duffelbag/med/surgery, +/obj/structure/table/reinforced, /turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bce" = ( @@ -33992,17 +29055,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/zone3) "bcf" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /obj/machinery/computer/operating, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "bcg" = ( @@ -34010,16 +29063,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/limbgrower, /turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) @@ -34037,16 +29080,9 @@ "bci" = ( /obj/structure/bed/roller, /obj/machinery/iv_drip, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bcj" = ( /obj/structure/table/reinforced, @@ -34064,17 +29100,13 @@ /area/medical/medbay/zone3) "bck" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical/glass{ - name = "Medbay Desk"; - req_access_txt = "5" - }, /obj/structure/sign/warning/nosmoking/circle{ pixel_x = 32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/medical/glass{ + name = "Medbay Desk"; + req_access_txt = "5" }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) @@ -34086,16 +29118,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bcm" = ( @@ -34121,16 +29143,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/checkpoint) "bcp" = ( @@ -34154,16 +29166,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bcr" = ( @@ -34237,6 +29239,7 @@ /area/science/robotics/lab) "bcA" = ( /obj/effect/turf_decal/stripes/line, +/obj/machinery/rnd/production/circuit_imprinter, /turf/open/floor/plasteel, /area/science/robotics/lab) "bcB" = ( @@ -34251,12 +29254,6 @@ }, /obj/effect/turf_decal/bot, /obj/machinery/aug_manipulator, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bcD" = ( @@ -34276,13 +29273,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/science/mixing) "bcF" = ( /obj/structure/sign/warning/securearea, @@ -34299,10 +29290,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel, /area/maintenance/solars/starboard/fore) "bcH" = ( /obj/structure/cable{ @@ -34315,7 +29306,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel, /area/maintenance/solars/starboard/fore) "bcI" = ( /obj/effect/spawner/structure/window/reinforced, @@ -34325,25 +29316,19 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcJ" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/effect/turf_decal/box, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solars/starboard/fore) +/obj/structure/lattice, +/obj/structure/grille, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) "bcK" = ( -/obj/machinery/power/solar_control{ - id = "forestarboard"; - name = "Starboard Bow Solar Control" - }, -/obj/effect/turf_decal/bot, /obj/machinery/power/terminal{ dir = 4 }, /obj/structure/cable{ icon_state = "0-8" }, +/obj/effect/turf_decal/delivery, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcL" = ( @@ -34360,7 +29345,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel, /area/maintenance/solars/starboard/fore) "bcN" = ( /obj/structure/cable/white{ @@ -34374,7 +29359,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel, /area/maintenance/solars/starboard/fore) "bcO" = ( /obj/structure/cable/white{ @@ -34396,6 +29381,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, +/obj/effect/landmark/xeno_spawn, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcQ" = ( @@ -34407,6 +29393,10 @@ /obj/structure/cable/white{ icon_state = "1-8" }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcS" = ( @@ -34435,7 +29425,6 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bcU" = ( -/obj/structure/table/reinforced, /obj/structure/mirror{ pixel_x = -28 }, @@ -34443,33 +29432,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/item/clothing/gloves/color/latex, /obj/item/clothing/suit/apron/surgical, /obj/item/clothing/mask/surgical, +/obj/structure/table/reinforced, /turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bcV" = ( /obj/effect/landmark/start/medical_doctor, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "bcW" = ( @@ -34496,18 +29466,8 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/structure/closet/crate/freezer/surplus_limbs, /obj/item/reagent_containers/glass/beaker/synthflesh, +/obj/structure/closet/crate/freezer/surplus_limbs, /turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bcY" = ( @@ -34526,23 +29486,20 @@ "bcZ" = ( /obj/structure/bed/roller, /obj/machinery/iv_drip, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/medical/medbay/zone3) "bda" = ( /obj/machinery/computer/med_data{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bdb" = ( /obj/structure/chair/office/light{ @@ -34632,16 +29589,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/checkpoint) "bdg" = ( @@ -34790,16 +29737,6 @@ icon_state = "0-4" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bdu" = ( @@ -34814,16 +29751,6 @@ icon_state = "1-8" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bdv" = ( @@ -34863,12 +29790,6 @@ pixel_x = 32 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bdz" = ( @@ -34896,14 +29817,11 @@ /turf/open/floor/plating/airless, /area/solars/starboard/fore) "bdC" = ( -/obj/machinery/power/solar_control{ - id = "aftport"; - name = "Port Quarter Solar Control" - }, -/obj/effect/turf_decal/bot, -/obj/structure/cable, /obj/structure/cable{ - icon_state = "1-8" + icon_state = "1-2" + }, +/obj/structure/cable/white{ + icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) @@ -34933,17 +29851,17 @@ }, /area/command/heads_quarters/rd) "bdE" = ( -/obj/machinery/power/apc{ - areastring = "/area/maintenance/solars/starboard/fore"; - name = "Starboard Bow Solar APC"; - pixel_y = -26 - }, /obj/structure/cable/white{ icon_state = "4-8" }, /obj/structure/cable/white{ icon_state = "0-8" }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/solars/starboard/fore"; + name = "Starboard Bow Solar APC"; + pixel_y = -26 + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "bdF" = ( @@ -34970,9 +29888,10 @@ dir = 1; pixel_y = -22 }, -/obj/structure/cable/white{ +/obj/structure/cable{ icon_state = "4-8" }, +/obj/effect/landmark/xeno_spawn, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "bdH" = ( @@ -35129,7 +30048,6 @@ /turf/open/floor/plating/asteroid, /area/command/heads_quarters/rd) "bdQ" = ( -/obj/structure/closet/secure_closet/medical2, /obj/machinery/airalarm{ dir = 4; pixel_x = -22 @@ -35141,16 +30059,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/closet/secure_closet/medical2, /turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bdR" = ( @@ -35182,32 +30091,16 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bdT" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Surgery Theatre"; - req_access_txt = "45" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/medical{ + name = "Surgery Theatre"; + req_access_txt = "45" }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) @@ -35224,7 +30117,6 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone3) "bdV" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -35232,6 +30124,9 @@ /obj/effect/turf_decal/tile/green{ dir = 8 }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, /turf/open/floor/plasteel/white, /area/medical/medbay/zone3) "bdW" = ( @@ -35264,11 +30159,9 @@ pixel_x = -26; pixel_y = -26 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bdY" = ( /obj/machinery/airalarm{ @@ -35340,16 +30233,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/security/checkpoint) "bee" = ( @@ -35417,22 +30300,20 @@ /area/science/robotics/mechbay) "bek" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/delivery, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side, /area/science/research) "bel" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/delivery, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side, /area/science/research) "bem" = ( /obj/structure/table, @@ -35445,12 +30326,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "ben" = ( @@ -35459,12 +30334,6 @@ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "beo" = ( @@ -35480,10 +30349,6 @@ }, /obj/machinery/light, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bep" = ( @@ -35520,12 +30385,16 @@ pixel_x = 28 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/obj/item/storage/firstaid/regular{ + empty = 1; + name = "First-Aid (empty)" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/item/healthanalyzer, +/obj/item/storage/firstaid/regular{ + empty = 1; + name = "First-Aid (empty)" }, +/obj/item/healthanalyzer, /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bes" = ( @@ -35543,11 +30412,9 @@ }, /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/science/mixing) "bev" = ( /obj/structure/table/plasmaglass, @@ -35637,11 +30504,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/dark, /area/science/mixing) "beB" = ( /obj/structure/cable/white{ @@ -35787,24 +30652,16 @@ /area/science/robotics/mechbay) "beM" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/machinery/door/airlock/research{ name = "Research Division Access"; req_access_txt = "47" }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/science/research) "beN" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research Division Access"; - req_access_txt = "47" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -35812,12 +30669,12 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plasteel, +/obj/machinery/door/airlock/research{ + name = "Research Division Access"; + req_access_txt = "47" + }, +/turf/open/floor/plasteel/dark, /area/science/research) "beO" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -35825,10 +30682,6 @@ /area/science/robotics/lab) "beP" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Robotics Lab Maintenance"; - req_access_txt = "29" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -35836,9 +30689,9 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Robotics Lab Maintenance"; + req_access_txt = "29" }, /turf/open/floor/plating, /area/maintenance/starboard) @@ -35925,11 +30778,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/dark, /area/science/mixing) "beW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -35974,11 +30825,9 @@ /obj/machinery/portable_atmospherics/scrubber, /obj/item/storage/firstaid/toxin, /obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/science/mixing) "bfc" = ( /obj/structure/cable/white{ @@ -36015,10 +30864,6 @@ name = "Security Checkpoint"; req_access_txt = "63" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/security/checkpoint) "bfg" = ( @@ -36074,7 +30919,7 @@ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/maintenance/starboard/aft) "bfm" = ( /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -36091,7 +30936,7 @@ icon_state = "2-4" }, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/maintenance/starboard/aft) "bfn" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -36160,13 +31005,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/science/mixing) "bft" = ( /obj/structure/closet/secure_closet/RD, @@ -36283,16 +31122,6 @@ name = "Morgue APC"; pixel_x = 24 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/camera{ c_tag = "Morgue"; dir = 8; @@ -36309,10 +31138,6 @@ /obj/item/surgical_drapes, /obj/item/cautery, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/item/toy/figure/roboticist{ pixel_x = -4; pixel_y = 14 @@ -36329,23 +31154,13 @@ network = list("ss13","medbay"); pixel_x = 22 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/smartfridge/organ/preloaded{ + density = 0; pixel_y = -31 }, /turf/open/floor/plasteel, /area/medical/medbay/zone3) "bfG" = ( -/obj/structure/closet/crate/freezer/blood, /obj/structure/extinguisher_cabinet{ pixel_y = -26 }, @@ -36357,13 +31172,10 @@ dir = 1; network = list("ss13","medbay") }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/obj/machinery/vending/medical, +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/medical/medbay/zone3) "bfH" = ( /obj/effect/landmark/start/virologist, @@ -36408,16 +31220,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bfK" = ( @@ -36427,16 +31229,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bfL" = ( @@ -36450,16 +31242,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bfM" = ( @@ -36513,18 +31295,14 @@ name = "Xenobiology Containment Door" }, /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, /obj/machinery/door/airlock/research{ name = "Xenobiology Lab"; req_access_txt = "47" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, /turf/open/floor/plasteel, /area/science/xenobiology) "bfR" = ( @@ -36533,10 +31311,6 @@ name = "Xenobiology Containment Door" }, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Xenobiology Lab"; - req_access_txt = "47" - }, /obj/structure/sign/departments/xenobio{ pixel_x = 32 }, @@ -36544,13 +31318,13 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, +/obj/machinery/door/airlock/research{ + name = "Xenobiology Lab"; + req_access_txt = "47" + }, /turf/open/floor/plasteel, /area/science/xenobiology) "bfS" = ( @@ -36579,10 +31353,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bfU" = ( @@ -36597,16 +31367,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bfV" = ( @@ -36617,16 +31377,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bfX" = ( @@ -36708,38 +31458,13 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/obj/machinery/camera{ - c_tag = "Xenobiology Central"; - dir = 4; - network = list("ss13","rd"); - pixel_y = -5 - }, /turf/open/floor/plasteel, /area/science/xenobiology) "bgd" = ( -/obj/structure/table/reinforced, -/obj/item/storage/box/beakers{ - pixel_x = 3; - pixel_y = 3 +/obj/structure/closet/l3closet/scientist, +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/obj/item/storage/box/syringes, -/obj/item/extinguisher/mini, -/obj/machinery/airalarm/unlocked{ - dir = 4; - pixel_x = -23 - }, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology Lab"; - dir = 4; - network = list("ss13","rd") - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plasteel, /area/science/xenobiology) "bge" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -36753,9 +31478,6 @@ codes_txt = "patrol;next_patrol=8.4-AftNW"; location = "8.3-AftSW" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -36768,29 +31490,19 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, /area/hallway/primary/aft) "bgg" = ( -/obj/structure/table/reinforced, -/obj/item/storage/box/monkeycubes, -/obj/item/storage/box/monkeycubes, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/effect/turf_decal/stripes/line{ +/obj/effect/turf_decal/tile/purple{ dir = 1 }, -/obj/machinery/camera{ - c_tag = "Xenobiology South"; - dir = 1; - network = list("ss13","rd") +/obj/effect/turf_decal/tile/purple, +/obj/effect/turf_decal/tile/purple{ + dir = 8 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white, /area/science/xenobiology) "bgh" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -36807,6 +31519,9 @@ /obj/structure/cable{ icon_state = "1-8" }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "bgi" = ( @@ -36821,13 +31536,10 @@ network = list("ss13","engine") }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "bgj" = ( /obj/machinery/atmospherics/components/binary/pump{ @@ -36849,8 +31561,11 @@ /turf/open/floor/engine, /area/maintenance/disposal/incinerator) "bgk" = ( -/obj/structure/cable/white{ - icon_state = "4-8" +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-4" }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) @@ -36860,25 +31575,11 @@ pixel_x = 32 }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/aft) -"bgm" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/area/hallway/primary/aft) +"bgm" = ( /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bgn" = ( @@ -36917,12 +31618,16 @@ pixel_y = 32 }, /obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 9 + }, /area/science/xenobiology) "bgq" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/science/xenobiology) "bgr" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -36930,7 +31635,9 @@ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/science/xenobiology) "bgu" = ( /obj/effect/turf_decal/tile/neutral, @@ -36961,11 +31668,12 @@ /obj/structure/mirror{ pixel_x = 26 }, -/obj/structure/sink{ - dir = 4; - pixel_x = 12 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, /turf/open/floor/plasteel/white, /area/service/chapel/main) "bgC" = ( @@ -37007,10 +31715,6 @@ c_tag = "Crematorium"; dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bgE" = ( @@ -37020,16 +31724,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bgF" = ( @@ -37129,28 +31823,20 @@ /area/hallway/secondary/entry) "bgR" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/public/glass{ name = "Arrivals Port" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bgS" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Arrivals Port" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/door/airlock/public/glass{ + name = "Arrivals Port" }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) @@ -37168,14 +31854,10 @@ /area/hallway/secondary/entry) "bgW" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/airlock/public/glass{ name = "Arrivals Port" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bgX" = ( @@ -37196,16 +31878,6 @@ /obj/machinery/light{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bgZ" = ( @@ -37228,16 +31900,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bhb" = ( @@ -37245,7 +31907,9 @@ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/science/xenobiology) "bhc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -37293,16 +31957,6 @@ /obj/machinery/light{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bhj" = ( @@ -37355,10 +32009,6 @@ /turf/closed/wall, /area/service/chapel/main) "bhr" = ( -/obj/machinery/door/airlock/grunge{ - name = "Crematorium"; - req_access_txt = "27" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" @@ -37366,15 +32016,9 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/grunge{ + name = "Crematorium"; + req_access_txt = "27" }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) @@ -37429,34 +32073,18 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bhy" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/grunge{ - name = "Chapel Hall" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/grunge{ + name = "Chapel Hall" }, /turf/open/floor/plasteel, /area/service/chapel/main) @@ -37465,10 +32093,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/airalarm{ pixel_y = 23 }, @@ -37494,10 +32118,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/camera{ c_tag = "Arrivals Bay 1 North" }, @@ -37526,10 +32146,6 @@ dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bhE" = ( @@ -37546,10 +32162,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bhG" = ( @@ -37562,10 +32174,6 @@ /turf/open/floor/plasteel/white/corner, /area/hallway/secondary/entry) "bhH" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bhI" = ( @@ -37574,16 +32182,12 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bhJ" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bhK" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/blue{ +/obj/effect/turf_decal/tile/purple{ dir = 8 }, /turf/open/floor/plasteel/white/corner, @@ -37601,12 +32205,6 @@ pixel_x = 24 }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/hallway/secondary/entry) "bhM" = ( @@ -37616,16 +32214,6 @@ /obj/structure/disposaloutlet{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bhN" = ( @@ -37642,7 +32230,9 @@ dir = 8 }, /obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/science/xenobiology) "bhP" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -37673,16 +32263,6 @@ /obj/structure/disposaloutlet{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bhX" = ( @@ -37702,16 +32282,6 @@ c_tag = "Chaplain's Quarters" }, /obj/machinery/vending/wardrobe/chap_wardrobe, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bia" = ( @@ -37765,16 +32335,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "big" = ( @@ -37877,12 +32437,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -37914,12 +32468,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -37947,12 +32495,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -37973,12 +32515,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -38001,7 +32537,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, -/obj/effect/turf_decal/tile/blue{ +/obj/effect/turf_decal/tile/purple{ dir = 4 }, /turf/open/floor/plasteel/white/corner{ @@ -38012,12 +32548,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -38033,19 +32563,9 @@ name = "arrivals camera" }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/hallway/secondary/entry) "biD" = ( -/obj/machinery/shower{ - dir = 8; - name = "emergency shower" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ icon_state = "1-2" @@ -38053,6 +32573,12 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, +/obj/machinery/camera{ + c_tag = "Xenobiology Central"; + dir = 8; + network = list("ss13","rd"); + pixel_y = -5 + }, /turf/open/floor/plasteel, /area/science/xenobiology) "biF" = ( @@ -38075,18 +32601,12 @@ /turf/open/floor/plasteel/grimy, /area/service/chapel/main) "biH" = ( -/obj/machinery/door/airlock/grunge{ - name = "Chapel Quarters"; - req_access_txt = "27" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/grunge{ + name = "Chapel Quarters"; + req_access_txt = "27" }, /turf/open/floor/plasteel, /area/service/chapel/main) @@ -38113,35 +32633,19 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "biM" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/grunge{ - name = "Chapel Office"; - req_access_txt = "27" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/grunge{ + name = "Chapel Office"; + req_access_txt = "27" }, /turf/open/floor/plasteel, /area/service/chapel/main) @@ -38163,16 +32667,6 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "biP" = ( @@ -38252,19 +32746,11 @@ "biU" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "biV" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "biW" = ( @@ -38285,7 +32771,9 @@ req_access_txt = "55" }, /obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/science/xenobiology) "biY" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -38356,16 +32844,6 @@ /obj/structure/sign/nanotrasen{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bjg" = ( @@ -38374,16 +32852,6 @@ dir = 1; pixel_y = -22 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "bjh" = ( @@ -38450,16 +32918,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bjq" = ( @@ -38478,15 +32936,13 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "bjr" = ( -/obj/machinery/holopad, /obj/structure/cable/white{ icon_state = "1-2" }, /obj/structure/cable/white{ icon_state = "1-8" }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white, /area/science/xenobiology) "bjs" = ( /obj/effect/turf_decal/tile/purple{ @@ -38513,52 +32969,28 @@ dir = 6 }, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/science/xenobiology) "bjv" = ( -/obj/machinery/door/airlock/research/glass{ - name = "Xenobiology Kill Room"; - req_access_txt = "47" - }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/research/glass{ + name = "Xenobiology Kill Room"; + req_access_txt = "47" }, /turf/open/floor/plasteel, /area/science/xenobiology) "bjw" = ( /obj/machinery/atmospherics/pipe/manifold/general/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/science/xenobiology) "bjx" = ( /obj/machinery/atmospherics/pipe/simple/general/hidden{ dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/science/xenobiology) "bjy" = ( @@ -38608,51 +33040,38 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bjD" = ( -/obj/effect/turf_decal/tile/purple{ - dir = 1 - }, -/obj/effect/turf_decal/tile/purple, /obj/effect/turf_decal/tile/purple{ dir = 8 }, +/obj/effect/turf_decal/tile/purple{ + dir = 1 + }, /turf/open/floor/plasteel/white, /area/science/xenobiology) "bjE" = ( -/obj/structure/chair/office/light, -/obj/effect/landmark/start/scientist, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/purple, -/obj/effect/turf_decal/tile/purple{ - dir = 8 - }, -/turf/open/floor/plasteel/white, +/obj/effect/turf_decal/bot, +/obj/machinery/holopad, +/turf/open/floor/plasteel, /area/science/xenobiology) "bjF" = ( -/obj/effect/turf_decal/tile/purple, -/obj/effect/turf_decal/tile/purple{ - dir = 8 - }, /turf/open/floor/plasteel/white, /area/science/xenobiology) "bjG" = ( -/obj/structure/closet/l3closet/scientist, /obj/effect/turf_decal/tile/purple, /obj/effect/turf_decal/tile/purple{ dir = 4 }, -/obj/effect/turf_decal/tile/purple{ - dir = 8 - }, /turf/open/floor/plasteel/white, /area/science/xenobiology) "bjH" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ dir = 1 }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 +/obj/effect/turf_decal/stripes/end{ + dir = 8 }, /turf/open/floor/plasteel, /area/science/xenobiology) @@ -38708,67 +33127,33 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bjR" = ( -/obj/machinery/computer/camera_advanced/xenobio{ - dir = 1 - }, -/obj/machinery/light, -/obj/machinery/requests_console{ - department = "Xenobiology Lab"; - name = "Xenobiology RC"; - pixel_y = -32; - receive_ore_updates = 1 - }, +/obj/structure/chair/office/light, +/obj/effect/landmark/start/scientist, /obj/structure/cable/white{ - icon_state = "1-4" + icon_state = "1-2" }, -/turf/open/floor/circuit/green, +/obj/effect/turf_decal/tile/purple, +/obj/effect/turf_decal/tile/purple{ + dir = 8 + }, +/turf/open/floor/plasteel/white, /area/science/xenobiology) "bjS" = ( -/obj/structure/table/reinforced, -/obj/item/folder/white, -/obj/item/stack/sheet/mineral/plasma{ - amount = 5 +/obj/effect/turf_decal/tile/purple, +/obj/effect/turf_decal/tile/purple{ + dir = 8 }, -/obj/item/reagent_containers/glass/beaker/large, -/obj/item/reagent_containers/glass/beaker, -/obj/item/reagent_containers/dropper, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white, /area/science/xenobiology) "bjT" = ( -/obj/structure/table/reinforced, -/obj/machinery/reagentgrinder{ - pixel_y = 5 +/obj/effect/turf_decal/tile/purple, +/obj/effect/turf_decal/tile/purple{ + dir = 4 }, -/obj/machinery/power/apc{ - areastring = "/area/science/xenobiology"; - dir = 4; - name = "Xenobiology Lab APC"; - pixel_x = 24 +/obj/effect/turf_decal/tile/purple{ + dir = 8 }, -/obj/machinery/light_switch{ - pixel_x = 24; - pixel_y = -24 - }, -/obj/item/radio/intercom{ - name = "Station Intercom"; - pixel_y = -24 - }, -/obj/structure/cable/white{ - icon_state = "0-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white, /area/science/xenobiology) "bjU" = ( /obj/machinery/status_display{ @@ -38961,12 +33346,12 @@ "blb" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side, /area/hallway/secondary/entry) "blc" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side, /area/hallway/secondary/entry) "blf" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -38975,9 +33360,6 @@ /obj/machinery/camera{ c_tag = "Fore Primary Hallway 3" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "blg" = ( @@ -38987,10 +33369,6 @@ c_tag = "Port Primary Hallway"; dir = 4 }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "blh" = ( @@ -39002,7 +33380,6 @@ c_tag = "Starboard Primary Hallway 2"; dir = 8 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "bli" = ( @@ -39011,13 +33388,9 @@ c_tag = "Starboard Primary Hallway 2" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard/fore) "blj" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -39065,13 +33438,9 @@ c_tag = "Starboard Primary Hallway" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard) "bln" = ( /obj/structure/cable/white{ @@ -39101,9 +33470,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "blp" = ( @@ -39141,21 +33507,11 @@ /turf/closed/wall/r_wall, /area/command/heads_quarters/rd) "blA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/airlock/grunge{ name = "Mass Driver Room"; req_access_txt = "27" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "blC" = ( @@ -39183,20 +33539,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "blF" = ( -/obj/structure/fans/tiny, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/service/chapel/main) @@ -39209,12 +33554,6 @@ dir = 8 }, /obj/machinery/light/small, -/obj/machinery/button/massdriver{ - id = "chapelmassdoor"; - name = "mass driver blast door button"; - pixel_x = 24; - pixel_y = -8 - }, /obj/machinery/button/massdriver{ id = "chapelgun"; pixel_x = 24; @@ -39223,24 +33562,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/service/chapel/main) "blI" = ( +/obj/structure/fans/tiny, /obj/machinery/door/poddoor{ - id = "chapelmassdoor"; + id = "chapelgun"; name = "Chapel Launcher Door" }, -/obj/structure/fans/tiny, /turf/open/floor/plating, /area/service/chapel/main) "blJ" = ( @@ -39258,17 +33587,11 @@ /turf/open/floor/engine, /area/engineering/main) "blL" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Departure Lounge" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/public/glass{ + name = "Departure Lounge" }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) @@ -39291,12 +33614,6 @@ /obj/machinery/door/airlock/public/glass{ name = "Departure Lounge" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "blZ" = ( @@ -39318,12 +33635,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/red{ dir = 4 @@ -39333,24 +33644,20 @@ }, /area/hallway/secondary/exit) "bmC" = ( -/obj/machinery/vending/snack/random, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/obj/machinery/vending/snack/random, +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/hallway/secondary/exit) "bmG" = ( /obj/effect/turf_decal/bot, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/hallway/secondary/exit) "boD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -39449,9 +33756,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bsA" = ( @@ -39468,20 +33772,14 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bsB" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Departure Lounge" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/public/glass{ + name = "Departure Lounge" }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) @@ -39504,7 +33802,7 @@ /obj/machinery/status_display{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner, @@ -39527,7 +33825,7 @@ /obj/structure/sign/poster/official/random{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner, @@ -39546,10 +33844,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bsO" = ( @@ -39571,16 +33865,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bsQ" = ( @@ -39607,16 +33891,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bsS" = ( @@ -39641,16 +33915,6 @@ codes_txt = "patrol;next_patrol=6.4-LeavingDepartures"; location = "6.3-DeparturesS" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bsV" = ( @@ -39661,7 +33925,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner, @@ -39669,13 +33933,9 @@ "bsX" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line, /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/machinery/door/airlock/mining/glass{ name = "Cargo Office"; req_access_txt = "48;50" @@ -39802,16 +34062,6 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "buH" = ( @@ -39835,16 +34085,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "buJ" = ( @@ -39861,16 +34101,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "buL" = ( @@ -39910,16 +34140,6 @@ /obj/effect/turf_decal/stripes/corner{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "buS" = ( @@ -40095,13 +34315,9 @@ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "bxy" = ( /obj/structure/cable/white{ @@ -40116,9 +34332,6 @@ "bxz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "bxA" = ( @@ -40182,30 +34395,10 @@ dir = 4 }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "bxH" = ( /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/engineering/atmos) "bxJ" = ( @@ -40213,10 +34406,6 @@ dir = 4; light_color = "#e8eaff" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/computer/cryopod{ dir = 8; pixel_x = 26 @@ -40224,28 +34413,20 @@ /obj/machinery/cryopod{ dir = 8 }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, /area/commons/dorms) "bxK" = ( /obj/structure/cable/white{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/white/corner, /area/commons/dorms) "bxL" = ( /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "bxM" = ( @@ -40272,15 +34453,11 @@ "bxP" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "bxQ" = ( /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -40335,12 +34512,6 @@ dir = 4 }, /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -40419,6 +34590,10 @@ /obj/structure/sign/warning/securearea, /turf/closed/wall, /area/command/gateway) +"bRW" = ( +/obj/structure/disposalpipe/segment, +/turf/closed/wall/r_wall, +/area/science/xenobiology) "bVs" = ( /obj/structure/girder, /obj/effect/turf_decal/sand/plating, @@ -40454,11 +34629,15 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) +"cfq" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/girder/reinforced, +/turf/open/floor/plating, +/area/space/nearstation) "cfz" = ( /obj/machinery/hydroponics/constructable, /obj/effect/turf_decal/stripes/line{ @@ -40476,13 +34655,13 @@ /turf/open/floor/plasteel, /area/science/mixing) "chJ" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/effect/turf_decal/bot, /obj/machinery/space_heater, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/floor/plasteel/dark/corner{ dir = 1 }, @@ -40515,16 +34694,6 @@ pixel_y = 2 }, /obj/structure/table/glass, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/hydroponics) "cpn" = ( @@ -40535,15 +34704,11 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, +/obj/machinery/door/firedoor, /obj/machinery/door/airlock/medical/glass{ name = "Hydroponics"; req_access_txt = "35" }, -/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/service/hydroponics) "cBf" = ( @@ -40576,28 +34741,28 @@ /obj/machinery/pool/controller, /turf/open/floor/wood, /area/maintenance/starboard/aft) +"cLO" = ( +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) "cRz" = ( /obj/machinery/button/door{ id = "supplybridge"; name = "Shuttle Bay Space Bridge Control"; pixel_y = 27 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Bridge Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Bridge Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plating, /area/maintenance/starboard) "cUd" = ( @@ -40623,6 +34788,10 @@ name = "Atmospherics Lockdown Blast door" }, /obj/effect/turf_decal/delivery, +/obj/machinery/door/window/eastright{ + dir = 2; + req_access_txt = "24" + }, /turf/open/floor/plasteel, /area/engineering/atmos) "cXu" = ( @@ -40630,9 +34799,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "dai" = ( @@ -40655,25 +34821,19 @@ /turf/open/floor/plating, /area/science/mixing) "dfP" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plating, /area/maintenance/starboard/aft) "dgV" = ( @@ -40712,16 +34872,23 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "dvB" = ( -/obj/structure/sink/puddle, -/turf/open/floor/plating/asteroid, +/obj/effect/turf_decal/sand, +/obj/structure/well_foundation, +/turf/open/floor/plating, /area/maintenance/port/aft) +"dxC" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/structure/sign/warning/deathsposal{ + pixel_x = 30 + }, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, +/area/science/xenobiology) "dFV" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 4 @@ -40731,21 +34898,14 @@ name = "Oxygen to Airmix" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "dMl" = ( /obj/structure/sign/warning/fire, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ +/obj/machinery/atmospherics/pipe/simple/dark/visible{ dir = 4 }, /turf/closed/wall/r_wall, @@ -40769,16 +34929,6 @@ dir = 4 }, /obj/machinery/vr_sleeper, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "dSq" = ( @@ -40807,9 +34957,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/fore) "eaf" = ( @@ -40828,6 +34975,9 @@ /obj/structure/cable{ icon_state = "4-8" }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "ekG" = ( @@ -40858,17 +35008,10 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "ewT" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -40898,16 +35041,6 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "eyu" = ( @@ -40952,17 +35085,10 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "eDk" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40970,6 +35096,16 @@ }, /turf/closed/wall/r_wall, /area/science/mixing) +"eDE" = ( +/obj/effect/landmark/carpspawn, +/turf/open/space/basic, +/area/space/station_ruins) +"eIk" = ( +/obj/structure/bookcase/random/fiction, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, +/area/service/library) "eOg" = ( /obj/structure/closet/crate{ icon_state = "crateopen" @@ -40999,10 +35135,6 @@ "eUz" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "eWo" = ( @@ -41046,7 +35178,6 @@ /turf/open/floor/plasteel, /area/science/mixing) "fbH" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/effect/decal/cleanable/dirt, /obj/structure/fireaxecabinet{ pixel_x = -30 @@ -41054,6 +35185,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/floor/plasteel/dark/corner{ dir = 1 }, @@ -41085,9 +35217,6 @@ /obj/structure/cable/white{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "fgG" = ( @@ -41099,6 +35228,13 @@ /obj/effect/turf_decal/sand/plating, /turf/open/floor/plating/airless, /area/asteroid/nearstation) +"fji" = ( +/obj/structure/disposaloutlet, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/plating, +/area/space/nearstation) "fjs" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 4 @@ -41108,17 +35244,10 @@ c_tag = "Atmospherics Central"; dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "fjN" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ @@ -41127,16 +35256,6 @@ /turf/open/floor/plasteel, /area/science/mixing) "fkE" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, @@ -41153,7 +35272,7 @@ /obj/structure/window/reinforced/spawner/west, /obj/item/flashlight/lamp/green, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/carpet/green/airless, +/turf/open/floor/carpet/green, /area/service/lawoffice) "fnp" = ( /obj/machinery/air_sensor/atmos/nitrous_tank, @@ -41244,6 +35363,15 @@ /obj/machinery/portable_atmospherics/canister, /turf/open/floor/plasteel, /area/engineering/atmos) +"fHF" = ( +/obj/structure/table/wood, +/obj/item/folder, +/obj/item/pen, +/obj/structure/sign/painting{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/dark, +/area/service/library) "fIN" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 10 @@ -41271,19 +35399,14 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "fNN" = ( /obj/machinery/hydroponics/soil, /obj/item/seeds/tea, /obj/machinery/light/small, -/turf/open/floor/plating/asteroid, +/obj/effect/turf_decal/sand, +/turf/open/floor/plating, /area/maintenance/port/aft) "fRe" = ( /turf/open/floor/plating/airless{ @@ -41340,7 +35463,6 @@ /area/maintenance/disposal/incinerator) "geZ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "gfr" = ( @@ -41350,23 +35472,42 @@ /turf/closed/wall, /area/science/mixing) "ggq" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/command/bridge) "ghr" = ( /obj/structure/reagent_dispensers/fueltank, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/maintenance/port/aft) +"gia" = ( +/obj/structure/table/reinforced, +/obj/machinery/reagentgrinder{ + pixel_y = 5 + }, +/obj/machinery/power/apc{ + areastring = "/area/science/xenobiology"; + dir = 4; + name = "Xenobiology Lab APC"; + pixel_x = 24 + }, +/obj/machinery/light_switch{ + pixel_x = 24; + pixel_y = -24 + }, +/obj/item/radio/intercom{ + name = "Station Intercom"; + pixel_y = -24 + }, +/obj/structure/cable/white{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/science/xenobiology) "gii" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -41375,16 +35516,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "glC" = ( @@ -41402,17 +35533,7 @@ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "gyV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -41421,9 +35542,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "gBp" = ( @@ -41440,19 +35558,13 @@ /turf/open/floor/plating, /area/science/mixing) "gIT" = ( +/obj/structure/cable/white{ + icon_state = "4-8" + }, /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable/white{ - icon_state = "4-8" - }, /turf/open/floor/plasteel, /area/maintenance/port/aft) "gLD" = ( @@ -41498,16 +35610,6 @@ /area/engineering/atmos) "gPY" = ( /obj/machinery/vr_sleeper, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/bar/atrium) "gRe" = ( @@ -41522,37 +35624,22 @@ }, /area/maintenance/starboard/aft) "gSv" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/structure/cable/yellow{ icon_state = "4-8" }, -/turf/open/floor/plasteel/dark, +/obj/machinery/atmospherics/pipe/simple/dark/visible, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/plasteel/dark/corner{ + dir = 1 + }, /area/engineering/atmos) "gVX" = ( /obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/co2{ dir = 8 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "gWt" = ( @@ -41563,21 +35650,35 @@ }, /turf/open/floor/carpet/green/airless, /area/maintenance/starboard/aft) +"gYv" = ( +/turf/open/floor/plasteel, +/area/commons/dorms) "gZk" = ( /obj/machinery/atmospherics/pipe/simple/dark/visible{ dir = 10 }, /turf/open/floor/plating/asteroid/airless, /area/asteroid/nearstation) +"heH" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, +/area/service/bar/atrium) "heQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=8.3-AftSW"; location = "8.2-AftSE" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/aft) +"hfm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall/r_wall/rust, +/area/science/xenobiology) "hhM" = ( /turf/closed/mineral/random/labormineral, /area/science/test_area) @@ -41630,6 +35731,21 @@ }, /turf/closed/wall/r_wall/rust, /area/engineering/atmos) +"huj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/service/bar/atrium) +"hvC" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) "hyX" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 5 @@ -41648,6 +35764,7 @@ /obj/effect/turf_decal/tile/purple{ dir = 4 }, +/obj/machinery/portable_atmospherics/pump, /turf/open/floor/plasteel, /area/science/mixing) "hDi" = ( @@ -41716,12 +35833,6 @@ /obj/structure/cable/white{ icon_state = "1-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -41738,6 +35849,9 @@ /obj/structure/sign/warning/vacuum, /turf/closed/wall, /area/cargo/storage) +"hRi" = ( +/turf/open/floor/plasteel, +/area/service/bar/atrium) "hSE" = ( /obj/structure/cable/white{ icon_state = "4-8" @@ -41818,17 +35932,10 @@ }, /obj/machinery/light, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "iey" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41837,12 +35944,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -41874,9 +35975,6 @@ }, /area/maintenance/starboard/aft) "ixk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 5 }, @@ -41928,16 +36026,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "iOL" = ( @@ -41947,6 +36035,10 @@ /obj/structure/lattice/catwalk, /turf/open/space/basic, /area/space/nearstation) +"iQs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/dark/corner, +/area/service/hydroponics) "iSq" = ( /turf/open/floor/plating/asteroid/airless, /area/maintenance/starboard/aft) @@ -42017,7 +36109,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/turf/open/floor/carpet/green/airless, +/turf/open/floor/carpet/green, /area/service/lawoffice) "iZQ" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/atmos/carbon_input, @@ -42041,9 +36133,6 @@ codes_txt = "patrol;next_patrol=3.1-AtriumNW"; location = "2.2-BridgeWest" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -42071,7 +36160,9 @@ req_access_txt = "55" }, /obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/science/xenobiology) "jeI" = ( /turf/open/floor/plasteel/yellowsiding{ @@ -42091,6 +36182,15 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/engineering/atmos) +"jkQ" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/tile/purple{ + dir = 8 + }, +/turf/open/floor/plasteel/white/corner, +/area/hallway/secondary/entry) "jlZ" = ( /obj/structure/closet/crate, /obj/item/stack/ore/silver, @@ -42128,18 +36228,20 @@ dir = 1 }, /area/engineering/atmos) +"jpG" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/space/nearstation) "jqM" = ( /obj/effect/turf_decal/bot, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard) "jrd" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -42152,8 +36254,7 @@ /turf/open/floor/engine, /area/science/mixing) "jtZ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ +/obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, /turf/open/floor/plasteel, @@ -42198,6 +36299,15 @@ }, /turf/open/floor/plasteel, /area/engineering/atmos) +"jzq" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, +/area/engineering/atmos) "jBh" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -42231,20 +36341,13 @@ "jCi" = ( /obj/machinery/light, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 5 }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "jDd" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -42279,6 +36382,15 @@ /obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/floor/plating, /area/science/mixing) +"jJn" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/cryopod{ + dir = 8 + }, +/turf/open/floor/plasteel/dark/side{ + dir = 4 + }, +/area/commons/dorms) "jLF" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -42387,9 +36499,6 @@ /area/engineering/atmos) "kiw" = ( /obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/machinery/power/terminal, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -42397,19 +36506,24 @@ /obj/structure/cable{ icon_state = "1-4" }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, /turf/open/floor/plasteel, /area/engineering/atmos) -"koL" = ( -/obj/effect/turf_decal/tile/neutral{ +"koJ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/obj/structure/bed{ + dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/airalarm{ + pixel_y = 22 }, +/turf/open/floor/plasteel/freezer, +/area/medical/virology) +"koL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, @@ -42446,17 +36560,10 @@ }, /obj/machinery/light, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "kyS" = ( /obj/structure/chair/stool/bar, @@ -42477,13 +36584,13 @@ /turf/open/floor/plasteel, /area/science/mixing) "kCU" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, /obj/machinery/meter/atmos, +/obj/machinery/atmospherics/pipe/simple/dark/visible{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "kFf" = ( @@ -42496,16 +36603,6 @@ }, /obj/machinery/computer/atmos_control/tank/carbon_tank, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "kIL" = ( @@ -42564,12 +36661,21 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/effect/turf_decal/stripes/corner, /turf/open/floor/plasteel, /area/engineering/atmos) "kUu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/wood, /area/maintenance/starboard/aft) +"kWQ" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plasteel, +/area/science/mixing) "kYh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 @@ -42637,27 +36743,49 @@ /obj/structure/flora/ausbushes/ywflowers, /turf/open/floor/grass, /area/hallway/secondary/entry) +"lvb" = ( +/obj/structure/sign/warning/vacuum/external{ + pixel_x = -32 + }, +/obj/structure/sign/warning/vacuum/external{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) "lvw" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/effect/decal/cleanable/dirt, /obj/machinery/meter/atmos, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/floor/plasteel/dark/corner{ dir = 1 }, /area/engineering/atmos) +"lwu" = ( +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/plasteel/white/corner, +/area/hallway/secondary/exit) "lxq" = ( /obj/structure/cable/white{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) +"lxu" = ( +/obj/structure/bookcase/random/religion, +/turf/open/floor/plasteel/dark/side{ + dir = 10 + }, +/area/service/library) "lyp" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /obj/effect/turf_decal/tile/blue, @@ -42697,7 +36825,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/aft) "lFi" = ( @@ -42736,14 +36863,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"lSQ" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood{ + icon_state = "wood-broken" + }, +/area/maintenance/port/aft) "lTY" = ( /obj/structure/window/reinforced{ dir = 4 @@ -42759,18 +36886,11 @@ "lXk" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/aft) "lZR" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -42853,6 +36973,12 @@ }, /turf/open/floor/engine/vacuum, /area/maintenance/disposal/incinerator) +"mrI" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/turf/closed/wall/r_wall/rust, +/area/science/xenobiology) "msl" = ( /turf/closed/wall/rust, /area/command/gateway) @@ -42862,12 +36988,12 @@ /area/science/mixing) "msJ" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "mvB" = ( @@ -42890,9 +37016,6 @@ /obj/structure/cable/white{ icon_state = "0-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/port/fore) "mJP" = ( @@ -42928,7 +37051,7 @@ "mTT" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 8; - name = "Port to Fuel Pipe" + name = "Port to Incinerator" }, /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -42940,9 +37063,6 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "mZm" = ( @@ -42975,9 +37095,12 @@ /turf/open/floor/plasteel, /area/maintenance/starboard) "ndg" = ( -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/fore) +"nfH" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/service/bar/atrium) "nfS" = ( /obj/machinery/portable_atmospherics/canister/carbon_dioxide, /turf/open/floor/plating, @@ -43026,6 +37149,13 @@ }, /turf/open/pool, /area/maintenance/starboard/aft) +"nmv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/service/bar/atrium) "nqr" = ( /obj/item/kirbyplants{ icon_state = "plant-22" @@ -43079,25 +37209,19 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "nKi" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plating, /area/maintenance/starboard/aft) "nMh" = ( @@ -43113,11 +37237,9 @@ network = list("ss13","rd") }, /obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/science/mixing) "nPS" = ( /obj/effect/spawner/structure/window/reinforced, @@ -43140,9 +37262,6 @@ "nUk" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, @@ -43151,7 +37270,7 @@ icon_state = "0-4" }, /turf/open/floor/plasteel/dark/corner, -/area/engineering/atmos) +/area/maintenance/disposal/incinerator) "nXb" = ( /obj/machinery/pool/drain, /turf/open/pool, @@ -43210,18 +37329,11 @@ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/obj/structure/closet/radiation, +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/structure/closet/radiation, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "orV" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43235,16 +37347,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/meter/atmos, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "oxb" = ( @@ -43283,18 +37385,11 @@ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/obj/structure/closet/radiation, +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/structure/closet/radiation, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "oGc" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ @@ -43324,24 +37419,6 @@ /obj/effect/landmark/start/scientist, /turf/open/floor/plasteel/white, /area/science/mixing) -"oKz" = ( -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/command/bridge) "oOk" = ( /turf/open/floor/engine/plasma, /area/engineering/atmos) @@ -43355,7 +37432,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "oXj" = ( @@ -43364,7 +37440,6 @@ }, /obj/machinery/door/window/westright, /obj/effect/decal/cleanable/egg_smudge, -/obj/effect/turf_decal/bot, /turf/open/floor/plasteel/freezer, /area/commons/toilet/restrooms) "oXz" = ( @@ -43392,16 +37467,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/gravity_generator) "pcl" = ( @@ -43422,22 +37487,42 @@ }, /turf/open/floor/plasteel/dark, /area/command/gateway) +"pdQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, +/area/maintenance/port/aft) "pdX" = ( /obj/machinery/portable_atmospherics/canister, /obj/item/radio/intercom{ pixel_y = 25 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/science/mixing) "pgH" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall/r_wall, /area/science/mixing) +"phb" = ( +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/dark/side{ + dir = 5 + }, +/area/command/bridge) "pix" = ( /turf/open/floor/wood{ icon_state = "wood-broken7" @@ -43476,6 +37561,10 @@ pixel_y = 6; req_access_txt = "55" }, +/obj/machinery/shower{ + dir = 8; + name = "emergency shower" + }, /turf/open/floor/plasteel, /area/science/xenobiology) "pmx" = ( @@ -43521,16 +37610,6 @@ /obj/structure/sign/poster/random{ pixel_y = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "puc" = ( @@ -43539,7 +37618,6 @@ /area/maintenance/starboard/aft) "pvX" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 4 }, @@ -43559,7 +37637,10 @@ /obj/structure/cable{ icon_state = "0-4" }, -/turf/open/floor/plasteel/checker, +/obj/machinery/atmospherics/pipe/simple/dark/visible, +/turf/open/floor/plasteel/dark/corner{ + dir = 1 + }, /area/engineering/atmos) "pAN" = ( /obj/structure/table/reinforced, @@ -43582,9 +37663,6 @@ /obj/structure/cable/white{ icon_state = "0-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, @@ -43641,7 +37719,6 @@ /obj/structure/sign/poster/official/no_erp{ pixel_x = 32 }, -/obj/effect/turf_decal/bot, /turf/open/floor/plasteel/freezer, /area/commons/toilet/restrooms) "pMQ" = ( @@ -43649,7 +37726,8 @@ icon_state = "1-4" }, /obj/item/reagent_containers/glass/bottle/nutrient/rh, -/turf/open/floor/plating/asteroid/airless, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, /area/maintenance/port/aft) "pNE" = ( /obj/structure/grille, @@ -43690,22 +37768,16 @@ /area/hallway/secondary/entry) "qcP" = ( /obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Launch Room Access"; - req_access_txt = "7" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, +/obj/machinery/door/airlock/research{ + name = "Toxins Launch Room Access"; + req_access_txt = "7" + }, /turf/open/floor/plasteel, /area/science/mixing) "qdt" = ( @@ -43733,20 +37805,15 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible{ dir = 4 }, -/obj/item/broken_bottle, -/obj/item/pickaxe, +/obj/structure/closet/emcloset/anchored, /turf/open/floor/plating, /area/engineering/atmos) "qeO" = ( +/obj/machinery/door/firedoor, /obj/machinery/door/airlock/command{ name = "Gateway"; req_access_txt = "62" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/command/gateway) "qgg" = ( @@ -43757,7 +37824,8 @@ /obj/structure/cable/white{ icon_state = "0-2" }, -/turf/open/floor/plating/asteroid/airless, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, /area/maintenance/port/aft) "qgC" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/atmos/incinerator_input{ @@ -43844,16 +37912,6 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "qHx" = ( @@ -43870,6 +37928,12 @@ }, /turf/open/floor/plasteel, /area/engineering/atmos) +"qKS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/service/bar/atrium) "qMr" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -43883,6 +37947,16 @@ }, /turf/open/floor/plasteel, /area/engineering/atmos) +"qOl" = ( +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/tile/blue, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/zone3) "qRz" = ( /obj/machinery/newscaster{ pixel_x = 32 @@ -43890,13 +37964,18 @@ /obj/machinery/photocopier, /turf/open/floor/wood, /area/service/lawoffice) -"qTa" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 +"qSs" = ( +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, +/area/command/bridge) +"qTa" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "qUQ" = ( @@ -43951,10 +38030,6 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "rmZ" = ( @@ -44066,6 +38141,7 @@ /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/weather, /obj/effect/turf_decal/weather, +/obj/machinery/space_heater, /turf/open/floor/plasteel/dark, /area/maintenance/starboard/aft) "sdX" = ( @@ -44089,6 +38165,12 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/command/gateway) +"snF" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/science/xenobiology) "soC" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -44096,9 +38178,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "spw" = ( @@ -44116,16 +38195,6 @@ name = "CO2 to Pure" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "srR" = ( @@ -44158,12 +38227,6 @@ /turf/closed/wall/r_wall/rust, /area/command/bridge) "swy" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "swz" = ( @@ -44175,19 +38238,6 @@ "swG" = ( /turf/closed/wall/rust, /area/security/detectives_office) -"swJ" = ( -/obj/structure/cable/white{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/command/bridge) "swK" = ( /obj/structure/cable/white{ icon_state = "4-8" @@ -44195,12 +38245,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "swL" = ( @@ -44238,7 +38282,7 @@ name = "Lawyer RC"; pixel_y = -30 }, -/turf/open/floor/carpet/green/airless, +/turf/open/floor/carpet/green, /area/service/lawoffice) "syT" = ( /turf/closed/wall/r_wall/rust, @@ -44269,13 +38313,10 @@ /turf/closed/wall/rust, /area/service/theater) "sBx" = ( -/obj/effect/landmark/xeno_spawn, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/effect/turf_decal/caution, /turf/open/floor/plating, /area/maintenance/starboard) "sBy" = ( @@ -44295,7 +38336,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/maintenance/starboard) "sCr" = ( /obj/structure/cable/white{ @@ -44368,26 +38409,19 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "sEK" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/cable/white{ + icon_state = "4-8" + }, /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable/white{ - icon_state = "4-8" - }, /turf/open/floor/plating, /area/maintenance/starboard) "sEL" = ( @@ -44405,20 +38439,6 @@ name = "Technology Storage"; req_access_txt = "23" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sEQ" = ( @@ -44445,40 +38465,24 @@ pixel_x = -3; pixel_y = -3 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sFo" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 9 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sFp" = ( /obj/effect/turf_decal/bot{ dir = 1 }, /obj/structure/closet/crate/solarpanel_small, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/machinery/light/small{ dir = 1 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side{ + dir = 5 + }, /area/engineering/storage/tech) "sFq" = ( /obj/effect/turf_decal/bot, @@ -44491,12 +38495,6 @@ /obj/item/aicard, /obj/item/analyzer, /obj/item/assembly/flash/handheld, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sFs" = ( @@ -44539,32 +38537,19 @@ pixel_x = -4; pixel_y = -4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sFS" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 10 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sFT" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/obj/effect/landmark/xeno_spawn, +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sFU" = ( /obj/effect/turf_decal/bot, @@ -44577,12 +38562,6 @@ /obj/item/electronics/apc, /obj/item/electronics/airlock, /obj/item/stock_parts/cell/high, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sFX" = ( @@ -44606,25 +38585,11 @@ /area/hallway/secondary/exit) "sGy" = ( /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/airlock/engineering{ name = "Technology Storage"; req_access_txt = "23" }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/storage/tech) "sGA" = ( @@ -44721,16 +38686,12 @@ "sHz" = ( /obj/structure/closet/crate/bin, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/starboard) "sHB" = ( -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner{ @@ -44744,10 +38705,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "sHV" = ( @@ -44781,10 +38738,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "sIe" = ( @@ -44810,7 +38763,7 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner, @@ -44829,7 +38782,7 @@ c_tag = "Departures Hallway"; dir = 1 }, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/white/corner, @@ -44841,12 +38794,6 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 @@ -44857,10 +38804,10 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/red{ +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/effect/turf_decal/tile/brown{ dir = 8 }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "sIB" = ( @@ -44897,13 +38844,11 @@ /turf/closed/wall/rust, /area/maintenance/starboard) "sIP" = ( -/obj/machinery/vending/cola/random, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/obj/machinery/vending/cola/random, +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/hallway/secondary/exit) "sIR" = ( /obj/structure/table, @@ -44958,9 +38903,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "sJc" = ( @@ -44975,22 +38917,16 @@ name = "Shuttle Bay Space Bridge Control"; pixel_y = 27 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Bridge Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Bridge Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plating, /area/maintenance/starboard) "sJe" = ( @@ -45012,22 +38948,16 @@ /turf/open/floor/plating, /area/maintenance/starboard) "sJj" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Maintenance Hatch"; + req_access_txt = "12" + }, /turf/open/floor/plating, /area/maintenance/starboard) "sJk" = ( @@ -45038,7 +38968,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/brown{ dir = 8 }, /turf/open/floor/plasteel/cafeteria, @@ -45050,13 +38980,9 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 6 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "sJq" = ( /obj/structure/sign/directions/engineering{ @@ -45073,11 +38999,9 @@ "sJA" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/central) "sJD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -45092,24 +39016,12 @@ "sJJ" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/hallway/primary/port/aft) "sJK" = ( /obj/structure/closet/crate/bin, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/hallway/primary/port/aft) "sJL" = ( /turf/closed/wall/r_wall, @@ -45121,20 +39033,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/tcommsat/server) "sJP" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/tcommsat/server) "sJS" = ( @@ -45192,32 +39096,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "sKn" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "sKp" = ( @@ -45256,7 +39140,6 @@ /turf/closed/wall/r_wall/rust, /area/ai_monitored/turret_protected/ai) "sLx" = ( -/obj/structure/table, /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/stripes/line, /obj/machinery/camera{ @@ -45265,16 +39148,10 @@ network = list("rd") }, /obj/machinery/cell_charger, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLy" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, /obj/structure/cable{ icon_state = "0-4" }, @@ -45282,21 +39159,20 @@ /obj/machinery/light{ dir = 1 }, +/obj/machinery/power/smes{ + charge = 5e+006 + }, /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "sLz" = ( /obj/item/paper_bin, /obj/item/pen, -/obj/structure/table, /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/stripes/line, /obj/structure/cable{ icon_state = "2-8" }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLA" = ( @@ -45358,8 +39234,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/ai_monitored/turret_protected/ai) "sLL" = ( /obj/effect/spawner/structure/window/reinforced, @@ -45376,10 +39251,9 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLN" = ( /obj/effect/turf_decal/stripes/line{ @@ -45394,11 +39268,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLP" = ( /obj/machinery/turretid{ @@ -45423,16 +39295,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLQ" = ( @@ -45469,16 +39331,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLS" = ( @@ -45488,13 +39340,9 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLT" = ( /obj/machinery/firealarm{ @@ -45554,11 +39402,9 @@ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 4 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sLZ" = ( /obj/effect/turf_decal/stripes/line{ @@ -45568,13 +39414,9 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/side{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMa" = ( /obj/effect/turf_decal/stripes/line, @@ -45590,10 +39432,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 4 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMc" = ( /obj/machinery/airalarm{ @@ -45619,12 +39460,6 @@ /obj/machinery/light{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMe" = ( @@ -45647,10 +39482,9 @@ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 1 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMg" = ( /obj/effect/turf_decal/stripes/line, @@ -45672,16 +39506,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMm" = ( @@ -45709,43 +39533,25 @@ /obj/item/crowbar, /obj/item/wrench, /obj/item/mmi, -/obj/structure/table, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/obj/structure/table, +/turf/open/floor/plasteel/dark/corner{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMw" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/turf/open/floor/plasteel/dark/side{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMx" = ( /obj/item/folder/blue, /obj/item/assembly/flash/handheld, /obj/structure/table, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "sMD" = ( /turf/closed/wall, @@ -45754,19 +39560,14 @@ /turf/closed/wall/rust, /area/ai_monitored/turret_protected/aisat_interior) "sMG" = ( -/obj/machinery/teleport/hub, /obj/machinery/airalarm{ pixel_y = 23 }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/teleport/hub, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sMH" = ( -/obj/machinery/teleport/station, /obj/machinery/light{ dir = 1 }, @@ -45774,19 +39575,12 @@ pixel_y = 32 }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/teleport/station, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sMI" = ( -/obj/machinery/computer/teleporter, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/computer/teleporter, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sMK" = ( @@ -45796,10 +39590,6 @@ "sML" = ( /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/locked, -/obj/machinery/door/airlock/highsecurity{ - name = "MiniSat Chamber"; - req_access_txt = "16" - }, /obj/machinery/door/poddoor/shutters/preopen{ id = "aicoredoor"; name = "AI Core Access" @@ -45820,15 +39610,9 @@ }, /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/highsecurity{ + name = "MiniSat Chamber"; + req_access_txt = "16" }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) @@ -45883,12 +39667,6 @@ dir = 1 }, /obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sMU" = ( @@ -45906,29 +39684,14 @@ network = list("minisat"); start_active = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/ai_monitored/turret_protected/aisat_interior) "sMW" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/ai_monitored/turret_protected/aisat_interior) "sMX" = ( /obj/effect/turf_decal/stripes/line{ @@ -45945,14 +39708,9 @@ pixel_x = 26; pixel_y = 26 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/corner{ + dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sMY" = ( /obj/structure/sign/warning/securearea, @@ -45966,16 +39724,7 @@ dir = 9 }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/ai_monitored/turret_protected/aisat_interior) "sNa" = ( /obj/effect/turf_decal/bot, @@ -45990,13 +39739,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/side, /area/ai_monitored/turret_protected/aisat_interior) "sNb" = ( /obj/effect/turf_decal/stripes/line{ @@ -46006,14 +39749,9 @@ dir = 4 }, /obj/item/beacon, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/corner{ + dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNc" = ( /obj/structure/sign/warning/securearea, @@ -46080,23 +39818,9 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNk" = ( -/obj/machinery/door/airlock/external{ - name = "MiniSat External Access"; - req_access_txt = "65" - }, /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -46104,15 +39828,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/external{ + name = "MiniSat External Access"; + req_access_txt = "65" }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) @@ -46123,13 +39841,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNm" = ( /obj/effect/turf_decal/bot, @@ -46151,32 +39865,20 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNo" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Antechamber"; - req_one_access_txt = "32;19" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Antechamber"; + req_one_access_txt = "32;19" }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) @@ -46191,13 +39893,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNq" = ( /obj/machinery/ai_slipper{ @@ -46214,32 +39912,20 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNs" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Antechamber"; - req_one_access_txt = "32;19" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Antechamber"; + req_one_access_txt = "32;19" }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) @@ -46254,13 +39940,9 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNu" = ( /obj/effect/turf_decal/bot, @@ -46268,16 +39950,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNv" = ( @@ -46294,35 +39966,23 @@ /obj/machinery/newscaster{ pixel_x = 32 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/side{ + dir = 8 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNx" = ( /obj/structure/sign/warning/securearea, /turf/closed/wall, /area/ai_monitored/turret_protected/aisat_interior) "sNy" = ( -/obj/machinery/door/airlock/external{ - name = "MiniSat External Access"; - req_access_txt = "65" - }, /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/door/airlock/external{ + name = "MiniSat External Access"; + req_access_txt = "65" }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) @@ -46341,14 +40001,9 @@ /obj/machinery/newscaster{ pixel_y = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/corner{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNB" = ( /obj/structure/transit_tube, @@ -46367,14 +40022,9 @@ name = "AI Satellite turret control"; pixel_x = 30 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/corner{ + dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNE" = ( /obj/effect/turf_decal/stripes/line{ @@ -46390,13 +40040,9 @@ network = list("minisat"); start_active = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/corner{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNF" = ( /obj/effect/turf_decal/stripes/corner, @@ -46406,17 +40052,17 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/turf/open/floor/circuit/green, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, /area/ai_monitored/turret_protected/aisat_interior) "sNG" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 +/turf/open/floor/plasteel/dark/corner{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNI" = ( /obj/item/stack/sheet/metal/fifty, @@ -46437,10 +40083,6 @@ dir = 1 }, /obj/structure/table, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNJ" = ( @@ -46451,10 +40093,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNK" = ( @@ -46471,10 +40109,6 @@ dir = 1; pixel_y = -26 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNM" = ( @@ -46491,16 +40125,12 @@ /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/aisat_interior) "sNS" = ( -/obj/machinery/porta_turret/ai, /obj/effect/turf_decal/delivery, /obj/machinery/airalarm{ dir = 4; pixel_x = -22 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/porta_turret/ai, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNT" = ( @@ -46515,28 +40145,20 @@ pixel_x = -8; pixel_y = 4 }, -/obj/structure/table, /obj/machinery/status_display{ pixel_y = -32 }, /obj/machinery/light, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/structure/table, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sNU" = ( -/obj/machinery/porta_turret/ai, /obj/effect/turf_decal/delivery, /obj/machinery/firealarm{ dir = 1; pixel_y = -26 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, +/obj/machinery/porta_turret/ai, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "sOb" = ( @@ -46563,12 +40185,6 @@ name = "MiniSat Access"; req_access_txt = "65" }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "sOt" = ( @@ -46578,10 +40194,6 @@ /obj/machinery/status_display/ai{ pixel_y = 32 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "sOu" = ( @@ -46594,10 +40206,6 @@ dir = 4 }, /obj/machinery/light/small, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/command/bridge) "sOw" = ( @@ -46658,7 +40266,6 @@ /obj/structure/cable/white{ icon_state = "1-4" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "sOJ" = ( @@ -46672,35 +40279,23 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, +/obj/machinery/door/firedoor, /obj/machinery/door/airlock{ name = "Primary Restroom" }, -/obj/machinery/door/firedoor, /turf/open/floor/plasteel/freezer, /area/commons/toilet/restrooms) "sOL" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/starboard) "sOM" = ( @@ -46813,7 +40408,8 @@ "sTH" = ( /obj/machinery/hydroponics/soil, /obj/item/seeds/tower, -/turf/open/floor/plating/asteroid, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, /area/maintenance/port/aft) "sVt" = ( /turf/closed/wall/r_wall, @@ -46826,7 +40422,8 @@ /area/maintenance/starboard/aft) "sZH" = ( /obj/item/reagent_containers/glass/bucket, -/turf/open/floor/plating/asteroid, +/obj/effect/turf_decal/sand, +/turf/open/floor/plating, /area/maintenance/port/aft) "tac" = ( /obj/structure/grille, @@ -46836,12 +40433,12 @@ /area/engineering/atmos) "tdN" = ( /obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "tfP" = ( @@ -46876,16 +40473,10 @@ /turf/open/floor/carpet/green/airless, /area/asteroid/nearstation) "tkH" = ( +/obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ name = "Courtroom" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/service/lawoffice) "ttp" = ( @@ -46896,13 +40487,9 @@ /obj/structure/cable/white{ icon_state = "2-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/hallway/primary/port) "ttA" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/effect/turf_decal/bot, /obj/machinery/space_heater, /obj/effect/decal/cleanable/dirt, @@ -46912,6 +40499,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/floor/plasteel/dark/corner{ dir = 1 }, @@ -46950,13 +40538,23 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "tPn" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/science/mixing) +"tSA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/purple{ + dir = 4 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/hallway/secondary/entry) "tWh" = ( /turf/closed/wall, /area/commons/lounge) @@ -46987,6 +40585,26 @@ }, /turf/open/floor/plasteel/dark, /area/service/library) +"uac" = ( +/obj/structure/table/reinforced, +/obj/item/storage/box/beakers{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/storage/box/syringes, +/obj/item/extinguisher/mini, +/obj/machinery/airalarm/unlocked{ + dir = 4; + pixel_x = -23 + }, +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/science/xenobiology) "ucd" = ( /obj/machinery/door/airlock/research{ name = "Toxins Storage"; @@ -46998,23 +40616,28 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/turf/open/floor/plasteel, +/area/engineering/atmos) +"udG" = ( +/obj/structure/table/reinforced, +/obj/item/folder/white, +/obj/item/stack/sheet/mineral/plasma{ + amount = 5 + }, +/obj/item/reagent_containers/glass/beaker/large, +/obj/item/reagent_containers/glass/beaker, +/obj/item/reagent_containers/dropper, +/obj/machinery/status_display{ + pixel_y = -32 + }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Security Checkpoint"; - dir = 10 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/hallway/primary/aft) +/turf/open/floor/plasteel, +/area/science/xenobiology) "udT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/power/apc{ @@ -47027,9 +40650,6 @@ /obj/structure/cable/white{ icon_state = "0-4" }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "ueC" = ( @@ -47041,9 +40661,6 @@ /turf/open/floor/plasteel, /area/engineering/atmos) "ueG" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 6 - }, /obj/machinery/light{ dir = 8 }, @@ -47054,6 +40671,9 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible{ + dir = 6 + }, /turf/open/floor/plasteel/dark/corner{ dir = 1 }, @@ -47080,7 +40700,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/aft) "uhz" = ( @@ -47097,6 +40716,15 @@ /obj/machinery/atmospherics/components/unary/vent_pump/siphon/atmos/nitrous_output, /turf/open/floor/engine/n2o, /area/engineering/atmos) +"ukp" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) "uok" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 8 @@ -47104,29 +40732,20 @@ /turf/closed/wall/r_wall, /area/engineering/atmos) "upN" = ( -/obj/machinery/door/airlock/research{ - name = "Toxins Launch Room"; - req_access_txt = "7" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/research{ + name = "Toxins Launch Room"; + req_access_txt = "7" }, /turf/open/floor/plasteel, /area/science/mixing) "uqY" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -47143,16 +40762,6 @@ }, /obj/effect/turf_decal/bot, /obj/structure/table/glass, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel, /area/service/hydroponics) "uuJ" = ( @@ -47173,9 +40782,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -47186,17 +40792,13 @@ /area/maintenance/disposal/incinerator) "uxJ" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Atrium" - }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/turf/open/floor/plasteel, +/obj/machinery/door/airlock/public/glass{ + name = "Atrium" + }, +/turf/open/floor/plasteel/dark, /area/service/bar/atrium) "uxM" = ( /obj/machinery/door/airlock/external{ @@ -47220,8 +40822,18 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible{ dir = 4 }, +/obj/item/broken_bottle, +/obj/item/pickaxe, /turf/open/floor/plating, /area/engineering/atmos) +"uBW" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/box, +/obj/machinery/power/tracker, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solars/starboard/fore) "uCY" = ( /turf/open/pool, /area/maintenance/starboard/aft) @@ -47267,10 +40879,6 @@ /area/command/gateway) "uMi" = ( /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line, /obj/structure/cable/white{ icon_state = "1-2" }, @@ -47286,18 +40894,27 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) +"uTb" = ( +/obj/machinery/computer/camera_advanced/xenobio{ + dir = 1 + }, +/obj/machinery/light, +/obj/machinery/requests_console{ + department = "Xenobiology Lab"; + name = "Xenobiology RC"; + pixel_y = -32; + receive_ore_updates = 1 + }, +/obj/structure/cable/white{ + icon_state = "1-4" + }, +/turf/open/floor/circuit/green, +/area/science/xenobiology) "uTF" = ( /obj/machinery/door/window/southleft{ name = "Mass Driver Door"; @@ -47336,16 +40953,6 @@ }, /obj/machinery/computer/atmos_control/tank/nitrous_tank, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "vjN" = ( @@ -47358,10 +40965,6 @@ "vkK" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "vlJ" = ( @@ -47388,16 +40991,6 @@ }, /obj/machinery/computer/atmos_control/tank/toxin_tank, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "vmV" = ( @@ -47434,16 +41027,6 @@ /area/engineering/atmos) "vsf" = ( /obj/effect/decal/cleanable/blood/gibs/xeno, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "vsL" = ( @@ -47476,16 +41059,6 @@ name = "N2O to Pure" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "vuN" = ( @@ -47494,6 +41067,26 @@ }, /turf/open/floor/plasteel, /area/engineering/atmos) +"vuZ" = ( +/obj/structure/disposaloutlet{ + dir = 8 + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/plating, +/area/space/nearstation) +"vvD" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/structure/sign/warning/deathsposal{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/medical/virology) "vxf" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -47539,7 +41132,6 @@ /turf/open/floor/plasteel, /area/engineering/atmos) "vJt" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/effect/turf_decal/bot, /obj/machinery/space_heater, /obj/machinery/light{ @@ -47553,6 +41145,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/floor/plasteel/dark/corner{ dir = 1 }, @@ -47564,6 +41157,28 @@ "vMb" = ( /turf/open/floor/engine/n2o, /area/engineering/atmos) +"vPH" = ( +/obj/effect/turf_decal/box, +/obj/machinery/power/tracker, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solars/port/aft) +"vPL" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/service/bar/atrium) +"vPQ" = ( +/obj/structure/table/wood, +/obj/machinery/computer/libraryconsole, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/service/library) "vPZ" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 8 @@ -47586,17 +41201,10 @@ /obj/structure/sign/warning/nosmoking{ pixel_y = -30 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "vVS" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/atmos/toxin_input, @@ -47610,12 +41218,6 @@ dir = 4 }, /obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, /turf/open/floor/plasteel, /area/hallway/primary/starboard/fore) "vZb" = ( @@ -47649,13 +41251,9 @@ icon_state = "4-8" }, /obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/turf/open/floor/plasteel/dark/side{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, /area/hallway/primary/aft) "wdK" = ( /obj/effect/turf_decal/stripes/line, @@ -47665,6 +41263,17 @@ }, /turf/open/floor/engine, /area/engineering/main) +"wep" = ( +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/dark/side{ + dir = 1 + }, +/area/command/bridge) "wiJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, @@ -47673,7 +41282,8 @@ /obj/machinery/hydroponics/soil, /obj/item/shovel/spade, /obj/item/cultivator, -/turf/open/floor/plating/asteroid, +/obj/effect/turf_decal/sand, +/turf/open/floor/plating, /area/maintenance/port/aft) "wkG" = ( /obj/structure/lattice/catwalk, @@ -47692,6 +41302,13 @@ }, /turf/open/floor/plasteel/dark, /area/command/bridge) +"wle" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/space/basic, +/area/solars/starboard/fore) "wqL" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 4 @@ -47716,7 +41333,8 @@ /obj/structure/cable/white{ icon_state = "0-4" }, -/turf/open/floor/plating/asteroid, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, /area/maintenance/port/aft) "wwT" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ @@ -47724,24 +41342,27 @@ }, /turf/open/floor/plasteel, /area/science/mixing) +"wBp" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/structure/cable/white{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/service/bar/atrium) "wDb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, /area/engineering/gravity_generator) "wOe" = ( /obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Lab"; - req_access_txt = "7" - }, /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/door/airlock/research{ + name = "Toxins Lab"; + req_access_txt = "7" }, /turf/open/floor/plasteel, /area/science/mixing) @@ -47789,7 +41410,9 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark/side{ + dir = 8 + }, /area/science/xenobiology) "wWj" = ( /obj/structure/window/reinforced{ @@ -47803,17 +41426,9 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "xdr" = ( /obj/effect/turf_decal/sand/plating, @@ -47847,13 +41462,39 @@ }, /turf/open/floor/plasteel, /area/science/mixing) +"xjj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Security Checkpoint"; + dir = 6 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"xoR" = ( +/obj/structure/table/reinforced, +/obj/item/storage/box/monkeycubes, +/obj/item/storage/box/monkeycubes, +/obj/machinery/status_display{ + pixel_y = -32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Xenobiology South"; + dir = 1; + network = list("ss13","rd") + }, +/turf/open/floor/plasteel, +/area/science/xenobiology) "xpX" = ( /obj/structure/toilet{ dir = 8 }, /obj/structure/window/spawner/north, /obj/machinery/door/window/westright, -/obj/effect/turf_decal/bot, /obj/effect/landmark/blobstart, /turf/open/floor/plasteel/freezer, /area/commons/toilet/restrooms) @@ -47864,11 +41505,11 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible, /turf/open/floor/plasteel/dark/corner{ dir = 1 }, @@ -47881,6 +41522,9 @@ dir = 8; name = "Waste to Filter" }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, /turf/open/floor/plasteel, /area/engineering/atmos) "xtL" = ( @@ -47908,52 +41552,54 @@ id = "incineratorturbine" }, /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 9 - }, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/dark/visible{ + dir = 9 + }, /turf/open/floor/plasteel/checker, /area/maintenance/disposal/incinerator) "xwu" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/engineering/break_room) +"xxx" = ( +/obj/structure/chair/stool/bar, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/service/bar/atrium) "xyo" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /obj/machinery/shower{ dir = 8; name = "emergency shower" }, /obj/effect/turf_decal/vg_decals/radiation, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/plasteel/dark/corner, /area/engineering/atmos) "xAj" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/tile/yellow{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plasteel/dark/corner{ dir = 8 }, -/turf/open/floor/plasteel/dark, /area/engineering/atmos) "xEl" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -47966,7 +41612,6 @@ /obj/structure/cable/white{ icon_state = "0-8" }, -/obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/primary/port) "xEQ" = ( @@ -47974,16 +41619,6 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) "xFw" = ( @@ -47997,12 +41632,13 @@ /turf/closed/wall/r_wall, /area/engineering/atmos) "xKp" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Engineering Maintenance"; - req_access_txt = "10" +/obj/machinery/door/airlock/external{ + name = "Engineering External Access"; + req_access_txt = "10;13" }, +/obj/structure/fans/tiny, /turf/open/floor/plating, -/area/engineering/gravity_generator) +/area/engineering/main) "xMv" = ( /obj/structure/lattice, /obj/structure/fluff/broken_flooring{ @@ -48053,6 +41689,22 @@ }, /turf/open/floor/plasteel, /area/command/gateway) +"xZz" = ( +/obj/item/kirbyplants{ + icon_state = "plant-22" + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/service/bar/atrium) "xZO" = ( /obj/effect/mapping_helpers/airlock/locked, /obj/machinery/door/airlock/public/glass{ @@ -48139,49 +41791,36 @@ /turf/open/floor/plasteel, /area/hallway/primary/port/aft) "ygB" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Gateway Maintenance Hatch"; - req_access_txt = "62" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ icon_state = "4-8" }, +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Gateway Maintenance Hatch"; + req_access_txt = "62" + }, /turf/open/floor/plating, /area/maintenance/starboard) "ygE" = ( /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/service/bar/atrium) "yhg" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/turf/open/floor/plating{ + icon_state = "panelscorched" }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engineering/atmos) +/area/asteroid/nearstation) "yin" = ( /obj/structure/cable/white{ icon_state = "4-8" }, -/turf/open/floor/plating/asteroid, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, /area/maintenance/port/aft) "ykL" = ( /obj/structure/chair/stool/bar, @@ -48203,16 +41842,6 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/engineering/atmos) @@ -70958,7 +64587,7 @@ jFP jFP jFP jFP -jFP +eDE jFP jFP jFP @@ -71470,23 +65099,23 @@ jFP jFP jFP jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa jFP jFP jFP @@ -71727,23 +65356,23 @@ jFP jFP jFP jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa jFP jFP jFP @@ -71984,23 +65613,23 @@ jFP jFP jFP jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa jFP jFP jFP @@ -72241,23 +65870,23 @@ jFP jFP jFP jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP +aaa +aaa +fMP +sdX +aLL +aLL +aLL +sdX +vPH +sdX +aLL +aLL +aLL +sdX +aLL +aaa +aaa jFP jFP jFP @@ -72498,23 +66127,23 @@ jFP jFP jFP jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP +aaa +aaa +fMP +aaa +aaa +aaa +aaa +aaa +aMH +aaa +aaa +aaa +aaa +aaa +aLL +aaa +aaa jFP jFP jFP @@ -72755,21 +66384,21 @@ jFP jFP jFP jFP -jFP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aaa aaa +fMP aaa +aKr +aKr +aKr +aKr +aMI +aKr +aKr +aKr +aKr aaa +aLL aaa aaa jFP @@ -73012,21 +66641,21 @@ jFP jFP jFP jFP -jFP -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aaa aaa +sdX +sdX +aKB +aLz +aLz +aLz +aMQ +bar +bar +bar +bbS +sdX +sdX aaa aaa jFP @@ -73271,19 +66900,19 @@ aaa aaa aaa aaa -pZU -sdX -pZU -pZU -pZU -sdX aLL -sdX -pZU -pZU -pZU -sdX -pZU +aaa +aKF +aKF +aKF +aKF +aMH +aKF +aKF +aKF +aKF +aaa +bcJ aaa aaa jFP @@ -73528,13 +67157,13 @@ aaa aaa aaa aaa -pZU +aLL aaa aaa aaa aaa aaa -aMH +aZS aaa aaa aaa @@ -75304,7 +68933,7 @@ aCF qTa oJp hUG -yhg +hUG hUG hUG ueC @@ -75561,7 +69190,7 @@ jpv msJ rjQ rjQ -jtZ +rjQ rjQ bGL vuN @@ -76085,7 +69714,7 @@ xyo hNO bOy uBJ -xKp +aGe aId aIc aJi @@ -77870,7 +71499,7 @@ anx anx anx awC -bKQ +jzq fFw fEt mnD @@ -78154,8 +71783,8 @@ aPI bwV aRF aSP -aEt -bvo +xKp +yhg aad bvo aad @@ -79438,14 +73067,14 @@ aMT aPK aQN aRK -aSU +aSW aPL aUS aUU aWz aVL ylr -aSG +lvb jXc aME aLv @@ -80177,7 +73806,7 @@ azg aro aro aro -asm +azg bko cWv cWv @@ -80190,7 +73819,7 @@ qui awJ axo ayi -diG +jtZ oGc awF aCA @@ -80475,7 +74104,7 @@ aVL bvo aqo aKm -bbj +bbm aKm aKm aMG @@ -80488,9 +74117,9 @@ aSe aSJ aTm aLw -aaa -aaa -aaa +vuZ +aad +aad aaa aaa aaa @@ -80691,7 +74320,7 @@ ayd ayy arq azh -ars +aDm asy ars ars @@ -80704,7 +74333,7 @@ aqz aqz axq cBf -diG +ucu aAr aBy aCD @@ -80744,6 +74373,8 @@ aKV aTk aSK aYE +cLO +hvC aKV aad aaa @@ -80761,8 +74392,6 @@ aaa aaa aaa aaa -aaa -aaa jFP jFP jFP @@ -80941,7 +74570,7 @@ acH acH acH acH -ars +aDm agF agF agF @@ -80952,7 +74581,7 @@ agF agF agF ars -asE +azg ars asI atK @@ -81000,10 +74629,10 @@ aVG aKV aTl aXD -aKV -aKV -aKV -aKV +vvD +ukp +koJ +aLw aaa aaa aaa @@ -81246,7 +74875,7 @@ bvo bvo aqo aMw -bbk +pdQ aON aPT aRd @@ -81968,7 +75597,7 @@ aep azo aAo acH -ars +afH ars agF aio @@ -82265,7 +75894,7 @@ atE aMG aQW aRT -aRU +fHF aUc aUV aVN @@ -82521,7 +76150,7 @@ sHV avB axl sJI -aSc +vPQ aTc aUd sKd @@ -82743,7 +76372,7 @@ ahz aBw aCp air -aiW +aVV ajW akX alM @@ -83057,7 +76686,7 @@ aKm aKm aKm aZC -aRm +lSQ aRm aZo aZp @@ -83289,14 +76918,14 @@ aKO aMd aNg aEt -awG +bbm aKm aQW aRX aTf axj aCB -aDm +aDo aDn aDo aKn @@ -83554,7 +77183,7 @@ aTg sJX bxS aVS -aWE +eIk aXh ajG ajG @@ -83787,12 +77416,12 @@ auO avT awO axB -ayt -ayt -ayt +cXu +cXu +cXu aBK aCL -ayt +cXu aEI aFK aGw @@ -84043,9 +77672,9 @@ agF auP avU anH -axC -axC -axC +geZ +geZ +geZ aAC aBL geZ @@ -84068,7 +77697,7 @@ aSa aUg sKe aVU -aWE +lxu aXj ajG aOb @@ -84298,7 +77927,7 @@ arO ajc agF auQ -avV +ccy awP awQ ayu @@ -84324,7 +77953,7 @@ aSb sJS aBn aDf -aVV +aWE aVQ aXg ajG @@ -84558,12 +78187,12 @@ auR avW awQ axD -ayv -ayv +aDD +gYv aAE aBN -ayv -ayv +gYv +aDD aEK awQ aGy @@ -84846,7 +78475,7 @@ aOg aGC nhL aPA -aJx +aQI aQD aQI aHi @@ -85329,11 +78958,11 @@ auT avY awQ axG -axG +jJn bxJ -aAH +aDD aBQ -azC +aDD aDF aEN awQ @@ -85588,7 +79217,7 @@ awQ awQ awQ sDl -aAH +aDD bxK awQ awQ @@ -85845,7 +79474,7 @@ sDl axH ayz azD -aAH +aDD aBQ aVF aDG @@ -86616,8 +80245,8 @@ awQ axJ ayB aPU -aAH -aBS +aDD +aDD aVH ayz aEQ @@ -87160,7 +80789,7 @@ ajN baA bbq bbq -bbq +qOl bdV aUM aVf @@ -87913,7 +81542,7 @@ aIL aJR aLa aMp -aNt +iQs aOi aPe aQg @@ -89160,7 +82789,7 @@ aba abm abB acg -swJ +swK adO aez afq @@ -89179,7 +82808,7 @@ apS ara asd ati -asi +xZz asg asg asg @@ -89413,8 +83042,8 @@ aak aar aaD aaQ -acX -abo +swK +swy abC ach acY @@ -89437,22 +83066,22 @@ arb ase hpr asg -asg -asg +hRi +hRi bxG -asg -avi -awn -axP -asg -avi -aAR -asg +hRi +qKS +apV +aoP +hRi +qKS +huj +hRi awT -aAR -avi +huj +qKS bxL -asg +hRi aLf aMt arb @@ -89467,7 +83096,7 @@ aVp aUx aWP uuU -aYc +ugK iey byo byo @@ -89692,8 +83321,8 @@ aoO apU arc asf -asf -asf +nmv +nmv avf awk awU @@ -89701,14 +83330,14 @@ axO ayJ azJ aAO -asf +nmv ayJ aDO aEW awU aGN aHS -asf +nmv aJW ygE aMu @@ -89724,8 +83353,8 @@ aUy aUy aWQ tWh -aYc -ucu +ugK +iey sKB baI bby @@ -89926,7 +83555,7 @@ aaa aal aat aaF -aaR +wep abd abp abE @@ -89943,23 +83572,23 @@ ajt akw alp qdD -anb +ndg anS aoP apV uxJ asg -asg +hRi auc avg awl awV -axP -avi +aoP +qKS azK aAP aBZ -avi +qKS aDP aEX aFO @@ -89967,7 +83596,7 @@ aGO aHT gPY dQC -asg +hRi axP ard aOo @@ -89992,7 +83621,7 @@ bed beI bff bfL -aYc +ugK bgU bhI biw @@ -90183,9 +83812,9 @@ aaa aal aau aaG -aaR +phb abc -ggq +qSs abD aci adb @@ -90199,14 +83828,14 @@ aiB aju akx alq -amj +anc anc anT aoQ apW are ash -ash +nfH aud avh awm @@ -90214,17 +83843,17 @@ awW axQ ayK awW -aAQ -ash +wBp +nfH ayK awW -ash +nfH aFP aGP aud -ash +nfH ayK -ash +nfH aAQ aNz aOp @@ -90252,7 +83881,7 @@ bfK ugK bgU bhH -bix +tSA bgU aaa aaa @@ -90441,7 +84070,7 @@ aak aav aaH aaQ -oKz +swK swy abF ack @@ -90465,19 +84094,19 @@ arf asi bvV asg -avi -awn -asg -axP -ayL -asg -aAR +qKS +apV +hRi +aoP +vPL +hRi +huj bxL -avi -asg -asg -asg -asg +qKS +hRi +hRi +hRi +hRi asg asg ayL @@ -90495,7 +84124,7 @@ aVr aUz aWT fgG -aYc +xjj aYW bys byo @@ -90508,7 +84137,7 @@ byo bfK ugK bgV -bhG +jkQ biw bgU aaa @@ -90721,7 +84350,7 @@ ayP ara asj atj -aue +xxx avj awo aue @@ -90748,7 +84377,7 @@ aCM eUz aTD aTD -aVs +lEr aTD aTD aTD @@ -91240,7 +84869,7 @@ avl awq awY axS -awX +heH aue aAR aCc @@ -91288,10 +84917,10 @@ aae aaa aaa aaa -aaa -aaa -aaa -aaa +aac +aac +aac +aac aaa aaa aaa @@ -91547,9 +85176,9 @@ bjc bfP bfP aad -aaa -aaa -aaa +fji +aac +aac aaa aaa aaa @@ -91804,8 +85433,8 @@ bgY bgm bfP aad -aac -aac +jpG +aKo aad aad aaa @@ -92061,7 +85690,7 @@ bgZ bhM sKZ aad -aac +cfq aad aad aad @@ -92318,7 +85947,7 @@ exb bhN bfP bfP -aad +hfm aad aad aad @@ -92574,8 +86203,8 @@ jdD bhb bhO bgd -bfP -aad +uac +snF aad aad aad @@ -92831,8 +86460,8 @@ bhP bjq bjD bgg -bfP -aad +xoR +snF aad aad aad @@ -93088,8 +86717,8 @@ biY bjr bjE bjR -bfP -aad +uTb +snF aad aad aad @@ -93345,8 +86974,8 @@ biZ bjs bjF bjS -bfP -aad +udG +snF aad aad aad @@ -93602,8 +87231,8 @@ bja bjt bjG bjT -bfP -aad +gia +snF aad aad aad @@ -93815,11 +87444,11 @@ sEJ aBa aBa anl -aDZ +tLt mXV aFY bsz -aDZ +tLt aIY fff sJa @@ -93858,9 +87487,9 @@ xFw bjb bju bjH -bfP -sKZ -aad +dxC +bRW +mrI aad aad aad @@ -94061,7 +87690,7 @@ apb nwY sOF sOG -atq +sEK oyD oyD sOK @@ -94116,7 +87745,7 @@ bjc bjv bjc bfP -aad +bfP aad aad aad @@ -95588,7 +89217,7 @@ aad adn aee aeU -afH +aeU agA aho aif @@ -96597,7 +90226,7 @@ aaa aaa aaa aaa -pZU +sdX aaa aaa aaa @@ -96609,7 +90238,7 @@ aaa aaa aaa aaa -pZU +sdX aaa aaa aaa @@ -96641,7 +90270,7 @@ xWb sEQ bRf aRz -atq +sEK aRz aRz bmh @@ -96854,7 +90483,7 @@ aaa aaa aaa aaa -sdX +aLL aaa abL abL @@ -96866,7 +90495,7 @@ abL abL abL aaa -sdX +pZU aaa aaa aaa @@ -97111,7 +90740,7 @@ jFP aaa aaa aaa -pZU +aLL sdX abM bbQ @@ -97160,9 +90789,9 @@ bsS sHC sId bsM -bsS +lwu sIR -bsS +lwu bsY axW aae @@ -97368,13 +90997,13 @@ jFP aaa aaa aaa -pZU +aLL aaa acu acu acu acu -aef +wle acu acu acu @@ -97625,19 +91254,19 @@ jFP aaa aaa aaa -pZU +sdX aaa aaa aaa aaa aaa -adt +aef aaa aaa aaa aaa aaa -pZU +sdX aaa aaa aaa @@ -97882,19 +91511,19 @@ jFP aaa aaa aaa -sdX -sdX -pZU -pZU -pZU -sdX bcJ -sdX +aaa +abL +abL +abL +abL +adt +abL +abL +abL +abL +aaa pZU -pZU -pZU -sdX -sdX aaa aaa aaa @@ -98139,19 +91768,19 @@ jFP aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aLL +sdX +abM +bbQ +bbQ +bbQ +adM +bbV +bbV +bbV +bcD +sdX +pZU aaa aaa aaa @@ -98206,7 +91835,7 @@ bdI bdM bft ajP -mhf +kWQ kCG ybw vGQ @@ -98396,19 +92025,19 @@ jFP aaa aaa aaa +pZU aaa +acu +acu +acu +acu +aef +acu +acu +acu +acu aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +pZU aaa aaa aaa @@ -98653,19 +92282,19 @@ jFP aaa aaa aaa +pZU aaa aaa aaa aaa aaa +adt aaa aaa aaa aaa aaa -aaa -aaa -aaa +pZU aaa aaa aaa @@ -98910,19 +92539,19 @@ jFP aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +pZU +sdX +pZU +pZU +pZU +sdX +uBW +sdX +pZU +pZU +pZU +sdX +pZU aaa aaa aaa @@ -99422,23 +93051,23 @@ jFP jFP jFP jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa jFP jFP jFP @@ -99679,23 +93308,23 @@ jFP jFP jFP jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP -jFP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa jFP jFP jFP diff --git a/code/__DEFINES/_flags/_flags.dm b/code/__DEFINES/_flags/_flags.dm index c1d997eaa0..895f37a7a9 100644 --- a/code/__DEFINES/_flags/_flags.dm +++ b/code/__DEFINES/_flags/_flags.dm @@ -37,6 +37,8 @@ GLOBAL_LIST_INIT(bitflags, list( #define OVERLAY_QUEUED_1 (1<<8) ///Item has priority to check when entering or leaving. #define ON_BORDER_1 (1<<9) +///Whether or not this atom shows screentips when hovered over +#define NO_SCREENTIPS_1 (1<<10) ///Prevent clicking things below it on the same turf eg. doors/ fulltile windows. #define PREVENT_CLICK_UNDER_1 (1<<11) #define HOLOGRAM_1 (1<<12) diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm index b485a5fa29..c58e111f26 100644 --- a/code/__DEFINES/admin.dm +++ b/code/__DEFINES/admin.dm @@ -57,6 +57,10 @@ #define ADMIN_SET_SD_CODE "(SETCODE)" #define ADMIN_FULLMONTY_NONAME(user) "[ADMIN_QUE(user)] [ADMIN_PP(user)] [ADMIN_VV(user)] [ADMIN_SM(user)] [ADMIN_FLW(user)] [ADMIN_TP(user)] [ADMIN_INDIVIDUALLOG(user)] [ADMIN_SMITE(user)]" #define ADMIN_FULLMONTY(user) "[key_name_admin(user)] [ADMIN_FULLMONTY_NONAME(user)]" +//ambition start +#define ADMIN_TPMONTY_NONAME(user) "[ADMIN_QUE(user)] [ADMIN_JMP(user)] [ADMIN_FLW(user)]" +#define ADMIN_TPMONTY(user) "[key_name_admin(user)] [ADMIN_TPMONTY_NONAME(user)]" +//ambition end #define ADMIN_JMP(src) "(JMP)" #define COORD(src) "[src ? "([src.x],[src.y],[src.z])" : "nonexistent location"]" #define AREACOORD(src) "[src ? "[get_area_name(src, TRUE)] ([src.x], [src.y], [src.z])" : "nonexistent location"]" diff --git a/code/__DEFINES/antagonists.dm b/code/__DEFINES/antagonists.dm index 20b4f03d71..00751f2cab 100644 --- a/code/__DEFINES/antagonists.dm +++ b/code/__DEFINES/antagonists.dm @@ -123,3 +123,9 @@ GLOBAL_LIST_EMPTY(living_heart_cache) //A list of all living hearts in existance /// The dimensions of the antagonist preview icon. Will be scaled to this size. #define ANTAGONIST_PREVIEW_ICON_SIZE 96 + +//Objectives-Ambitions Panel +#define REQUEST_NEW_OBJECTIVE "new_objective" +#define REQUEST_DEL_OBJECTIVE "del_objective" +#define REQUEST_WIN_OBJECTIVE "win_objective" +#define REQUEST_LOSE_OBJECTIVE "lose_objective" diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index 2ead5ea068..35de475d35 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -116,6 +116,7 @@ #define GLOVES_MAX_TEMP_PROTECT 1500 //For some gloves #define SHOES_MIN_TEMP_PROTECT 2.0 //For gloves #define SHOES_MAX_TEMP_PROTECT 1500 //For gloves +#define COAT_MAX_TEMP_PROTECT 330 //For winter coats (if they can stop you from getting cold why can't they do it the other way to a lesser extent) #define PRESSURE_DAMAGE_COEFFICIENT 4 //The amount of pressure damage someone takes is equal to (pressure / HAZARD_HIGH_PRESSURE)*PRESSURE_DAMAGE_COEFFICIENT, with the maximum of MAX_PRESSURE_DAMAGE #define MAX_HIGH_PRESSURE_DAMAGE 16 // CITADEL CHANGES Max to 16, low to 8. diff --git a/code/__DEFINES/cooldowns.dm b/code/__DEFINES/cooldowns.dm index 92231d3998..b783678c86 100644 --- a/code/__DEFINES/cooldowns.dm +++ b/code/__DEFINES/cooldowns.dm @@ -27,6 +27,9 @@ //INDEXES #define COOLDOWN_EMPLOYMENT_CABINET "employment cabinet" +#define COOLDOWN_AMBITION "ambition" +#define COOLDOWN_OBJECTIVES "objectives" +#define COOLDOWN_OBJ_ADMIN_PING "obj_admin_ping" //car cooldowns #define COOLDOWN_CAR_HONK "car_honk" diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm index fdded58308..dad0f49832 100644 --- a/code/__DEFINES/dcs/signals.dm +++ b/code/__DEFINES/dcs/signals.dm @@ -359,6 +359,9 @@ #define COMSIG_LIVING_RUN_BLOCK "living_do_run_block" //from base of mob/living/do_run_block(): (real_attack, atom/object, damage, attack_text, attack_type, armour_penetration, mob/attacker, def_zone) #define COMSIG_LIVING_GET_BLOCKING_ITEMS "get_blocking_items" //from base of mob/living/get_blocking_items(): (list/items) +#define COMSIG_LIVING_RESTING "living_on_resting" //from mob/living/set_resting +#define COMSIG_LIVING_STOPPED_PULLING "living_on_stop_pulling" //from mob/living/stop_pulling + #define COMSIG_LIVING_ACTIVE_BLOCK_START "active_block_start" //from base of mob/living/keybind_start_active_blocking(): (obj/item/blocking_item, list/backup_items) #define COMPONENT_PREVENT_BLOCK_START 1 #define COMSIG_LIVING_ACTIVE_PARRY_START "active_parry_start" //from base of mob/living/initiate_parry_sequence(): (parrying_method, datum/parrying_item_mob_or_art, list/backup_items, list/override) diff --git a/code/__DEFINES/inventory.dm b/code/__DEFINES/inventory.dm index 7b727fcc5a..6c83a46514 100644 --- a/code/__DEFINES/inventory.dm +++ b/code/__DEFINES/inventory.dm @@ -6,87 +6,52 @@ #define STORAGE_VIEW_DEPTH 2 //ITEM INVENTORY SLOT BITMASKS -#define ITEM_SLOT_OCLOTHING (1<<0) -#define ITEM_SLOT_ICLOTHING (1<<1) -#define ITEM_SLOT_GLOVES (1<<2) -#define ITEM_SLOT_EYES (1<<3) -#define ITEM_SLOT_EARS (1<<4) -#define ITEM_SLOT_MASK (1<<5) -#define ITEM_SLOT_HEAD (1<<6) -#define ITEM_SLOT_FEET (1<<7) -#define ITEM_SLOT_ID (1<<8) -#define ITEM_SLOT_BELT (1<<9) -#define ITEM_SLOT_BACK (1<<10) -#define ITEM_SLOT_POCKET (1<<11) // this is to allow items with a w_class of WEIGHT_CLASS_NORMAL or WEIGHT_CLASS_BULKY to fit in pockets. -#define ITEM_SLOT_DENYPOCKET (1<<12) // this is to deny items with a w_class of WEIGHT_CLASS_SMALL or WEIGHT_CLASS_TINY to fit in pockets. -#define ITEM_SLOT_NECK (1<<13) -#define ITEM_SLOT_HANDS (1<<14) -#define ITEM_SLOT_BACKPACK (1<<15) -#define ITEM_SLOT_SUITSTORE (1<<16) +/// Suit slot (armors, costumes, space suits, etc.) +#define ITEM_SLOT_OCLOTHING (1<<0) +/// Jumpsuit slot +#define ITEM_SLOT_ICLOTHING (1<<1) +/// Glove slot +#define ITEM_SLOT_GLOVES (1<<2) +/// Glasses slot +#define ITEM_SLOT_EYES (1<<3) +/// Ear slot (radios, earmuffs) +#define ITEM_SLOT_EARS (1<<4) +/// Mask slot +#define ITEM_SLOT_MASK (1<<5) +/// Head slot (helmets, hats, etc.) +#define ITEM_SLOT_HEAD (1<<6) +/// Shoe slot +#define ITEM_SLOT_FEET (1<<7) +/// ID slot +#define ITEM_SLOT_ID (1<<8) +/// Belt slot +#define ITEM_SLOT_BELT (1<<9) +/// Back slot +#define ITEM_SLOT_BACK (1<<10) +/// Dextrous simplemob "hands" (used for Drones and Dextrous Guardians) +#define ITEM_SLOT_DEX_STORAGE (1<<11) +/// Neck slot (ties, bedsheets, scarves) +#define ITEM_SLOT_NECK (1<<12) +/// A character's hand slots +#define ITEM_SLOT_HANDS (1<<13) +/// Inside of a character's backpack +#define ITEM_SLOT_BACKPACK (1<<14) +/// Suit Storage slot +#define ITEM_SLOT_SUITSTORE (1<<15) +/// Left Pocket slot +#define ITEM_SLOT_LPOCKET (1<<16) +/// Right Pocket slot +#define ITEM_SLOT_RPOCKET (1<<17) +/// Handcuff slot +#define ITEM_SLOT_HANDCUFFED (1<<18) +/// Legcuff slot (bolas, beartraps) +#define ITEM_SLOT_LEGCUFFED (1<<19) -//SLOTS -#define SLOT_BACK 1 -#define SLOT_WEAR_MASK 2 -#define SLOT_HANDCUFFED 3 -#define SLOT_HANDS 4 //wherever you provide a slot for hands you provide SLOT_HANDS - //SLOT_HANDS as a slot will pick ANY available hand -#define SLOT_BELT 5 -#define SLOT_WEAR_ID 6 -#define SLOT_EARS 7 -#define SLOT_GLASSES 8 -#define SLOT_GLOVES 9 -#define SLOT_NECK 10 -#define SLOT_HEAD 11 -#define SLOT_SHOES 12 -#define SLOT_WEAR_SUIT 13 -#define SLOT_W_UNIFORM 14 -#define SLOT_L_STORE 15 -#define SLOT_R_STORE 16 -#define SLOT_S_STORE 17 -#define SLOT_IN_BACKPACK 18 -#define SLOT_LEGCUFFED 19 -#define SLOT_GENERC_DEXTROUS_STORAGE 20 - - -#define SLOTS_AMT 20 // Keep this up to date! - -//I hate that this has to exist -/proc/slotdefine2slotbit(slotdefine) //Keep this up to date with the value of SLOT BITMASKS and SLOTS (the two define sections above) - . = 0 - switch(slotdefine) - if(SLOT_BACK) - . = ITEM_SLOT_BACK - if(SLOT_WEAR_MASK) - . = ITEM_SLOT_MASK - if(SLOT_NECK) - . = ITEM_SLOT_NECK - if(SLOT_BELT) - . = ITEM_SLOT_BELT - if(SLOT_WEAR_ID) - . = ITEM_SLOT_ID - if(SLOT_EARS) - . = ITEM_SLOT_EARS - if(SLOT_GLASSES) - . = ITEM_SLOT_EYES - if(SLOT_GLOVES) - . = ITEM_SLOT_GLOVES - if(SLOT_HEAD) - . = ITEM_SLOT_HEAD - if(SLOT_SHOES) - . = ITEM_SLOT_FEET - if(SLOT_WEAR_SUIT) - . = ITEM_SLOT_OCLOTHING - if(SLOT_W_UNIFORM) - . = ITEM_SLOT_ICLOTHING - if(SLOT_L_STORE, SLOT_R_STORE) - . = ITEM_SLOT_POCKET - if(SLOT_HANDS) - . = ITEM_SLOT_HANDS - if(SLOT_IN_BACKPACK) - . = ITEM_SLOT_BACKPACK - if(SLOT_S_STORE) - . = ITEM_SLOT_SUITSTORE +/// Total amount of slots +#define SLOTS_AMT 20 // Keep this up to date! +//SLOT GROUP HELPERS +#define ITEM_SLOT_POCKETS (ITEM_SLOT_LPOCKET|ITEM_SLOT_RPOCKET) //Bit flags for the flags_inv variable, which determine when a piece of clothing hides another. IE a helmet hiding glasses. #define HIDEGLOVES (1<<0) @@ -245,4 +210,4 @@ GLOBAL_LIST_INIT(security_wintercoat_allowed, typecacheof(list( #define GET_INTERNAL_SLOTS(C) list(C.head, C.wear_mask) //Slots that won't trigger humans' update_genitals() on equip(). -GLOBAL_LIST_INIT(no_genitals_update_slots, list(SLOT_L_STORE, SLOT_R_STORE, SLOT_S_STORE, SLOT_IN_BACKPACK, SLOT_LEGCUFFED, SLOT_HANDCUFFED, SLOT_HANDS, SLOT_GENERC_DEXTROUS_STORAGE)) +GLOBAL_LIST_INIT(no_genitals_update_slots, list(ITEM_SLOT_LPOCKET, ITEM_SLOT_RPOCKET, ITEM_SLOT_SUITSTORE, ITEM_SLOT_BACKPACK, ITEM_SLOT_LEGCUFFED, ITEM_SLOT_HANDCUFFED, ITEM_SLOT_HANDS, ITEM_SLOT_DEX_STORAGE)) diff --git a/code/__DEFINES/maths.dm b/code/__DEFINES/maths.dm index f56cd76a71..60d02c1e49 100644 --- a/code/__DEFINES/maths.dm +++ b/code/__DEFINES/maths.dm @@ -105,6 +105,9 @@ #define TORADIANS(degrees) ((degrees) * 0.0174532925) +/// Gets shift x that would be required the bitflag (1< maxnodes) - return 0 - maxnodedepth = maxnodes //no need to consider path longer than maxnodes - var/datum/Heap/open = new /datum/Heap(/proc/HeapPathWeightCompare) //the open list - var/list/openc = new() //open list for node check - var/list/path = null //the returned path, if any - //initialization - var/datum/PathNode/cur = new /datum/PathNode(start,null,0,call(start,dist)(end),0,15,1)//current processed turf - open.Insert(cur) - openc[start] = cur - //then run the main loop - while(!open.IsEmpty() && !path) - cur = open.Pop() //get the lower f turf in the open list - //get the lower f node on the open list - //if we only want to get near the target, check if we're close enough - var/closeenough - if(mintargetdist) - closeenough = call(cur.source,dist)(end) <= mintargetdist - - - //found the target turf (or close enough), let's create the path to it - if(cur.source == end || closeenough) - path = new() - path.Add(cur.source) - while(cur.prevNode) - cur = cur.prevNode - path.Add(cur.source) - break - //get adjacents turfs using the adjacent proc, checking for access with id - if((!maxnodedepth)||(cur.nt <= maxnodedepth))//if too many steps, don't process that path - for(var/i = 0 to 3) - var/f= 1<>1) //getting reverse direction throught swapping even and odd bits.((f & 01010101)<<1)|((f & 10101010)>>1) - var/newg = cur.g + call(cur.source,dist)(T) - if(CN) - //is already in open list, check if it's a better way from the current turf - CN.bf &= 15^r //we have no closed, so just cut off exceed dir.00001111 ^ reverse_dir.We don't need to expand to checked turf. - if((newg < CN.g) ) - if(call(cur.source,adjacent)(caller, T, id, simulated_only)) - CN.setp(cur,newg,CN.h,cur.nt+1) - open.ReSort(CN)//reorder the changed element in the list - else - //is not already in open list, so add it - if(call(cur.source,adjacent)(caller, T, id, simulated_only)) - CN = new(T,cur,newg,call(T,dist)(end),cur.nt+1,15^r) - open.Insert(CN) - openc[T] = CN - cur.bf = 0 - CHECK_TICK - //reverse the path to get it from start to finish - if(path) - for(var/i = 1 to round(0.5*path.len)) - path.Swap(i,path.len-i+1) - openc = null - //cleaning after us - return path - -//Returns adjacent turfs in cardinal directions that are reachable -//simulated_only controls whether only simulated turfs are considered or not - -/turf/proc/reachableAdjacentTurfs(caller, ID, simulated_only) - var/list/L = new() - var/turf/T - var/static/space_type_cache = typecacheof(/turf/open/space) - - for(var/k in 1 to GLOB.cardinals.len) - T = get_step(src,GLOB.cardinals[k]) - if(!T || (simulated_only && space_type_cache[T.type])) - continue - if(!T.density && !LinkBlockedWithAccess(T,caller, ID)) - L.Add(T) - return L - -/turf/proc/reachableTurftest(caller, var/turf/T, ID, simulated_only) - if(T && !T.density && !(simulated_only && SSpathfinder.space_type_cache[T.type]) && !LinkBlockedWithAccess(T,caller, ID)) - return TRUE - -//Returns adjacent turfs in cardinal directions that are reachable via atmos -/turf/proc/reachableAdjacentAtmosTurfs() - return atmos_adjacent_turfs - -/turf/proc/LinkBlockedWithAccess(turf/T, caller, ID) - var/adir = get_dir(src, T) - var/rdir = ((adir & MASK_ODD)<<1)|((adir & MASK_EVEN)>>1) - for(var/obj/structure/window/W in src) - if(!W.CanAStarPass(ID, adir)) - return 1 - for(var/obj/machinery/door/window/W in src) - if(!W.CanAStarPass(ID, adir)) - return 1 - for(var/obj/O in T) - if(!O.CanAStarPass(ID, rdir, caller)) - return 1 - - return 0 diff --git a/code/__HELPERS/_lists.dm b/code/__HELPERS/_lists.dm index 2a50ab3a39..c4252ad542 100644 --- a/code/__HELPERS/_lists.dm +++ b/code/__HELPERS/_lists.dm @@ -14,6 +14,9 @@ ///Like LAZYCOPY - copies an input list if the list has entries, If it doesn't the assigned list is nulled #define LAZYLISTDUPLICATE(L) (L ? L.Copy() : null ) #define LAZYREMOVE(L, I) if(L) { L -= I; if(!length(L)) { L = null; } } +//ambition start +#define LAZYCUT(L, S, E) if((length(L) >= S) && (E == 0 || length(L) >= (E - 1))) { L.Cut(S, E); if(!length(L)) { L = null; } } +//ambition end #define LAZYADD(L, I) if(!L) { L = list(); } L += I; #define LAZYOR(L, I) if(!L) { L = list(); } L |= I; #define LAZYFIND(L, V) (L ? L.Find(V) : 0) diff --git a/code/__HELPERS/cmp.dm b/code/__HELPERS/cmp.dm index 4ee622961a..2fbf087288 100644 --- a/code/__HELPERS/cmp.dm +++ b/code/__HELPERS/cmp.dm @@ -140,3 +140,6 @@ GLOBAL_VAR_INIT(cmp_field, "name") /proc/cmp_typepaths_asc(A, B) return sorttext("[B]","[A]") + +/proc/cmp_playtime(list/A, list/B) + return A["playtime"] - B["playtime"] diff --git a/code/__HELPERS/custom_holoforms.dm b/code/__HELPERS/custom_holoforms.dm index 2733a97e14..8aa8d279ec 100644 --- a/code/__HELPERS/custom_holoforms.dm +++ b/code/__HELPERS/custom_holoforms.dm @@ -18,7 +18,7 @@ if(length(inhand_equipment)) for(var/path in inhand_equipment) var/obj/item/I = new path - mannequin.equip_to_slot_if_possible(I, SLOT_HANDS, TRUE, TRUE, TRUE, TRUE) + mannequin.equip_to_slot_if_possible(I, ITEM_SLOT_HANDS, TRUE, TRUE, TRUE, TRUE) var/icon/combined = new diff --git a/code/__HELPERS/heap.dm b/code/__HELPERS/heap.dm index 916e7fc05c..eabcb0e0dc 100644 --- a/code/__HELPERS/heap.dm +++ b/code/__HELPERS/heap.dm @@ -1,39 +1,45 @@ - ////////////////////// -//datum/Heap object +//datum/heap object ////////////////////// -/datum/Heap +/datum/heap var/list/L var/cmp -/datum/Heap/New(compare) +/datum/heap/New(compare) L = new() cmp = compare -/datum/Heap/proc/IsEmpty() - return !L.len +/datum/heap/Destroy(force, ...) + for(var/i in L) // because this is before the list helpers are loaded + qdel(i) + L = null + return ..() -//Insert and place at its position a new node in the heap -/datum/Heap/proc/Insert(atom/A) +/datum/heap/proc/is_empty() + return !length(L) + +//insert and place at its position a new node in the heap +/datum/heap/proc/insert(atom/A) L.Add(A) - Swim(L.len) + swim(length(L)) //removes and returns the first element of the heap //(i.e the max or the min dependant on the comparison function) -/datum/Heap/proc/Pop() - if(!L.len) +/datum/heap/proc/pop() + if(!length(L)) return 0 . = L[1] - L[1] = L[L.len] - L.Cut(L.len) - if(L.len) - Sink(1) + L[1] = L[length(L)] + L.Cut(length(L)) + if(length(L)) + sink(1) + //Get a node up to its right position in the heap -/datum/Heap/proc/Swim(var/index) +/datum/heap/proc/swim(index) var/parent = round(index * 0.5) while(parent > 0 && (call(cmp)(L[index],L[parent]) > 0)) @@ -42,21 +48,21 @@ parent = round(index * 0.5) //Get a node down to its right position in the heap -/datum/Heap/proc/Sink(var/index) - var/g_child = GetGreaterChild(index) +/datum/heap/proc/sink(index) + var/g_child = get_greater_child(index) while(g_child > 0 && (call(cmp)(L[index],L[g_child]) < 0)) L.Swap(index,g_child) index = g_child - g_child = GetGreaterChild(index) + g_child = get_greater_child(index) //Returns the greater (relative to the comparison proc) of a node children //or 0 if there's no child -/datum/Heap/proc/GetGreaterChild(var/index) - if(index * 2 > L.len) +/datum/heap/proc/get_greater_child(index) + if(index * 2 > length(L)) return 0 - if(index * 2 + 1 > L.len) + if(index * 2 + 1 > length(L)) return index * 2 if(call(cmp)(L[index * 2],L[index * 2 + 1]) < 0) @@ -65,12 +71,11 @@ return index * 2 //Replaces a given node so it verify the heap condition -/datum/Heap/proc/ReSort(atom/A) +/datum/heap/proc/resort(atom/A) var/index = L.Find(A) - Swim(index) - Sink(index) + swim(index) + sink(index) -/datum/Heap/proc/List() +/datum/heap/proc/List() . = L.Copy() - diff --git a/code/__HELPERS/path.dm b/code/__HELPERS/path.dm new file mode 100644 index 0000000000..7ae72c3fa2 --- /dev/null +++ b/code/__HELPERS/path.dm @@ -0,0 +1,359 @@ +/** + * This file contains the stuff you need for using JPS (Jump Point Search) pathing, an alternative to A* that skips + * over large numbers of uninteresting tiles resulting in much quicker pathfinding solutions. Mind that diagonals + * cost the same as cardinal moves currently, so paths may look a bit strange, but should still be optimal. + */ + +/** + * This is the proc you use whenever you want to have pathfinding more complex than "try stepping towards the thing". + * If no path was found, returns an empty list, which is important for bots like medibots who expect an empty list rather than nothing. + * + * Arguments: + * * caller: The movable atom that's trying to find the path + * * end: What we're trying to path to. It doesn't matter if this is a turf or some other atom, we're gonna just path to the turf it's on anyway + * * max_distance: The maximum number of steps we can take in a given path to search (default: 30, 0 = infinite) + * * mintargetdistance: Minimum distance to the target before path returns, could be used to get near a target, but not right to it - for an AI mob with a gun, for example. + * * id: An ID card representing what access we have and what doors we can open. Its location relative to the pathing atom is irrelevant + * * simulated_only: Whether we consider turfs without atmos simulation (AKA do we want to ignore space) + * * exclude: If we want to avoid a specific turf, like if we're a mulebot who already got blocked by some turf + * * skip_first: Whether or not to delete the first item in the path. This would be done because the first item is the starting tile, which can break movement for some creatures. + */ +/proc/get_path_to(caller, end, max_distance = 30, mintargetdist, id=null, simulated_only = TRUE, turf/exclude, skip_first=TRUE) + if(!caller || !get_turf(end)) + return + + var/l = SSpathfinder.mobs.getfree(caller) + while(!l) + stoplag(3) + l = SSpathfinder.mobs.getfree(caller) + + var/list/path + var/datum/pathfind/pathfind_datum = new(caller, end, id, max_distance, mintargetdist, simulated_only, exclude) + path = pathfind_datum.search() + qdel(pathfind_datum) + + SSpathfinder.mobs.found(l) + if(!path) + path = list() + if(length(path) > 0 && skip_first) + path.Cut(1,2) + return path + +/** + * A helper macro to see if it's possible to step from the first turf into the second one, minding things like door access and directional windows. + * Note that this can only be used inside the [datum/pathfind][pathfind datum] since it uses variables from said datum. + * If you really want to optimize things, optimize this, cuz this gets called a lot. + */ +#define CAN_STEP(cur_turf, next) (next && !next.density && cur_turf.Adjacent(next) && !(simulated_only && SSpathfinder.space_type_cache[next.type]) && !cur_turf.LinkBlockedWithAccess(next,caller, id) && (next != avoid)) +/// Another helper macro for JPS, for telling when a node has forced neighbors that need expanding +#define STEP_NOT_HERE_BUT_THERE(cur_turf, dirA, dirB) ((!CAN_STEP(cur_turf, get_step(cur_turf, dirA)) && CAN_STEP(cur_turf, get_step(cur_turf, dirB)))) + +/// The JPS Node datum represents a turf that we find interesting enough to add to the open list and possibly search for new tiles from +/datum/jps_node + /// The turf associated with this node + var/turf/tile + /// The node we just came from + var/datum/jps_node/previous_node + /// The A* node weight (f_value = number_of_tiles + heuristic) + var/f_value + /// The A* node heuristic (a rough estimate of how far we are from the goal) + var/heuristic + /// How many steps it's taken to get here from the start (currently pulling double duty as steps taken & cost to get here, since all moves incl diagonals cost 1 rn) + var/number_tiles + /// How many steps it took to get here from the last node + var/jumps + /// Nodes store the endgoal so they can process their heuristic without a reference to the pathfind datum + var/turf/node_goal + +/datum/jps_node/New(turf/our_tile, datum/jps_node/incoming_previous_node, jumps_taken, turf/incoming_goal) + tile = our_tile + jumps = jumps_taken + if(incoming_goal) // if we have the goal argument, this must be the first/starting node + node_goal = incoming_goal + else if(incoming_previous_node) // if we have the parent, this is from a direct lateral/diagonal scan, we can fill it all out now + previous_node = incoming_previous_node + number_tiles = previous_node.number_tiles + jumps + node_goal = previous_node.node_goal + heuristic = get_dist(tile, node_goal) + f_value = number_tiles + heuristic + // otherwise, no parent node means this is from a subscan lateral scan, so we just need the tile for now until we call [datum/jps/proc/update_parent] on it + +/datum/jps_node/Destroy(force, ...) + previous_node = null + return ..() + +/datum/jps_node/proc/update_parent(datum/jps_node/new_parent) + previous_node = new_parent + node_goal = previous_node.node_goal + jumps = get_dist(tile, previous_node.tile) + number_tiles = previous_node.number_tiles + jumps + heuristic = get_dist(tile, node_goal) + f_value = number_tiles + heuristic + +/// TODO: Macro this to reduce proc overhead +/proc/HeapPathWeightCompare(datum/jps_node/a, datum/jps_node/b) + return b.f_value - a.f_value + +/// The datum used to handle the JPS pathfinding, completely self-contained +/datum/pathfind + /// The thing that we're actually trying to path for + var/atom/movable/caller + /// The turf where we started at + var/turf/start + /// The turf we're trying to path to (note that this won't track a moving target) + var/turf/end + /// The open list/stack we pop nodes out from (TODO: make this a normal list and macro-ize the heap operations to reduce proc overhead) + var/datum/heap/open + ///An assoc list that serves as the closed list & tracks what turfs came from where. Key is the turf, and the value is what turf it came from + var/list/sources + /// The list we compile at the end if successful to pass back + var/list/path + + // general pathfinding vars/args + /// An ID card representing what access we have and what doors we can open. Its location relative to the pathing atom is irrelevant + var/obj/item/card/id/id + /// How far away we have to get to the end target before we can call it quits + var/mintargetdist = 0 + /// I don't know what this does vs , but they limit how far we can search before giving up on a path + var/max_distance = 30 + /// Space is big and empty, if this is TRUE then we ignore pathing through unsimulated tiles + var/simulated_only + /// A specific turf we're avoiding, like if a mulebot is being blocked by someone t-posing in a doorway we're trying to get through + var/turf/avoid + +/datum/pathfind/New(atom/movable/caller, atom/goal, id, max_distance, mintargetdist, simulated_only, avoid) + src.caller = caller + end = get_turf(goal) + open = new /datum/heap(/proc/HeapPathWeightCompare) + sources = new() + src.id = id + src.max_distance = max_distance + src.mintargetdist = mintargetdist + src.simulated_only = simulated_only + src.avoid = avoid + +/** + * search() is the proc you call to kick off and handle the actual pathfinding, and kills the pathfind datum instance when it's done. + * + * If a valid path was found, it's returned as a list. If invalid or cross-z-level params are entered, or if there's no valid path found, we + * return null, which [/proc/get_path_to] translates to an empty list (notable for simple bots, who need empty lists) + */ +/datum/pathfind/proc/search() + start = get_turf(caller) + if(!start || !end) + stack_trace("Invalid A* start or destination") + return + if(start.z != end.z || start == end ) //no pathfinding between z levels + return + if(max_distance && (max_distance < get_dist(start, end))) //if start turf is farther than max_distance from end turf, no need to do anything + return + + //initialization + var/datum/jps_node/current_processed_node = new (start, -1, 0, end) + open.insert(current_processed_node) + sources[start] = start // i'm sure this is fine + + //then run the main loop + while(!open.is_empty() && !path) + if(!caller) + return + current_processed_node = open.pop() //get the lower f_value turf in the open list + if(max_distance && (current_processed_node.number_tiles > max_distance))//if too many steps, don't process that path + continue + + var/turf/current_turf = current_processed_node.tile + for(var/scan_direction in list(EAST, WEST, NORTH, SOUTH)) + lateral_scan_spec(current_turf, scan_direction, current_processed_node) + + for(var/scan_direction in list(NORTHEAST, SOUTHEAST, NORTHWEST, SOUTHWEST)) + diag_scan_spec(current_turf, scan_direction, current_processed_node) + + CHECK_TICK + + //we're done! reverse the path to get it from start to finish + if(path) + for(var/i = 1 to round(0.5 * length(path))) + path.Swap(i, length(path) - i + 1) + + sources = null + qdel(open) + return path + +/// Called when we've hit the goal with the node that represents the last tile, then sets the path var to that path so it can be returned by [datum/pathfind/proc/search] +/datum/pathfind/proc/unwind_path(datum/jps_node/unwind_node) + path = new() + var/turf/iter_turf = unwind_node.tile + path.Add(iter_turf) + + while(unwind_node.previous_node) + var/dir_goal = get_dir(iter_turf, unwind_node.previous_node.tile) + for(var/i = 1 to unwind_node.jumps) + iter_turf = get_step(iter_turf,dir_goal) + path.Add(iter_turf) + unwind_node = unwind_node.previous_node + +/** + * For performing lateral scans from a given starting turf. + * + * These scans are called from both the main search loop, as well as subscans for diagonal scans, and they treat finding interesting turfs slightly differently. + * If we're doing a normal lateral scan, we already have a parent node supplied, so we just create the new node and immediately insert it into the heap, ezpz. + * If we're part of a subscan, we still need for the diagonal scan to generate a parent node, so we return a node datum with just the turf and let the diag scan + * proc handle transferring the values and inserting them into the heap. + * + * Arguments: + * * original_turf: What turf did we start this scan at? + * * heading: What direction are we going in? Obviously, should be cardinal + * * parent_node: Only given for normal lateral scans, if we don't have one, we're a diagonal subscan. +*/ +/datum/pathfind/proc/lateral_scan_spec(turf/original_turf, heading, datum/jps_node/parent_node) + var/steps_taken = 0 + + var/turf/current_turf = original_turf + var/turf/lag_turf = original_turf + + while(TRUE) + if(path) + return + lag_turf = current_turf + current_turf = get_step(current_turf, heading) + steps_taken++ + if(!CAN_STEP(lag_turf, current_turf)) + return + + if(current_turf == end || (mintargetdist && (get_dist(current_turf, end) <= mintargetdist))) + var/datum/jps_node/final_node = new(current_turf, parent_node, steps_taken) + sources[current_turf] = original_turf + if(parent_node) // if this is a direct lateral scan we can wrap up, if it's a subscan from a diag, we need to let the diag make their node first, then finish + unwind_path(final_node) + return final_node + else if(sources[current_turf]) // already visited, essentially in the closed list + return + else + sources[current_turf] = original_turf + + if(parent_node && parent_node.number_tiles + steps_taken > max_distance) + return + + var/interesting = FALSE // have we found a forced neighbor that would make us add this turf to the open list? + + switch(heading) + if(NORTH) + if(STEP_NOT_HERE_BUT_THERE(current_turf, WEST, NORTHWEST) || STEP_NOT_HERE_BUT_THERE(current_turf, EAST, NORTHEAST)) + interesting = TRUE + if(SOUTH) + if(STEP_NOT_HERE_BUT_THERE(current_turf, WEST, SOUTHWEST) || STEP_NOT_HERE_BUT_THERE(current_turf, EAST, SOUTHEAST)) + interesting = TRUE + if(EAST) + if(STEP_NOT_HERE_BUT_THERE(current_turf, NORTH, NORTHEAST) || STEP_NOT_HERE_BUT_THERE(current_turf, SOUTH, SOUTHEAST)) + interesting = TRUE + if(WEST) + if(STEP_NOT_HERE_BUT_THERE(current_turf, NORTH, NORTHWEST) || STEP_NOT_HERE_BUT_THERE(current_turf, SOUTH, SOUTHWEST)) + interesting = TRUE + + if(interesting) + var/datum/jps_node/newnode = new(current_turf, parent_node, steps_taken) + if(parent_node) // if we're a diagonal subscan, we'll handle adding ourselves to the heap in the diag + open.insert(newnode) + return newnode + +/** + * For performing diagonal scans from a given starting turf. + * + * Unlike lateral scans, these only are called from the main search loop, so we don't need to worry about returning anything, + * though we do need to handle the return values of our lateral subscans of course. + * + * Arguments: + * * original_turf: What turf did we start this scan at? + * * heading: What direction are we going in? Obviously, should be diagonal + * * parent_node: We should always have a parent node for diagonals +*/ +/datum/pathfind/proc/diag_scan_spec(turf/original_turf, heading, datum/jps_node/parent_node) + var/steps_taken = 0 + var/turf/current_turf = original_turf + var/turf/lag_turf = original_turf + + while(TRUE) + if(path) + return + lag_turf = current_turf + current_turf = get_step(current_turf, heading) + steps_taken++ + if(!CAN_STEP(lag_turf, current_turf)) + return + + if(current_turf == end || (mintargetdist && (get_dist(current_turf, end) <= mintargetdist))) + var/datum/jps_node/final_node = new(current_turf, parent_node, steps_taken) + sources[current_turf] = original_turf + unwind_path(final_node) + return + else if(sources[current_turf]) // already visited, essentially in the closed list + return + else + sources[current_turf] = original_turf + + if(parent_node.number_tiles + steps_taken > max_distance) + return + + var/interesting = FALSE // have we found a forced neighbor that would make us add this turf to the open list? + var/datum/jps_node/possible_child_node // otherwise, did one of our lateral subscans turn up something? + + switch(heading) + if(NORTHWEST) + if(STEP_NOT_HERE_BUT_THERE(current_turf, EAST, NORTHEAST) || STEP_NOT_HERE_BUT_THERE(current_turf, SOUTH, SOUTHWEST)) + interesting = TRUE + else + possible_child_node = (lateral_scan_spec(current_turf, WEST) || lateral_scan_spec(current_turf, NORTH)) + if(NORTHEAST) + if(STEP_NOT_HERE_BUT_THERE(current_turf, WEST, NORTHWEST) || STEP_NOT_HERE_BUT_THERE(current_turf, SOUTH, SOUTHEAST)) + interesting = TRUE + else + possible_child_node = (lateral_scan_spec(current_turf, EAST) || lateral_scan_spec(current_turf, NORTH)) + if(SOUTHWEST) + if(STEP_NOT_HERE_BUT_THERE(current_turf, EAST, SOUTHEAST) || STEP_NOT_HERE_BUT_THERE(current_turf, NORTH, NORTHWEST)) + interesting = TRUE + else + possible_child_node = (lateral_scan_spec(current_turf, SOUTH) || lateral_scan_spec(current_turf, WEST)) + if(SOUTHEAST) + if(STEP_NOT_HERE_BUT_THERE(current_turf, WEST, SOUTHWEST) || STEP_NOT_HERE_BUT_THERE(current_turf, NORTH, NORTHEAST)) + interesting = TRUE + else + possible_child_node = (lateral_scan_spec(current_turf, SOUTH) || lateral_scan_spec(current_turf, EAST)) + + if(interesting || possible_child_node) + var/datum/jps_node/newnode = new(current_turf, parent_node, steps_taken) + open.insert(newnode) + if(possible_child_node) + possible_child_node.update_parent(newnode) + open.insert(possible_child_node) + if(possible_child_node.tile == end || (mintargetdist && (get_dist(possible_child_node.tile, end) <= mintargetdist))) + unwind_path(possible_child_node) + return + +/** + * For seeing if we can actually move between 2 given turfs while accounting for our access and the caller's pass_flags + * + * Arguments: + * * caller: The movable, if one exists, being used for mobility checks to see what tiles it can reach + * * ID: An ID card that decides if we can gain access to doors that would otherwise block a turf + * * simulated_only: Do we only worry about turfs with simulated atmos, most notably things that aren't space? +*/ +/turf/proc/LinkBlockedWithAccess(turf/destination_turf, caller, ID) + var/actual_dir = get_dir(src, destination_turf) + + for(var/obj/structure/window/iter_window in src) + if(!iter_window.CanAStarPass(ID, actual_dir)) + return TRUE + + for(var/obj/machinery/door/window/iter_windoor in src) + if(!iter_windoor.CanAStarPass(ID, actual_dir)) + return TRUE + + var/reverse_dir = get_dir(destination_turf, src) + for(var/obj/iter_object in destination_turf) + if(!iter_object.CanAStarPass(ID, reverse_dir, caller)) + return TRUE + + return FALSE + +#undef CAN_STEP +#undef STEP_NOT_HERE_BUT_THERE diff --git a/code/__HELPERS/pronouns.dm b/code/__HELPERS/pronouns.dm index bab286bafe..bfe09ba370 100644 --- a/code/__HELPERS/pronouns.dm +++ b/code/__HELPERS/pronouns.dm @@ -203,62 +203,62 @@ /mob/living/carbon/human/p_they(capitalized, temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_their(capitalized, temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_them(capitalized, temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_have(temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_are(temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_were(temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_do(temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_s(temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() /mob/living/carbon/human/p_es(temp_gender) var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((SLOT_W_UNIFORM in obscured) && skipface) + if((ITEM_SLOT_ICLOTHING in obscured) && skipface) temp_gender = PLURAL return ..() diff --git a/code/__HELPERS/roundend.dm b/code/__HELPERS/roundend.dm index b0719bfdfa..2f7dd7a64f 100644 --- a/code/__HELPERS/roundend.dm +++ b/code/__HELPERS/roundend.dm @@ -624,6 +624,10 @@ currrent_category = A.roundend_category previous_category = A result += A.roundend_report() +//ambition start + for(var/count in 1 to LAZYLEN(A.owner.ambitions)) + result += "
Ambition #[count]: [A.owner.ambitions[count]]" +//ambition end result += "

" CHECK_TICK diff --git a/code/__HELPERS/type2type.dm b/code/__HELPERS/type2type.dm index 36de9d281b..3939fb94cc 100644 --- a/code/__HELPERS/type2type.dm +++ b/code/__HELPERS/type2type.dm @@ -412,25 +412,25 @@ /proc/slot2body_zone(slot) switch(slot) - if(SLOT_BACK, SLOT_WEAR_SUIT, SLOT_W_UNIFORM, SLOT_BELT, SLOT_WEAR_ID) + if(ITEM_SLOT_BACK, ITEM_SLOT_OCLOTHING, ITEM_SLOT_ICLOTHING, ITEM_SLOT_BELT, ITEM_SLOT_ID) return BODY_ZONE_CHEST - if(SLOT_GLOVES, SLOT_HANDS, SLOT_HANDCUFFED) + if(ITEM_SLOT_GLOVES, ITEM_SLOT_HANDS, ITEM_SLOT_HANDCUFFED) return pick(BODY_ZONE_PRECISE_L_HAND, BODY_ZONE_PRECISE_R_HAND) - if(SLOT_HEAD, SLOT_NECK, SLOT_NECK, SLOT_EARS) + if(ITEM_SLOT_HEAD, ITEM_SLOT_NECK, ITEM_SLOT_NECK, ITEM_SLOT_EARS) return BODY_ZONE_HEAD - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) return BODY_ZONE_PRECISE_MOUTH - if(SLOT_GLASSES) + if(ITEM_SLOT_EYES) return BODY_ZONE_PRECISE_EYES - if(SLOT_SHOES) + if(ITEM_SLOT_FEET) return pick(BODY_ZONE_PRECISE_R_FOOT, BODY_ZONE_PRECISE_L_FOOT) - if(SLOT_LEGCUFFED) + if(ITEM_SLOT_LEGCUFFED) return pick(BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) //adapted from http://www.tannerhelland.com/4435/convert-temperature-rgb-algorithm-code/ @@ -652,31 +652,31 @@ /proc/slot_to_string(slot) switch(slot) - if(SLOT_BACK) + if(ITEM_SLOT_BACK) return "Backpack" - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) return "Mask" - if(SLOT_HANDS) + if(ITEM_SLOT_HANDS) return "Hands" - if(SLOT_BELT) + if(ITEM_SLOT_BELT) return "Belt" - if(SLOT_EARS) + if(ITEM_SLOT_EARS) return "Ears" - if(SLOT_GLASSES) + if(ITEM_SLOT_EYES) return "Glasses" - if(SLOT_GLOVES) + if(ITEM_SLOT_GLOVES) return "Gloves" - if(SLOT_NECK) + if(ITEM_SLOT_NECK) return "Neck" - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) return "Head" - if(SLOT_SHOES) + if(ITEM_SLOT_FEET) return "Shoes" - if(SLOT_WEAR_SUIT) + if(ITEM_SLOT_OCLOTHING) return "Suit" - if(SLOT_W_UNIFORM) + if(ITEM_SLOT_ICLOTHING) return "Uniform" - if(SLOT_IN_BACKPACK) + if(ITEM_SLOT_BACKPACK) return "In backpack" /proc/tg_ui_icon_to_cit_ui(ui_style) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 1a8852a721..f931dc5e5c 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1600,7 +1600,7 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) if(!iscarbon(target)) return TRUE if(check_neck) - if(istype(target.get_item_by_slot(SLOT_NECK), /obj/item/clothing/neck/garlic_necklace)) + if(istype(target.get_item_by_slot(ITEM_SLOT_NECK), /obj/item/clothing/neck/garlic_necklace)) return FALSE if(check_blood) if(target.reagents.has_reagent(/datum/reagent/consumable/garlic)) diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm index e3675a53f5..be1d95416b 100644 --- a/code/_globalvars/bitfields.dm +++ b/code/_globalvars/bitfields.dm @@ -160,6 +160,7 @@ GLOBAL_LIST_INIT(bitfields, list( "HOLOGRAM_1" = HOLOGRAM_1, "SHOCKED_1" = SHOCKED_1, "INITIALIZED_1" = INITIALIZED_1, + "NO_SCREENTIPS_1" = NO_SCREENTIPS_1, "ADMIN_SPAWNED_1" = ADMIN_SPAWNED_1, "BLOCK_FACE_ATOM_1" = BLOCK_FACE_ATOM_1, "PREVENT_CONTENTS_EXPLOSION_1" = PREVENT_CONTENTS_EXPLOSION_1 diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index 14969e6c92..921b512d32 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -16,6 +16,8 @@ GLOBAL_LIST_EMPTY(singularities) //list of all singularities on the stati GLOBAL_LIST_EMPTY(grounding_rods) //list of all grounding rods on the station GLOBAL_LIST(chemical_reactions_list) //list of all /datum/chemical_reaction datums. Used during chemical reactions +GLOBAL_LIST(drink_reactions_list) //list of all /datum/chemical_reaction datums where the output is of type /datum/reagent/consumable for bartender PDA +GLOBAL_LIST(normalized_chemical_reactions_list) //list of all /datum/chemical_reaction datums with actual sane indexing for chemistry PDA GLOBAL_LIST(chemical_reagents_list) //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff GLOBAL_LIST_EMPTY(tech_list) //list of all /datum/tech datums indexed by id. GLOBAL_LIST_EMPTY(surgeries_list) //list of all surgeries by name, associated with their path. diff --git a/code/_onclick/hud/alien.dm b/code/_onclick/hud/alien.dm index bf7969a6ba..8a494a05b9 100644 --- a/code/_onclick/hud/alien.dm +++ b/code/_onclick/hud/alien.dm @@ -117,7 +117,7 @@ for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(inv.slot_id) inv.hud = src - inv_slots[inv.slot_id] = inv + inv_slots[TOBITSHIFT(inv.slot_id) + 1] = inv inv.update_icon() /datum/hud/alien/persistent_inventory_update() diff --git a/code/_onclick/hud/drones.dm b/code/_onclick/hud/drones.dm index 849936d4ed..a2cae89864 100644 --- a/code/_onclick/hud/drones.dm +++ b/code/_onclick/hud/drones.dm @@ -8,7 +8,7 @@ inv_box.icon_state = "suit_storage" // inv_box.icon_full = "template" inv_box.screen_loc = ui_drone_storage - inv_box.slot_id = SLOT_GENERC_DEXTROUS_STORAGE + inv_box.slot_id = ITEM_SLOT_DEX_STORAGE static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -17,13 +17,13 @@ inv_box.icon_state = "mask" // inv_box.icon_full = "template" inv_box.screen_loc = ui_drone_head - inv_box.slot_id = SLOT_HEAD + inv_box.slot_id = ITEM_SLOT_HEAD static_inventory += inv_box for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(inv.slot_id) inv.hud = src - inv_slots[inv.slot_id] = inv + inv_slots[TOBITSHIFT(inv.slot_id) + 1] = inv inv.update_icon() diff --git a/code/_onclick/hud/generic_dextrous.dm b/code/_onclick/hud/generic_dextrous.dm index 88407bb04c..1762bee1fc 100644 --- a/code/_onclick/hud/generic_dextrous.dm +++ b/code/_onclick/hud/generic_dextrous.dm @@ -60,7 +60,7 @@ for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(inv.slot_id) inv.hud = src - inv_slots[inv.slot_id] = inv + inv_slots[TOBITSHIFT(inv.slot_id) + 1] = inv inv.update_icon() /datum/hud/dextrous/persistent_inventory_update() diff --git a/code/_onclick/hud/guardian.dm b/code/_onclick/hud/guardian.dm index 7f360b48dc..2af02d8437 100644 --- a/code/_onclick/hud/guardian.dm +++ b/code/_onclick/hud/guardian.dm @@ -43,7 +43,7 @@ inv_box.icon = ui_style inv_box.icon_state = "suit_storage" inv_box.screen_loc = ui_id - inv_box.slot_id = SLOT_GENERC_DEXTROUS_STORAGE + inv_box.slot_id = ITEM_SLOT_DEX_STORAGE static_inventory += inv_box using = new /atom/movable/screen/guardian/Communicate() diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index a5fe8f4ba8..fbd62f0565 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -53,6 +53,22 @@ GLOBAL_LIST_INIT(available_ui_styles, list( var/list/hand_slots // /atom/movable/screen/inventory/hand objects, assoc list of "[held_index]" = object var/list/atom/movable/screen/plane_master/plane_masters = list() // see "appearance_flags" in the ref, assoc list of "[plane]" = object + + ///UI for screentips that appear when you mouse over things + var/atom/movable/screen/screentip/screentip_text + + /// Whether or not screentips are enabled. + /// This is updated by the preference for cheaper reads than would be + /// had with a proc call, especially on one of the hottest procs in the + /// game (MouseEntered). + var/screentips_enabled = TRUE + + /// The color to use for the screentips. + /// This is updated by the preference for cheaper reads than would be + /// had with a proc call, especially on one of the hottest procs in the + /// game (MouseEntered). + var/screentip_color + var/atom/movable/screen/movable/action_button/hide_toggle/hide_actions_toggle var/action_buttons_hidden = FALSE @@ -83,6 +99,8 @@ GLOBAL_LIST_INIT(available_ui_styles, list( plane_masters["[instance.plane]"] = instance instance.backdrop(mymob) + screentip_text = new(null, src) + static_inventory += screentip_text /datum/hud/Destroy() if(mymob.hud_used == src) @@ -117,6 +135,8 @@ GLOBAL_LIST_INIT(available_ui_styles, list( QDEL_LIST(screenoverlays) mymob = null + QDEL_NULL(screentip_text) + return ..() diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm index 4fa2dd538a..5ed20f69e6 100644 --- a/code/_onclick/hud/human.dm +++ b/code/_onclick/hud/human.dm @@ -233,7 +233,7 @@ inv_box = new /atom/movable/screen/inventory() inv_box.name = "i_clothing" inv_box.icon = ui_style - inv_box.slot_id = SLOT_W_UNIFORM + inv_box.slot_id = ITEM_SLOT_ICLOTHING inv_box.icon_state = "uniform" inv_box.screen_loc = ui_iclothing toggleable_inventory += inv_box @@ -241,7 +241,7 @@ inv_box = new /atom/movable/screen/inventory() inv_box.name = "o_clothing" inv_box.icon = ui_style - inv_box.slot_id = SLOT_WEAR_SUIT + inv_box.slot_id = ITEM_SLOT_OCLOTHING inv_box.icon_state = "suit" inv_box.screen_loc = ui_oclothing toggleable_inventory += inv_box @@ -267,7 +267,7 @@ inv_box.icon = ui_style inv_box.icon_state = "id" inv_box.screen_loc = ui_id - inv_box.slot_id = SLOT_WEAR_ID + inv_box.slot_id = ITEM_SLOT_ID static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -275,7 +275,7 @@ inv_box.icon = ui_style inv_box.icon_state = "mask" inv_box.screen_loc = ui_mask - inv_box.slot_id = SLOT_WEAR_MASK + inv_box.slot_id = ITEM_SLOT_MASK toggleable_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -283,7 +283,7 @@ inv_box.icon = ui_style inv_box.icon_state = "neck" inv_box.screen_loc = ui_neck - inv_box.slot_id = SLOT_NECK + inv_box.slot_id = ITEM_SLOT_NECK toggleable_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -291,7 +291,7 @@ inv_box.icon = ui_style inv_box.icon_state = "back" inv_box.screen_loc = ui_back - inv_box.slot_id = SLOT_BACK + inv_box.slot_id = ITEM_SLOT_BACK static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -299,7 +299,7 @@ inv_box.icon = ui_style inv_box.icon_state = "pocket" inv_box.screen_loc = ui_storage1 - inv_box.slot_id = SLOT_L_STORE + inv_box.slot_id = ITEM_SLOT_LPOCKET static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -307,7 +307,7 @@ inv_box.icon = ui_style inv_box.icon_state = "pocket" inv_box.screen_loc = ui_storage2 - inv_box.slot_id = SLOT_R_STORE + inv_box.slot_id = ITEM_SLOT_RPOCKET static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -315,7 +315,7 @@ inv_box.icon = ui_style inv_box.icon_state = "suit_storage" inv_box.screen_loc = ui_sstore1 - inv_box.slot_id = SLOT_S_STORE + inv_box.slot_id = ITEM_SLOT_SUITSTORE static_inventory += inv_box using = new /atom/movable/screen/resist() @@ -348,7 +348,7 @@ inv_box.icon = ui_style inv_box.icon_state = "gloves" inv_box.screen_loc = ui_gloves - inv_box.slot_id = SLOT_GLOVES + inv_box.slot_id = ITEM_SLOT_GLOVES toggleable_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -356,7 +356,7 @@ inv_box.icon = ui_style inv_box.icon_state = "glasses" inv_box.screen_loc = ui_glasses - inv_box.slot_id = SLOT_GLASSES + inv_box.slot_id = ITEM_SLOT_EYES toggleable_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -364,7 +364,7 @@ inv_box.icon = ui_style inv_box.icon_state = "ears" inv_box.screen_loc = ui_ears - inv_box.slot_id = SLOT_EARS + inv_box.slot_id = ITEM_SLOT_EARS toggleable_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -372,7 +372,7 @@ inv_box.icon = ui_style inv_box.icon_state = "head" inv_box.screen_loc = ui_head - inv_box.slot_id = SLOT_HEAD + inv_box.slot_id = ITEM_SLOT_HEAD toggleable_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -380,7 +380,7 @@ inv_box.icon = ui_style inv_box.icon_state = "shoes" inv_box.screen_loc = ui_shoes - inv_box.slot_id = SLOT_SHOES + inv_box.slot_id = ITEM_SLOT_FEET toggleable_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -389,7 +389,7 @@ inv_box.icon_state = "belt" // inv_box.icon_full = "template_small" inv_box.screen_loc = ui_belt - inv_box.slot_id = SLOT_BELT + inv_box.slot_id = ITEM_SLOT_BELT static_inventory += inv_box throw_icon = new /atom/movable/screen/throw_catch() @@ -464,7 +464,7 @@ for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(inv.slot_id) inv.hud = src - inv_slots[inv.slot_id] = inv + inv_slots[TOBITSHIFT(inv.slot_id) + 1] = inv inv.update_icon() update_locked_slots() diff --git a/code/_onclick/hud/monkey.dm b/code/_onclick/hud/monkey.dm index 376db7bf96..b63f8241cb 100644 --- a/code/_onclick/hud/monkey.dm +++ b/code/_onclick/hud/monkey.dm @@ -50,7 +50,7 @@ inv_box.icon_state = "mask" // inv_box.icon_full = "template" inv_box.screen_loc = ui_monkey_mask - inv_box.slot_id = SLOT_WEAR_MASK + inv_box.slot_id = ITEM_SLOT_MASK static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -59,7 +59,7 @@ inv_box.icon_state = "neck" // inv_box.icon_full = "template" inv_box.screen_loc = ui_monkey_neck - inv_box.slot_id = SLOT_NECK + inv_box.slot_id = ITEM_SLOT_NECK static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -68,7 +68,7 @@ inv_box.icon_state = "head" // inv_box.icon_full = "template" inv_box.screen_loc = ui_monkey_head - inv_box.slot_id = SLOT_HEAD + inv_box.slot_id = ITEM_SLOT_HEAD static_inventory += inv_box inv_box = new /atom/movable/screen/inventory() @@ -76,7 +76,7 @@ inv_box.icon = ui_style inv_box.icon_state = "back" inv_box.screen_loc = ui_monkey_back - inv_box.slot_id = SLOT_BACK + inv_box.slot_id = ITEM_SLOT_BACK static_inventory += inv_box throw_icon = new /atom/movable/screen/throw_catch() @@ -126,7 +126,7 @@ for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(inv.slot_id) inv.hud = src - inv_slots[inv.slot_id] = inv + inv_slots[TOBITSHIFT(inv.slot_id) + 1] = inv inv.update_icon() /datum/hud/monkey/persistent_inventory_update() diff --git a/code/_onclick/hud/screentip.dm b/code/_onclick/hud/screentip.dm new file mode 100644 index 0000000000..43b728ade6 --- /dev/null +++ b/code/_onclick/hud/screentip.dm @@ -0,0 +1,19 @@ +/atom/movable/screen/screentip + icon = null + icon_state = null + mouse_opacity = MOUSE_OPACITY_TRANSPARENT + screen_loc = "TOP,LEFT" + maptext_height = 480 + maptext_width = 480 + maptext = "" + +/atom/movable/screen/screentip/Initialize(mapload, _hud) + . = ..() + hud = _hud + update_view() + +/atom/movable/screen/screentip/proc/update_view(datum/source) + SIGNAL_HANDLER + if(!hud || !hud.mymob.client.view_size) //Might not have been initialized by now + return + maptext_width = getviewsize(hud.mymob.client.view_size.getView())[1] * world.icon_size diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm index f8a14b8c30..ed0a9eb4ea 100644 --- a/code/_onclick/telekinesis.dm +++ b/code/_onclick/telekinesis.dm @@ -101,7 +101,7 @@ //stops TK grabs being equipped anywhere but into hands /obj/item/tk_grab/equipped(mob/user, slot) - if(slot == SLOT_HANDS) + if(slot == ITEM_SLOT_HANDS) return ..() qdel(src) diff --git a/code/controllers/configuration/entries/dynamic.dm b/code/controllers/configuration/entries/dynamic.dm index 935164352e..98203b7d8a 100644 --- a/code/controllers/configuration/entries/dynamic.dm +++ b/code/controllers/configuration/entries/dynamic.dm @@ -94,6 +94,10 @@ config_entry_value = 10 min_val = 0 +/datum/config_entry/keyed_list/dynamic_mode_days + key_mode = KEY_MODE_TEXT + value_mode = VALUE_MODE_FLAG + /datum/config_entry/keyed_list/storyteller_weight key_mode = KEY_MODE_TEXT value_mode = VALUE_MODE_NUM diff --git a/code/controllers/configuration/entries/general.dm b/code/controllers/configuration/entries/general.dm index 2fe020d544..9966f90ce7 100644 --- a/code/controllers/configuration/entries/general.dm +++ b/code/controllers/configuration/entries/general.dm @@ -349,3 +349,9 @@ /datum/config_entry/flag/dynamic_config_enabled /datum/config_entry/flag/station_name_needs_approval + +//ambition start +/datum/config_entry/number/max_ambitions // Maximum number of ambitions a mind can store. + config_entry_value = 5 +//ambition end + diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 797ad92dd1..6258ecf03f 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -500,7 +500,7 @@ SUBSYSTEM_DEF(job) tcg_cards = N.client.prefs.tcg_cards if(tcg_cards) var/obj/item/tcgcard_binder/binder = new(get_turf(H)) - H.equip_to_slot_if_possible(binder, SLOT_IN_BACKPACK, disable_warning = TRUE, bypass_equip_delay_self = TRUE) + H.equip_to_slot_if_possible(binder, ITEM_SLOT_BACKPACK, disable_warning = TRUE, bypass_equip_delay_self = TRUE) for(var/card_type in N.client.prefs.tcg_cards) if(card_type) if(islist(H.client.prefs.tcg_cards[card_type])) @@ -710,9 +710,9 @@ SUBSYSTEM_DEF(job) permitted = FALSE if(G.donoritem && !G.donator_ckey_check(the_mob.client.ckey)) permitted = FALSE - if(!equipbackpackstuff && G.slot == SLOT_IN_BACKPACK)//snowflake check since plopping stuff in the backpack doesnt work for pre-job equip loadout stuffs + if(!equipbackpackstuff && G.slot == ITEM_SLOT_BACKPACK)//snowflake check since plopping stuff in the backpack doesnt work for pre-job equip loadout stuffs permitted = FALSE - if(equipbackpackstuff && G.slot != SLOT_IN_BACKPACK)//ditto + if(equipbackpackstuff && G.slot != ITEM_SLOT_BACKPACK)//ditto permitted = FALSE if(!permitted) continue @@ -749,7 +749,7 @@ SUBSYSTEM_DEF(job) I.forceMove(get_turf(C)) else qdel(I) - else if(!M.equip_to_slot_if_possible(I, SLOT_IN_BACKPACK, disable_warning = TRUE, bypass_equip_delay_self = TRUE)) // Otherwise, try to put it in the backpack + else if(!M.equip_to_slot_if_possible(I, ITEM_SLOT_BACKPACK, disable_warning = TRUE, bypass_equip_delay_self = TRUE)) // Otherwise, try to put it in the backpack if(can_drop) I.forceMove(get_turf(M)) // If everything fails, just put it on the floor under the mob. else diff --git a/code/datums/action.dm b/code/datums/action.dm index 1a8ea7a60f..ac8c909bd2 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -516,7 +516,7 @@ H.attack_self(owner) return var/obj/item/I = target - if(owner.can_equip(I, SLOT_HANDS)) + if(owner.can_equip(I, ITEM_SLOT_HANDS)) owner.temporarilyRemoveItemFromInventory(I) owner.put_in_hands(I) I.attack_self(owner) diff --git a/code/datums/components/anti_magic.dm b/code/datums/components/anti_magic.dm index 638be08717..840c202bfc 100644 --- a/code/datums/components/anti_magic.dm +++ b/code/datums/components/anti_magic.dm @@ -29,7 +29,7 @@ expire = _expire /datum/component/anti_magic/proc/on_equip(datum/source, mob/equipper, slot) - if(!(allowed_slots & slotdefine2slotbit(slot))) //Check that the slot is valid for antimagic + if(!(allowed_slots & slot)) //Check that the slot is valid for antimagic UnregisterSignal(equipper, COMSIG_MOB_RECEIVE_MAGIC) return RegisterSignal(equipper, COMSIG_MOB_RECEIVE_MAGIC, .proc/protect, TRUE) diff --git a/code/datums/components/phantomthief.dm b/code/datums/components/phantomthief.dm index 6b7e7221c3..a73754d04a 100644 --- a/code/datums/components/phantomthief.dm +++ b/code/datums/components/phantomthief.dm @@ -9,7 +9,7 @@ var/filter_size var/filter_color -/datum/component/wearertargeting/phantomthief/Initialize(_x = -2, _y = 0, _size = 0, _color = "#E62111", list/_valid_slots = list(SLOT_GLASSES)) +/datum/component/wearertargeting/phantomthief/Initialize(_x = -2, _y = 0, _size = 0, _color = "#E62111", list/_valid_slots = list(ITEM_SLOT_EYES)) . = ..() if(. == COMPONENT_INCOMPATIBLE) return diff --git a/code/datums/components/shielded.dm b/code/datums/components/shielded.dm index 3cf70e80ef..79a84427f4 100644 --- a/code/datums/components/shielded.dm +++ b/code/datums/components/shielded.dm @@ -108,7 +108,7 @@ SSvis_overlays.add_vis_overlay(holder, 'icons/effects/effects.dmi', to_add, layer, GAME_PLANE, holder.dir) /datum/component/shielded/proc/on_equip(obj/item/source, mob/living/equipper, slot) - if(!(accepted_slots & slotdefine2slotbit(slot))) + if(!(accepted_slots & slot)) return holder = equipper RegisterSignal(parent, COMSIG_ITEM_RUN_BLOCK, .proc/on_run_block) diff --git a/code/datums/components/twohanded.dm b/code/datums/components/twohanded.dm index bcbf979101..f451241fb4 100644 --- a/code/datums/components/twohanded.dm +++ b/code/datums/components/twohanded.dm @@ -89,7 +89,7 @@ /// Triggered on equip of the item containing the component /datum/component/two_handed/proc/on_equip(datum/source, mob/user, slot) - if(require_twohands && slot == SLOT_HANDS) // force equip the item + if(require_twohands && slot == ITEM_SLOT_HANDS) // force equip the item wield(user) if(!user.is_holding(parent) && wielded && !require_twohands) unwield(user) diff --git a/code/datums/datum.dm b/code/datums/datum.dm index 5f9bf37040..2cc72f7ca9 100644 --- a/code/datums/datum.dm +++ b/code/datums/datum.dm @@ -235,6 +235,7 @@ else return returned + /** * Callback called by a timer to end an associative-list-indexed cooldown. * diff --git a/code/datums/diseases/_MobProcs.dm b/code/datums/diseases/_MobProcs.dm index b4e53a7425..d6c11ab452 100644 --- a/code/datums/diseases/_MobProcs.dm +++ b/code/datums/diseases/_MobProcs.dm @@ -75,8 +75,8 @@ if(isobj(H.wear_suit)) Cl = H.wear_suit passed = prob((Cl.permeability_coefficient*100) - 1) - if(passed && isobj(SLOT_W_UNIFORM)) - Cl = SLOT_W_UNIFORM + if(passed && isobj(ITEM_SLOT_ICLOTHING)) + Cl = ITEM_SLOT_ICLOTHING passed = prob((Cl.permeability_coefficient*100) - 1) if(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM) if(isobj(H.wear_suit) && H.wear_suit.body_parts_covered&HANDS) diff --git a/code/datums/diseases/wizarditis.dm b/code/datums/diseases/wizarditis.dm index e769f466b9..0440fb231d 100644 --- a/code/datums/diseases/wizarditis.dm +++ b/code/datums/diseases/wizarditis.dm @@ -61,19 +61,19 @@ STI KALY - blind if(!istype(H.head, /obj/item/clothing/head/wizard)) if(!H.dropItemToGround(H.head)) qdel(H.head) - H.equip_to_slot_or_del(new /obj/item/clothing/head/wizard(H), SLOT_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/head/wizard(H), ITEM_SLOT_HEAD) return if(prob(chance)) if(!istype(H.wear_suit, /obj/item/clothing/suit/wizrobe)) if(!H.dropItemToGround(H.wear_suit)) qdel(H.wear_suit) - H.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(H), SLOT_WEAR_SUIT) + H.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(H), ITEM_SLOT_OCLOTHING) return if(prob(chance)) if(!istype(H.shoes, /obj/item/clothing/shoes/sandal/magic)) if(!H.dropItemToGround(H.shoes)) qdel(H.shoes) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(H), SLOT_SHOES) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(H), ITEM_SLOT_FEET) return else var/mob/living/carbon/H = affected_mob diff --git a/code/datums/elements/earhealing.dm b/code/datums/elements/earhealing.dm index 1c74777845..2ceb261622 100644 --- a/code/datums/elements/earhealing.dm +++ b/code/datums/elements/earhealing.dm @@ -19,7 +19,7 @@ user_by_item -= target /datum/element/earhealing/proc/equippedChanged(datum/source, mob/living/carbon/user, slot) - if(slot == SLOT_EARS && istype(user)) + if(slot == ITEM_SLOT_EARS && istype(user)) user_by_item[source] = user else user_by_item -= source diff --git a/code/datums/elements/polychromic.dm b/code/datums/elements/polychromic.dm index 5e888e0609..2649a8ee6f 100644 --- a/code/datums/elements/polychromic.dm +++ b/code/datums/elements/polychromic.dm @@ -144,7 +144,7 @@ return TRUE /datum/element/polychromic/proc/grant_user_action(atom/source, mob/user, slot) - if(slot == SLOT_IN_BACKPACK || slot == SLOT_LEGCUFFED || slot == SLOT_HANDCUFFED || slot == SLOT_GENERC_DEXTROUS_STORAGE) + if(slot == ITEM_SLOT_BACKPACK || slot == ITEM_SLOT_LEGCUFFED || slot == ITEM_SLOT_HANDCUFFED || slot == ITEM_SLOT_DEX_STORAGE) return var/datum/action/polychromic/P = actions_by_atom[source] if(!P) diff --git a/code/datums/elements/spellcasting.dm b/code/datums/elements/spellcasting.dm index 877bcdbcd3..676168ea49 100644 --- a/code/datums/elements/spellcasting.dm +++ b/code/datums/elements/spellcasting.dm @@ -34,7 +34,7 @@ stacked_spellcasting_by_user -= target /datum/element/spellcasting/proc/on_equip(datum/source, mob/equipper, slot) - if(!(cast_slots & slotdefine2slotbit(slot))) + if(!(cast_slots & slot)) return users_by_item[source] = equipper if(!stacked_spellcasting_by_user[equipper]) diff --git a/code/datums/martial/boxing.dm b/code/datums/martial/boxing.dm index 4682595aec..5b6c0e222d 100644 --- a/code/datums/martial/boxing.dm +++ b/code/datums/martial/boxing.dm @@ -59,7 +59,7 @@ /obj/item/clothing/gloves/boxing/equipped(mob/user, slot) . = ..() - if(ishuman(user) && slot == SLOT_GLOVES) + if(ishuman(user) && slot == ITEM_SLOT_GLOVES) var/mob/living/carbon/human/H = user style.teach(H,TRUE) @@ -68,5 +68,5 @@ if(!ishuman(user)) return var/mob/living/carbon/human/H = user - if(H.get_item_by_slot(SLOT_GLOVES) == src) + if(H.get_item_by_slot(ITEM_SLOT_GLOVES) == src) style.remove(H) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index 3691b2fccc..f8ed72eae8 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -197,7 +197,7 @@ /obj/item/clothing/gloves/krav_maga/equipped(mob/user, slot) . = ..() - if(ishuman(user) && slot == SLOT_GLOVES) + if(ishuman(user) && slot == ITEM_SLOT_GLOVES) var/mob/living/carbon/human/H = user style.teach(H,1) @@ -206,7 +206,7 @@ if(!ishuman(user)) return var/mob/living/carbon/human/H = user - if(H.get_item_by_slot(SLOT_GLOVES) == src) + if(H.get_item_by_slot(ITEM_SLOT_GLOVES) == src) style.remove(H) /obj/item/clothing/gloves/krav_maga/sec//more obviously named, given to sec diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 8dc1afba81..466bf5c778 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -485,7 +485,7 @@ /obj/item/storage/belt/champion/wrestling/equipped(mob/user, slot) . = ..() - if(ishuman(user) && slot == SLOT_BELT) + if(ishuman(user) && slot == ITEM_SLOT_BELT) var/mob/living/carbon/human/H = user style.teach(H,1) @@ -494,7 +494,7 @@ if(!ishuman(user)) return var/mob/living/carbon/human/H = user - if(H.get_item_by_slot(SLOT_BELT) == src) + if(H.get_item_by_slot(ITEM_SLOT_BELT) == src) style.remove(H) //Subtype of wrestling, reserved for the wrestling belts found in the holodeck diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 72b9d91b9d..7a051f999d 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -29,6 +29,12 @@ */ +//ambition start +#define AMBITION_COOLDOWN_TIME (5 SECONDS) +#define OBJECTIVES_COOLDOWN_TIME (2 SECONDS) +#define ADMIN_PING_COOLDOWN_TIME (10 MINUTES) +//ambition end + /datum/mind var/key var/name //replaces mob/var/original_name @@ -68,6 +74,11 @@ /// Our skill holder. var/datum/skill_holder/skill_holder +//ambition start + /// Lazy list for antagonists to set goals they wish to achieve, to be shown at the round-end report. + var/list/ambitions +//ambition end + ///What character we spawned in as- either at roundstart or latejoin, so we know for persistent scars if we ended as the same person or not var/mob/original_character @@ -175,7 +186,9 @@ qdel(A) return A.owner = src - LAZYADD(antag_datums, A) +//ambition start + do_add_antag_datum(A) +//ambition end A.create_team(team) var/datum/team/antag_team = A.get_team() if(antag_team) @@ -183,6 +196,14 @@ A.on_gain() return A +//ambition start +/datum/mind/proc/do_add_antag_datum(instanced_datum) + . = LAZYLEN(antag_datums) + LAZYADD(antag_datums, instanced_datum) + if(!.) + add_verb(current, /mob/proc/edit_objectives_and_ambitions) +//ambition end + /datum/mind/proc/remove_antag_datum(datum_type) if(!datum_type) return @@ -191,6 +212,14 @@ A.on_removal() return TRUE +//ambition start +/datum/mind/proc/do_remove_antag_datum(instanced_datum) + . = LAZYLEN(antag_datums) + LAZYREMOVE(antag_datums, instanced_datum) + if(. && !LAZYLEN(antag_datums)) + ambitions = null + remove_verb(current, /mob/proc/edit_objectives_and_ambitions) +//ambition end /datum/mind/proc/remove_all_antag_datums() //For the Lazy amongst us. for(var/a in antag_datums) @@ -379,10 +408,10 @@ message_admins("[ADMIN_LOOKUPFLW(current)] has been created by [ADMIN_LOOKUPFLW(creator)], an antagonist.") to_chat(current, "Despite your creators current allegiances, your true master remains [creator.real_name]. If their loyalties change, so do yours. This will never change unless your creator's body is destroyed.") -/datum/mind/proc/show_memory(mob/recipient, window=1) - if(!recipient) - recipient = current - var/output = "[current.real_name]'s Memories:
" +//ambition start +/datum/mind/proc/show_memory() + var/list/output = list("[current.real_name]'s Memories:
") +//ambition end output += memory @@ -403,16 +432,910 @@ output += "
  • Conspirator: [M.name]
  • " output += "" - if(window) - recipient << browse(output,"window=memory") - else if(all_objectives.len || memory) - to_chat(recipient, "[output]") +//ambition port start + if(LAZYLEN(ambitions)) + for(var/count in 1 to LAZYLEN(ambitions)) + output += "
    Ambition #[count]: [ambitions[count]]" + + if(!memory && !length(all_objectives) && !LAZYLEN(ambitions)) + output += "" + + return output.Join() + + +/datum/mind/proc/show_editable_objectives_and_ambitions() + var/is_admin = check_rights(R_ADMIN, FALSE) + var/self_mind = usr == current + if(!is_admin && !self_mind) + return "" + var/list/output = list() + for(var/a in antag_datums) + var/datum/antagonist/antag_datum = a + output += "Objectives:" + if(is_admin) + output += " Add Objective" + output += "" + if(is_admin) + output += "Announce objectives
    " + output += "
    Requested Objective Changes:" + if(self_mind) + output += " Request objective" + output += "
    " + else + for(var/uid in antag_datum.requested_objective_changes) + var/list/objectives_info = antag_datum.requested_objective_changes[uid] + var/obj_request = objectives_info["request"] + switch(obj_request) + if(REQUEST_NEW_OBJECTIVE) + var/datum/objective/type_cast_objective = objectives_info["target"] + var/objective_text = objectives_info["text"] + output += "
  • Request #[uid]: ADD [initial(type_cast_objective.name)] - [objective_text]" + if(self_mind) + output += " Cancel Request" + if(is_admin) + output += " Accept Edit Deny" + if(REQUEST_DEL_OBJECTIVE) + var/datum/objective/objective_ref = locate(objectives_info["target"]) in antag_datum.objectives + if(QDELETED(objective_ref)) + stack_trace("Objective request found with deleted reference. UID: [uid] | Antag: [antag_datum] | Mind: [src] | User: [usr]") + antag_datum.remove_objective_change(uid) + continue + output += "
  • Request #[uid]: DEL [objective_ref.name] - [objective_ref.explanation_text] - [objectives_info["text"]]" + if(self_mind) + output += " Cancel Request" + if(is_admin) + output += " Accept Deny" + if(REQUEST_WIN_OBJECTIVE, REQUEST_LOSE_OBJECTIVE) + var/datum/objective/objective_ref = locate(objectives_info["target"]) in antag_datum.objectives + if(QDELETED(objective_ref)) + stack_trace("Objective request found with deleted reference. UID: [uid] | Antag: [antag_datum] | Mind: [src] | User: [usr]") + antag_datum.remove_objective_change(uid) + continue + output += "
  • Request #[uid]: [obj_request == REQUEST_WIN_OBJECTIVE ? "WIN" : "LOSE"] [objective_ref.name] - [objective_ref.explanation_text] - [objectives_info["text"]]" + if(self_mind) + output += " Cancel Request" + if(is_admin) + output += " Accept Deny" + else + stack_trace("Objective request found with no request index. UID: [uid] | Antag: [antag_datum] | Mind: [src] | User: [usr]") + continue + output += "
    " + if(self_mind) + output += "Ping the admins
    " + if(is_admin) + output += "Clear ping cooldown
    " + output += "
    [current.real_name]'s Ambitions:" + if(LAZYLEN(ambitions) < CONFIG_GET(number/max_ambitions)) + output += " Add Ambition" + output += "
      " + if(!LAZYLEN(ambitions)) + output += "
    • NONE" + else + for(var/count in 1 to LAZYLEN(ambitions)) + output += "
    • Ambition #[count] (Edit) (Remove):
      [ambitions[count]]" + output += "

    (Refresh)" + return output.Join() + + +/mob/proc/edit_objectives_and_ambitions() + set name = "Objectives and Ambitions" + set category = "IC" + set desc = "View and edit your character's objectives and ambitions." + mind.do_edit_objectives_ambitions() + + +/datum/mind/proc/do_edit_objectives_ambitions() + var/datum/browser/popup = new(usr, "objectives and ambitions", "Objectives and Ambitions") + popup.set_content(show_editable_objectives_and_ambitions()) + popup.open() + + +GLOBAL_VAR_INIT(requested_objective_uid, 0) + + +GLOBAL_LIST(objective_player_choices) + +/proc/populate_objective_player_choices() + GLOB.objective_player_choices = list() + var/list/allowed_types = list( + /datum/objective/custom, + /datum/objective/assassinate/once, + /datum/objective/protect, + /datum/objective/escape, + /datum/objective/survive, + /datum/objective/martyr, + /datum/objective/steal, + /datum/objective/download, + ) + + for(var/t in allowed_types) + var/datum/objective/type_cast = t + GLOB.objective_player_choices[initial(type_cast.name)] = t + + +GLOBAL_LIST(objective_choices) + +/proc/populate_objective_choices() + GLOB.objective_choices = list() + var/list/allowed_types = list( + /datum/objective/custom, + /datum/objective/assassinate, + /datum/objective/assassinate/once, + /datum/objective/maroon, + /datum/objective/debrain, + /datum/objective/protect, + /datum/objective/destroy, + /datum/objective/hijack, + /datum/objective/escape, + /datum/objective/survive, + /datum/objective/martyr, + /datum/objective/steal, + /datum/objective/download, + /datum/objective/nuclear, + /datum/objective/absorb, + ) + + for(var/t in allowed_types) + var/datum/objective/type_cast = t + GLOB.objective_choices[initial(type_cast.name)] = t + + +/datum/mind/proc/on_objectives_request_cd_end(datum/source) + UnregisterSignal(src, list(COMSIG_CD_STOP(COOLDOWN_OBJ_ADMIN_PING), COMSIG_CD_RESET(COOLDOWN_OBJ_ADMIN_PING))) + if(!antag_datums) + return + to_chat(current, "You are now again able to ping the admins objective changes review requests.") + for(var/a in antag_datums) + var/datum/antagonist/antag_datum = a + if(!antag_datum.requested_objective_changes) + continue + to_chat(current, "You seem to have unanswered change requests. If there are online admins another gentle reminder might be in order.") + break +//ambition port end /datum/mind/Topic(href, href_list) +//ambition start + + if (href_list["refresh_obj_amb"]) + do_edit_objectives_ambitions() + return + + else if (href_list["add_ambition"]) + if(!check_rights(R_ADMIN, FALSE)) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_AMBITION)) + to_chat(usr, "You must wait [AMBITION_COOLDOWN_TIME * 0.1] seconds between changes.") + return + if(!isliving(current)) + return + if(!antag_datums) + return + var/max_ambitions = CONFIG_GET(number/max_ambitions) + if(LAZYLEN(ambitions) >= max_ambitions) + to_chat(usr, "There's a limit of [max_ambitions] ambitions. Edit or remove some to accomodate for your new additions.") + do_edit_objectives_ambitions() + return + var/new_ambition = stripped_multiline_input(usr, "Write new ambition", "Ambition", "", MAX_AMBITION_LEN) + if(isnull(new_ambition)) + return + if(!check_rights(R_ADMIN, FALSE)) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_AMBITION)) + to_chat(usr, "You must wait [AMBITION_COOLDOWN_TIME * 0.1] seconds between changes.") + return + if(!isliving(current)) + to_chat(usr, "The mind holder is no longer a living creature.") + return + if(!antag_datums) + to_chat(usr, "The mind holder is no longer an antagonist.") + return + if(LAZYLEN(ambitions) >= max_ambitions) + to_chat(usr, "There's a limit of [max_ambitions] ambitions. Edit or remove some to accomodate for your new additions.") + do_edit_objectives_ambitions() + return + TIMER_COOLDOWN_START(src, COOLDOWN_AMBITION, AMBITION_COOLDOWN_TIME) + LAZYADD(ambitions, new_ambition) + if(usr == current) + log_game("[key_name(usr)] has created their ambition of index [LAZYLEN(ambitions)].\nNEW AMBITION:\n[new_ambition]") + else + log_game("[key_name(usr)] has created [key_name(current)]'s ambition of index [LAZYLEN(ambitions)].\nNEW AMBITION:\n[new_ambition]") + message_admins("[ADMIN_TPMONTY(usr)] has created [ADMIN_TPMONTY(current)]'s ambition of index [LAZYLEN(ambitions)].") + do_edit_objectives_ambitions() + return + + else if (href_list["edit_ambition"]) + if(!check_rights(R_ADMIN, FALSE)) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_AMBITION)) + to_chat(usr, "You must wait [AMBITION_COOLDOWN_TIME * 0.1] seconds between changes.") + return + if(!isliving(current)) + return + if(!antag_datums) + return + var/ambition_index = text2num(href_list["edit_ambition"]) + if(!isnum(ambition_index) || ambition_index < 0 || ambition_index % 1) + log_admin_private("[key_name(usr)] attempted to edit their ambitions with and invalid ambition_index ([ambition_index]) at [AREACOORD(usr.loc)].") + message_admins("[ADMIN_TPMONTY(usr)] attempted to edit their ambitions with and invalid ambition_index ([ambition_index]). Possible HREF exploit.") + return + if(ambition_index > LAZYLEN(ambitions)) + return + var/old_ambition = ambitions[ambition_index] + var/new_ambition = stripped_multiline_input(usr, "Write new ambition", "Ambition", ambitions[ambition_index], MAX_AMBITION_LEN) + if(isnull(new_ambition)) + return + if(!check_rights(R_ADMIN, FALSE)) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_AMBITION)) + to_chat(usr, "You must wait [AMBITION_COOLDOWN_TIME * 0.1] seconds between changes.") + return + if(!isliving(current)) + to_chat(usr, "The mind holder is no longer a living creature.") + return + if(!antag_datums) + to_chat(usr, "The mind holder is no longer an antagonist.") + return + if(ambition_index > LAZYLEN(ambitions)) + to_chat(usr, "The ambition we were editing was deleted before we finished. Aborting.") + do_edit_objectives_ambitions() + return + if(old_ambition != ambitions[ambition_index]) + to_chat(usr, "The ambition has changed since we started editing it. Aborting to prevent data loss.") + do_edit_objectives_ambitions() + return + TIMER_COOLDOWN_START(src, COOLDOWN_AMBITION, AMBITION_COOLDOWN_TIME) + ambitions[ambition_index] = new_ambition + if(usr == current) + log_game("[key_name(usr)] has edited their ambition of index [ambition_index].\nOLD AMBITION:\n[old_ambition]\nNEW AMBITION:\n[new_ambition]") + else + log_game("[key_name(usr)] has edited [key_name(current)]'s ambition of index [ambition_index].\nOLD AMBITION:\n[old_ambition]\nNEW AMBITION:\n[new_ambition]") + message_admins("[ADMIN_TPMONTY(usr)] has edited [ADMIN_TPMONTY(current)]'s ambition of index [ambition_index].") + do_edit_objectives_ambitions() + return + + else if (href_list["remove_ambition"]) + if(!check_rights(R_ADMIN, FALSE)) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_AMBITION)) + to_chat(usr, "You must wait [AMBITION_COOLDOWN_TIME * 0.1] seconds between changes.") + return + if(!isliving(current)) + return + if(!antag_datums) + return + var/ambition_index = text2num(href_list["remove_ambition"]) + if(ambition_index > LAZYLEN(ambitions)) + do_edit_objectives_ambitions() + return + if(!isnum(ambition_index) || ambition_index < 0 || ambition_index % 1) + log_admin_private("[key_name(usr)] attempted to remove an ambition with and invalid ambition_index ([ambition_index]) at [AREACOORD(usr.loc)].") + message_admins("[ADMIN_TPMONTY(usr)] attempted to remove an ambition with and invalid ambition_index ([ambition_index]). Possible HREF exploit.") + return + var/old_ambition = ambitions[ambition_index] + if(alert(usr, "Are you sure you want to delete this ambition?", "Delete ambition", "Yes", "No") != "Yes") + return + if(!check_rights(R_ADMIN, FALSE)) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_AMBITION)) + to_chat(usr, "You must wait [AMBITION_COOLDOWN_TIME * 0.1] seconds between changes.") + return + if(!isliving(current)) + to_chat(usr, "The mind holder is no longer a living creature. The ambition we were deleting should no longer exist already.") + return + if(!antag_datums) + to_chat(usr, "The mind holder is no longer an antagonist. The ambition we were deleting should no longer exist already.") + return + if(ambition_index > LAZYLEN(ambitions)) + to_chat(usr, "The ambition we were deleting was deleted before we finished. No need to continue.") + do_edit_objectives_ambitions() + return + if(old_ambition != ambitions[ambition_index]) + to_chat(usr, "The ambition has changed since we started considering its deletion. Aborting to prevent conflicts.") + do_edit_objectives_ambitions() + return + TIMER_COOLDOWN_START(src, COOLDOWN_AMBITION, AMBITION_COOLDOWN_TIME) + LAZYCUT(ambitions, ambition_index, ambition_index + 1) + if(usr == current) + log_game("[key_name(usr)] has deleted their ambition of index [ambition_index].\nDELETED AMBITION:\n[old_ambition]") + else + log_game("[key_name(usr)] has deleted [key_name(current)]'s ambition of index [ambition_index].\nDELETED AMBITION:\n[old_ambition]") + message_admins("[ADMIN_TPMONTY(usr)] has deleted [ADMIN_TPMONTY(current)]'s ambition of index [ambition_index].") + do_edit_objectives_ambitions() + return + + else if (href_list["req_obj_ping"]) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJ_ADMIN_PING)) + to_chat(usr, "You must wait [S_TIMER_COOLDOWN_TIMELEFT(src, COOLDOWN_OBJ_ADMIN_PING) * 0.1] seconds before your next admin ping.") + do_edit_objectives_ambitions() + return + if(!antag_datums) + return + var/pending_request = FALSE + for(var/a in antag_datums) + var/datum/antagonist/antag_datum = a + if(antag_datum.requested_objective_changes) + pending_request = TRUE + break + if(!pending_request) + to_chat(usr, "You have no pending requests to warn the admins about. Request changes for them to review before poking them.") + do_edit_objectives_ambitions() + return + var/justification = stripped_multiline_input(usr, + "Send a message to the admins requesting a review of your objective change requests.\ + There's a [ADMIN_PING_COOLDOWN_TIME * 0.1] seconds cooldown between requests, so try to think it through before sending it. Cancelling this does not trigger the cooldown.", + "Request Admin Review", max_length = MAX_MESSAGE_LEN) + if(isnull(justification)) + return + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJ_ADMIN_PING)) + to_chat(usr, "You must wait [S_TIMER_COOLDOWN_TIMELEFT(src, COOLDOWN_OBJ_ADMIN_PING) * 0.1] seconds before your next admin ping.") + do_edit_objectives_ambitions() + return + if(!antag_datums) + return + pending_request = FALSE + for(var/a in antag_datums) + var/datum/antagonist/antag_datum = a + if(antag_datum.requested_objective_changes) + pending_request = TRUE + break + if(!pending_request) + return + if(!length(GLOB.admins)) + to_chat(usr, "No admins currently connected, failed to notify them. Wait for one to connect before trying to ping them again.") + do_edit_objectives_ambitions() + return + S_TIMER_COOLDOWN_START(src, COOLDOWN_OBJ_ADMIN_PING, ADMIN_PING_COOLDOWN_TIME) + RegisterSignal(src, list(COMSIG_CD_STOP(COOLDOWN_OBJ_ADMIN_PING), COMSIG_CD_RESET(COOLDOWN_OBJ_ADMIN_PING)), .proc/on_objectives_request_cd_end) + log_admin("Objectives review request - [key_name(usr)] has requested a review of their objective changes, pinging the admins.") + for(var/a in GLOB.admins) + var/client/admin_client = a + if(admin_client.prefs.toggles & SOUND_ADMINHELP) + SEND_SOUND(admin_client, sound('sound/effects/adminhelp.ogg')) + window_flash(admin_client) + message_admins("[ADMIN_TPMONTY(usr)] has requested a review of their objective changes. (RPLY)") + do_edit_objectives_ambitions() + return + + else if (href_list["req_obj_add"]) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + do_edit_objectives_ambitions() + return + var/datum/antagonist/target_antag = locate(href_list["target_antag"]) in antag_datums + if(QDELETED(target_antag)) + to_chat(usr, "No antagonist found for this objective.") + do_edit_objectives_ambitions() + return + if(!GLOB.objective_player_choices) + populate_objective_player_choices() + var/choice = input("Select desired objective type:", "Objective type") as null|anything in GLOB.objective_player_choices + var/selected_type = GLOB.objective_player_choices[choice] + if(!selected_type) + return + var/new_objective = stripped_multiline_input(usr,\ + selected_type == /datum/objective/custom\ + ? "Write the custom objective you'd like to request the admins to grant you. Remember they can edit or deny your request at their own discretion."\ + : "Justify your request for a new objective to the admins. Add the required clarifations, if you have a specific targets in mind and the likes.",\ + "New Objective", max_length = MAX_MESSAGE_LEN) + if(isnull(new_objective)) + return + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME] minutes between request changes.") + return + if(QDELETED(target_antag)) + return + TIMER_COOLDOWN_START(src, COOLDOWN_OBJECTIVES, OBJECTIVES_COOLDOWN_TIME) + var/uid = "[GLOB.requested_objective_uid++]" + target_antag.add_objective_change(uid, list("request" = REQUEST_NEW_OBJECTIVE, "target" = selected_type, "text" = new_objective)) + log_admin("Objectives request [uid] - [key_name(usr)] has requested a [choice] objective: [new_objective]") + do_edit_objectives_ambitions() + return + + else if (href_list["req_obj_cancel"]) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + var/datum/antagonist/target_antag = locate(href_list["target_antag"]) in antag_datums + if(QDELETED(target_antag)) + to_chat(usr, "No antagonist found for this objective.") + do_edit_objectives_ambitions() + return + var/uid = href_list["req_obj_cancel"] + if(!LAZYACCESS(target_antag.requested_objective_changes, uid)) + to_chat(usr, "No requested objective change found. Perhaps it was deleted already?") + do_edit_objectives_ambitions() + return + if(alert(usr, "Are you sure you want to delete this change request?", "Delete change request", "Yes", "No") != "Yes") + return + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + if(QDELETED(target_antag)) + do_edit_objectives_ambitions() + return + if(!LAZYACCESS(target_antag.requested_objective_changes, uid)) + do_edit_objectives_ambitions() + return + TIMER_COOLDOWN_START(src, COOLDOWN_OBJECTIVES, OBJECTIVES_COOLDOWN_TIME) + log_admin("Objectives request deletion - [key_name(usr)] has deleted the objective change request of UID [uid].") + target_antag.remove_objective_change(uid) + do_edit_objectives_ambitions() + return + + else if (href_list["req_obj_delete"]) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + var/datum/antagonist/target_antag = locate(href_list["target_antag"]) in antag_datums + if(QDELETED(target_antag)) + to_chat(usr, "No antagonist found for this objective.") + do_edit_objectives_ambitions() + return + var/objective_reference = href_list["req_obj_delete"] + var/datum/objective/objective_to_delete = locate(objective_reference) in target_antag.objectives + if(!istype(objective_to_delete) || QDELETED(objective_to_delete)) + to_chat(usr, "No objective found. Perhaps it was already deleted?") + do_edit_objectives_ambitions() + return + var/justification = stripped_multiline_input(usr, + "Justify your request for a deleting this objective to the admins.", + "Objective Deletion", max_length = MAX_MESSAGE_LEN) + if(isnull(justification)) + return + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + if(QDELETED(objective_to_delete) || QDELETED(target_antag)) + do_edit_objectives_ambitions() + return + var/matching_request = FALSE + for(var/index in target_antag.requested_objective_changes) + var/list/change_request = target_antag.requested_objective_changes[index] + if(change_request["target"] != objective_reference) + continue + matching_request = TRUE + break + if(matching_request) + if(alert(usr, "There is already a change request tied to this objective waiting to be processed. Adding this request will delete the old ones.", "Delete matching objective requests?", "Yes", "No") != "Yes") + do_edit_objectives_ambitions() + return + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + if(QDELETED(objective_to_delete) || QDELETED(target_antag)) + do_edit_objectives_ambitions() + return + for(var/index in target_antag.requested_objective_changes) + var/list/change_request = target_antag.requested_objective_changes[index] + if(change_request["target"] != objective_reference) + continue + target_antag.remove_objective_change(index) + TIMER_COOLDOWN_START(src, COOLDOWN_OBJECTIVES, OBJECTIVES_COOLDOWN_TIME) + var/uid = "[GLOB.requested_objective_uid++]" + target_antag.add_objective_change(uid, list("request" = REQUEST_DEL_OBJECTIVE, "target" = objective_reference, "text" = justification)) + log_admin("Objectives request [uid] - [key_name(usr)] has requested the deletion of the following objective: [objective_to_delete.explanation_text].\nTheir justification is as follows: [justification]") + do_edit_objectives_ambitions() + return + + else if (href_list["req_obj_completed"]) + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + var/datum/antagonist/target_antag = locate(href_list["target_antag"]) in antag_datums + if(QDELETED(target_antag)) + to_chat(usr, "No antagonist found for this objective.") + do_edit_objectives_ambitions() + return + var/objective_reference = href_list["req_obj_completed"] + var/datum/objective/objective_to_complete = locate(objective_reference) in target_antag.objectives + if(!istype(objective_to_complete) || QDELETED(objective_to_complete)) + to_chat(usr, "No objective found. Perhaps it was deleted?") + do_edit_objectives_ambitions() + return + var/justification = stripped_multiline_input(usr, + "Justify to the admins your request to mark this objective as [objective_to_complete.completed ? "incomplete" : "completed"].", + "Objective [objective_to_complete.completed ? "Incompletion" : "Completion"]", max_length = MAX_MESSAGE_LEN) + if(isnull(justification)) + return + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + if(QDELETED(objective_to_complete) || QDELETED(target_antag)) + do_edit_objectives_ambitions() + return + var/matching_request = FALSE + for(var/index in target_antag.requested_objective_changes) + var/list/change_request = target_antag.requested_objective_changes[index] + if(change_request["target"] != objective_reference) + continue + matching_request = TRUE + break + if(matching_request) + if(alert(usr, "There is already a change request tied to this objective waiting to be processed. Adding this request will delete the old ones.", "Delete matching objective requests?", "Yes", "No") != "Yes") + return + if(usr != current) + return + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJECTIVES)) + to_chat(usr, "You must wait [OBJECTIVES_COOLDOWN_TIME * 0.1] seconds between request changes.") + return + if(QDELETED(objective_to_complete) || QDELETED(target_antag)) + do_edit_objectives_ambitions() + return + for(var/index in target_antag.requested_objective_changes) + var/list/change_request = target_antag.requested_objective_changes[index] + if(change_request["target"] != objective_reference) + continue + target_antag.remove_objective_change(index) + TIMER_COOLDOWN_START(src, COOLDOWN_OBJECTIVES, OBJECTIVES_COOLDOWN_TIME) + var/uid = "[GLOB.requested_objective_uid++]" + target_antag.add_objective_change(uid, list("request" = (objective_to_complete.completed ? REQUEST_LOSE_OBJECTIVE : REQUEST_WIN_OBJECTIVE), "target" = objective_reference, "text" = justification)) + log_admin("Objectives request [uid] - [key_name(usr)] has requested the [objective_to_complete.completed ? "incompletion" : "completion"] of the following objective: [objective_to_complete.explanation_text].\nTheir justification is as follows: [justification]") + do_edit_objectives_ambitions() + return if(!check_rights(R_ADMIN)) return var/self_antagging = usr == current + if(href_list["edit_ambitions_panel"]) + do_edit_objectives_ambitions() + return + + else if(href_list["req_obj_ping_cd_clear"]) + if(!TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJ_ADMIN_PING)) + to_chat(usr, "Mind is not under a cooldown.") + do_edit_objectives_ambitions() + return + if(alert(usr, "Are you sure you want reset this cooldown, letting the user ping the admins again?", "Clear ping cooldown", "Yes", "No") != "Yes") + do_edit_objectives_ambitions() + return + if(!check_rights(R_ADMIN)) + return + if(!TIMER_COOLDOWN_CHECK(src, COOLDOWN_OBJ_ADMIN_PING)) + do_edit_objectives_ambitions() + return + S_TIMER_COOLDOWN_RESET(src, COOLDOWN_OBJ_ADMIN_PING) + do_edit_objectives_ambitions() + return + + else if(href_list["refresh_antag_panel"]) + traitor_panel() + return + + else if (href_list["req_obj_edit"]) + var/datum/antagonist/antag_datum = locate(href_list["req_obj_edit"]) in antag_datums + if(QDELETED(antag_datum)) + do_edit_objectives_ambitions() + to_chat(usr, "No antag found.") + return + if(antag_datum.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid antag reference.") + return + var/uid = href_list["req_obj_id"] + var/list/requested_obj_change = LAZYACCESS(antag_datum.requested_objective_changes, uid) + if(!requested_obj_change) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid requested objective reference.") + return + if(requested_obj_change["request"] != REQUEST_NEW_OBJECTIVE) + do_edit_objectives_ambitions() + to_chat(usr, "This is not an editable request. How did you even got here?") + return + switch(alert(usr, "Do you want to edit the requested objective type or text?", "Edit requested objective", "Type", "Text", "Cancel")) + if("Type") + if(!check_rights(R_ADMIN)) + return + if(QDELETED(antag_datum)) + to_chat(usr, "No antag found.") + do_edit_objectives_ambitions() + return + if(!LAZYACCESS(antag_datum.requested_objective_changes, uid)) + to_chat(usr, "Invalid requested objective change reference.") + do_edit_objectives_ambitions() + return + var/datum/objective/type_cast = requested_obj_change["target"] + var/selected_type = input("Select new requested objective type:", "Requested Objective type", initial(type_cast.name)) as null|anything in GLOB.objective_choices + selected_type = GLOB.objective_choices[selected_type] + if(!selected_type) + return + if(!check_rights(R_ADMIN)) + return + if(QDELETED(antag_datum)) + to_chat(usr, "No antag found.") + do_edit_objectives_ambitions() + return + if(!LAZYACCESS(antag_datum.requested_objective_changes, uid)) + to_chat(usr, "Invalid requested objective change reference.") + do_edit_objectives_ambitions() + return + log_admin("[key_name(usr)] has edited the requested objective type for [current], of UID [uid], from [requested_obj_change["target"]] to [selected_type]") + message_admins("[key_name_admin(usr)] has edited the requested objective type for [current], of UID [uid], from [requested_obj_change["target"]] to [selected_type]") + requested_obj_change["target"] = selected_type + if("Text") + if(!check_rights(R_ADMIN)) + return + if(QDELETED(antag_datum)) + to_chat(usr, "No antag found.") + do_edit_objectives_ambitions() + return + if(!LAZYACCESS(antag_datum.requested_objective_changes, uid)) + to_chat(usr, "Invalid requested objective change reference.") + do_edit_objectives_ambitions() + return + var/new_text = stripped_multiline_input(usr, "Input new requested objective text", "Requested Objective Text", requested_obj_change["text"], MAX_MESSAGE_LEN) + if (isnull(new_text)) + return + if(!check_rights(R_ADMIN)) + return + if(QDELETED(antag_datum)) + to_chat(usr, "No antag found.") + do_edit_objectives_ambitions() + return + if(!LAZYACCESS(antag_datum.requested_objective_changes, uid)) + to_chat(usr, "Invalid requested objective change reference.") + do_edit_objectives_ambitions() + return + log_admin("[key_name(usr)] has edited the requested objective text for [current], of UID [uid], from [requested_obj_change["text"]] to [new_text]") + message_admins("[key_name_admin(usr)] has edited the requested objective text for [current], of UID [uid], from [requested_obj_change["text"]] to [new_text]") + requested_obj_change["text"] = new_text + do_edit_objectives_ambitions() + return + + else if (href_list["req_obj_accept"]) + var/datum/antagonist/antag_datum = locate(href_list["req_obj_accept"]) in antag_datums + if(QDELETED(antag_datum)) + do_edit_objectives_ambitions() + to_chat(usr, "No antag found.") + return + if(antag_datum.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid antag reference.") + return + var/uid = href_list["req_obj_id"] + var/list/requested_obj_change = LAZYACCESS(antag_datum.requested_objective_changes, uid) + if(!requested_obj_change) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid requested objective reference.") + return + + var/datum/objective/request_target + var/request_type = requested_obj_change["request"] + switch(request_type) + if(REQUEST_NEW_OBJECTIVE) + request_target = requested_obj_change["target"] + if(!ispath(request_target, /datum/objective)) + to_chat(usr, "Invalid requested objective target path.") + return + if(REQUEST_DEL_OBJECTIVE, REQUEST_WIN_OBJECTIVE, REQUEST_LOSE_OBJECTIVE) + request_target = locate(requested_obj_change["target"]) in antag_datum.objectives + if(QDELETED(request_target)) + to_chat(usr, "Invalid requested objective target reference.") + return + else + to_chat(usr, "Invalid request type.") + return + if(alert(usr, "Are you sure you want to approve this objective change?", "Approve objective change", "Yes", "No") != "Yes") + return + if(!check_rights(R_ADMIN)) + return + if(QDELETED(antag_datum)) + to_chat(usr, "No antag found.") + do_edit_objectives_ambitions() + return + if(!LAZYACCESS(antag_datum.requested_objective_changes, uid)) + to_chat(usr, "Invalid requested objective change reference.") + do_edit_objectives_ambitions() + return + switch(request_type) //Last checks + if(REQUEST_NEW_OBJECTIVE) + if(!ispath(request_target, /datum/objective)) + stack_trace("Invalid target on objective change request: [request_target]") + do_edit_objectives_ambitions() + return + if(REQUEST_DEL_OBJECTIVE, REQUEST_WIN_OBJECTIVE, REQUEST_LOSE_OBJECTIVE) + if(QDELETED(request_target)) + to_chat(usr, "Invalid requested objective target reference.") + return + else + to_chat(usr, "Invalid request type.") + return + antag_datum.remove_objective_change(uid) + switch(request_type) //All is clear, let get things done. + if(REQUEST_NEW_OBJECTIVE) + request_target = new request_target() + request_target.owner = src + if(istype(request_target, /datum/objective/custom)) + request_target.explanation_text = requested_obj_change["text"] + else + request_target.admin_edit(usr) + antag_datum.objectives += request_target + message_admins("[key_name_admin(usr)] approved a requested objective from [current]: [request_target.explanation_text]") + log_admin("[key_name(usr)] approved a requested objective from [current]: [request_target.explanation_text]") + if(REQUEST_DEL_OBJECTIVE) + message_admins("[key_name_admin(usr)] approved the request to delete an objective from [current]: [request_target.explanation_text]") + log_admin("[key_name(usr)] approved the request to delete an objective from [current]: [request_target.explanation_text]") + qdel(request_target) + if(REQUEST_WIN_OBJECTIVE) + message_admins("[key_name_admin(usr)] approved the victory request for an objective from [current]: [request_target.explanation_text]") + log_admin("[key_name(usr)] approved the victory request for an objective from [current]: [request_target.explanation_text]") + request_target.completed = TRUE + if(REQUEST_LOSE_OBJECTIVE) + message_admins("[key_name_admin(usr)] approved the defeat request for an objective from [current]: [request_target.explanation_text]") + log_admin("[key_name(usr)] approved the defeat request for an objective from [current]: [request_target.explanation_text]") + request_target.completed = FALSE + to_chat(current, "Your objective change request has been approved.") + do_edit_objectives_ambitions() + return + + else if (href_list["req_obj_deny"]) + var/datum/antagonist/antag_datum = locate(href_list["req_obj_deny"]) in antag_datums + if(QDELETED(antag_datum)) + do_edit_objectives_ambitions() + to_chat(usr, "No antag found.") + return + if(antag_datum.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid antag reference.") + return + var/uid = href_list["req_obj_id"] + var/list/requested_obj_change = LAZYACCESS(antag_datum.requested_objective_changes, uid) + if(!requested_obj_change) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid requested objective change reference.") + return + var/justification = stripped_multiline_input(usr, "Justify why you are denying this objective request change.", "Deny", memory, MAX_MESSAGE_LEN) + if(isnull(justification)) + return + if(!check_rights(R_ADMIN)) + return + if(QDELETED(antag_datum)) + to_chat(usr, "No antag found.") + do_edit_objectives_ambitions() + return + if(!LAZYACCESS(antag_datum.requested_objective_changes, uid)) + to_chat(usr, "Invalid requested objective change reference.") + do_edit_objectives_ambitions() + return + var/datum/objective/type_cast = requested_obj_change["target"] + var/objective_name = initial(type_cast.name) + message_admins("[key_name_admin(usr)] denied a requested [objective_name] objective from [current]: [requested_obj_change["text"]]") + log_admin("[key_name(usr)] denied a requested [objective_name] objective from [current]: [requested_obj_change["text"]]") + to_chat(current, "Your objective request has been denied for the following reason: [justification]") + antag_datum.remove_objective_change(uid) + do_edit_objectives_ambitions() + return + + else if (href_list["obj_panel_complete_toggle"]) + var/datum/antagonist/antag_datum = locate(href_list["target_antag"]) in antag_datums + if(QDELETED(antag_datum)) + do_edit_objectives_ambitions() + to_chat(usr, "No antag found.") + return + if(antag_datum.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid antag reference.") + return + var/datum/objective/objective_to_toggle = locate(href_list["obj_panel_complete_toggle"]) in antag_datum.objectives + if(QDELETED(objective_to_toggle)) + to_chat(usr, "No objective found. Perhaps it was already deleted?") + do_edit_objectives_ambitions() + return + if(objective_to_toggle.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid objective reference.") + return + objective_to_toggle.completed = !objective_to_toggle.completed + message_admins("[key_name_admin(usr)] toggled the win state for [current]'s objective: [objective_to_toggle.explanation_text]") + log_admin("[key_name(usr)] toggled the win state for [current]'s objective: [objective_to_toggle.explanation_text]") + if(alert(usr, "Would you like to alert the player of the change?", "Deny objective", "Yes", "No") == "Yes") + to_chat(current, "[objective_to_toggle.completed ? "" : ""]Your objective status has changed!") + do_edit_objectives_ambitions() + return + + else if (href_list["obj_panel_delete"]) + var/datum/antagonist/antag_datum = locate(href_list["target_antag"]) in antag_datums + if(QDELETED(antag_datum)) + do_edit_objectives_ambitions() + to_chat(usr, "No antag found.") + return + if(antag_datum.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid antag reference.") + return + var/datum/objective/objective_to_delete = locate(href_list["obj_panel_delete"]) in antag_datum.objectives + if(QDELETED(objective_to_delete)) + to_chat(usr, "No objective found. Perhaps it was already deleted?") + do_edit_objectives_ambitions() + return + if(objective_to_delete.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid objective reference.") + return + if(alert(usr, "Are you sure you want to delete this objective?", "Delete objective", "Yes", "No") != "Yes") + return + if(!check_rights(R_ADMIN)) + return + if(QDELETED(objective_to_delete)) + return + message_admins("[key_name_admin(usr)] removed an objective from [current]: [objective_to_delete.explanation_text]") + log_admin("[key_name(usr)] removed an objective from [current]: [objective_to_delete.explanation_text]") + qdel(objective_to_delete) + do_edit_objectives_ambitions() + return + + else if (href_list["obj_panel_edit"]) + var/datum/antagonist/antag_datum = locate(href_list["target_antag"]) in antag_datums + if(QDELETED(antag_datum)) + do_edit_objectives_ambitions() + to_chat(usr, "No antag found.") + return + if(antag_datum.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid antag reference.") + return + var/datum/objective/objective_to_edit = locate(href_list["obj_panel_edit"]) in antag_datum.objectives + if(QDELETED(objective_to_edit)) + to_chat(usr, "No objective found. Perhaps it was already deleted?") + do_edit_objectives_ambitions() + return + if(objective_to_edit.owner != src) + do_edit_objectives_ambitions() + to_chat(usr, "Invalid objective reference.") + return + var/explanation_before = objective_to_edit.explanation_text + objective_to_edit.admin_edit(usr) + if(QDELETED(objective_to_edit)) + return + message_admins("[key_name_admin(usr)] edited an objective from [current]:\ + Before: [explanation_before]\ + After: [objective_to_edit.explanation_text]") + log_admin("[key_name(usr)] edited an objective from [current]:\ + Before: [explanation_before]\ + After: [objective_to_edit.explanation_text]") + do_edit_objectives_ambitions() + return +//ambition end if(href_list["add_antag"]) add_antag_wrapper(text2path(href_list["add_antag"]),usr) @@ -473,38 +1396,16 @@ else target_antag = target - var/static/list/choices - if(!choices) - choices = list() +//ambition start + if(!GLOB.objective_choices) + populate_objective_choices() - var/list/allowed_types = list( - /datum/objective/assassinate, - /datum/objective/assassinate/once, - /datum/objective/maroon, - /datum/objective/debrain, - /datum/objective/protect, - /datum/objective/destroy, - /datum/objective/hijack, - /datum/objective/escape, - /datum/objective/survive, - /datum/objective/martyr, - /datum/objective/steal, - /datum/objective/download, - /datum/objective/nuclear, - /datum/objective/absorb, - /datum/objective/custom - ) + if(old_objective && GLOB.objective_choices[old_objective.name]) + def_value = old_objective.name - for(var/T in allowed_types) - var/datum/objective/X = T - choices[initial(X.name)] = T - - if(old_objective) - if(old_objective.name in choices) - def_value = old_objective.name - - var/selected_type = input("Select objective type:", "Objective type", def_value) as null|anything in choices - selected_type = choices[selected_type] + var/selected_type = input("Select objective type:", "Objective type", def_value) as null|anything in GLOB.objective_choices + selected_type = GLOB.objective_choices[selected_type] +//ambition end if (!selected_type) return @@ -532,6 +1433,12 @@ message_admins("[key_name_admin(usr)] edited [current]'s objective to [new_objective.explanation_text]") log_admin("[key_name(usr)] edited [current]'s objective to [new_objective.explanation_text]") +//ambition start + if(href_list["ambition_panel"]) + do_edit_objectives_ambitions() + return +//ambition end + else if(href_list["traitor_class"]) var/static/list/choices if(!choices) @@ -616,6 +1523,11 @@ else if (href_list["obj_announce"]) announce_objectives() +//ambition start + if(href_list["ambition_panel"]) + do_edit_objectives_ambitions() + return +//ambition end //Something in here might have changed your mob if(self_antagging && (!usr || !usr.client) && current.client) @@ -819,3 +1731,7 @@ ..() mind.assigned_role = ROLE_PAI mind.special_role = "" + +//ambition start +#undef AMBITION_COOLDOWN_TIME +//ambition end diff --git a/code/datums/mutations/cluwne.dm b/code/datums/mutations/cluwne.dm index 59b7752372..45a78be27b 100644 --- a/code/datums/mutations/cluwne.dm +++ b/code/datums/mutations/cluwne.dm @@ -17,18 +17,18 @@ if(!istype(H.wear_mask, /obj/item/clothing/mask/gas/cluwne)) if(!H.dropItemToGround(H.wear_mask)) qdel(H.wear_mask) - H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/cluwne(H), SLOT_WEAR_MASK) + H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/cluwne(H), ITEM_SLOT_MASK) if(!istype(H.w_uniform, /obj/item/clothing/under/cluwne)) if(!H.dropItemToGround(H.w_uniform)) qdel(H.w_uniform) - H.equip_to_slot_or_del(new /obj/item/clothing/under/cluwne(H), SLOT_W_UNIFORM) + H.equip_to_slot_or_del(new /obj/item/clothing/under/cluwne(H), ITEM_SLOT_ICLOTHING) if(!istype(H.shoes, /obj/item/clothing/shoes/clown_shoes/cluwne)) if(!H.dropItemToGround(H.shoes)) qdel(H.shoes) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes/cluwne(H), SLOT_SHOES) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes/cluwne(H), ITEM_SLOT_FEET) - owner.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/white(owner), SLOT_GLOVES) // this is purely for cosmetic purposes incase they aren't wearing anything in that slot - owner.equip_to_slot_or_del(new /obj/item/storage/backpack/clown(owner), SLOT_BACK) // ditto + owner.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/white(owner), ITEM_SLOT_GLOVES) // this is purely for cosmetic purposes incase they aren't wearing anything in that slot + owner.equip_to_slot_or_del(new /obj/item/storage/backpack/clown(owner), ITEM_SLOT_BACK) // ditto /datum/mutation/human/cluwne/on_life(mob/living/carbon/human/owner) if((prob(15) && owner.IsUnconscious())) diff --git a/code/datums/outfit.dm b/code/datums/outfit.dm index 0b46629365..4c17874f97 100755 --- a/code/datums/outfit.dm +++ b/code/datums/outfit.dm @@ -153,31 +153,31 @@ //Start with uniform,suit,backpack for additional slots if(uniform) - H.equip_to_slot_or_del(new uniform(H), SLOT_W_UNIFORM, TRUE) + H.equip_to_slot_or_del(new uniform(H), ITEM_SLOT_ICLOTHING, TRUE) if(suit) - H.equip_to_slot_or_del(new suit(H), SLOT_WEAR_SUIT, TRUE) + H.equip_to_slot_or_del(new suit(H), ITEM_SLOT_OCLOTHING, TRUE) if(back) - H.equip_to_slot_or_del(new back(H), SLOT_BACK, TRUE) + H.equip_to_slot_or_del(new back(H), ITEM_SLOT_BACK, TRUE) if(belt) - H.equip_to_slot_or_del(new belt(H), SLOT_BELT, TRUE) + H.equip_to_slot_or_del(new belt(H), ITEM_SLOT_BELT, TRUE) if(gloves) - H.equip_to_slot_or_del(new gloves(H), SLOT_GLOVES, TRUE) + H.equip_to_slot_or_del(new gloves(H), ITEM_SLOT_GLOVES, TRUE) if(shoes) - H.equip_to_slot_or_del(new shoes(H), SLOT_SHOES, TRUE) + H.equip_to_slot_or_del(new shoes(H), ITEM_SLOT_FEET, TRUE) if(head) - H.equip_to_slot_or_del(new head(H), SLOT_HEAD, TRUE) + H.equip_to_slot_or_del(new head(H), ITEM_SLOT_HEAD, TRUE) if(mask) - H.equip_to_slot_or_del(new mask(H), SLOT_WEAR_MASK, TRUE) + H.equip_to_slot_or_del(new mask(H), ITEM_SLOT_MASK, TRUE) if(neck) - H.equip_to_slot_or_del(new neck(H), SLOT_NECK, TRUE) + H.equip_to_slot_or_del(new neck(H), ITEM_SLOT_NECK, TRUE) if(ears) - H.equip_to_slot_or_del(new ears(H), SLOT_EARS, TRUE) + H.equip_to_slot_or_del(new ears(H), ITEM_SLOT_EARS, TRUE) if(glasses) - H.equip_to_slot_or_del(new glasses(H), SLOT_GLASSES, TRUE) + H.equip_to_slot_or_del(new glasses(H), ITEM_SLOT_EYES, TRUE) if(id) - H.equip_to_slot_or_del(new id(H), SLOT_WEAR_ID, TRUE) + H.equip_to_slot_or_del(new id(H), ITEM_SLOT_ID, TRUE) if(suit_store) - H.equip_to_slot_or_del(new suit_store(H), SLOT_S_STORE, TRUE) + H.equip_to_slot_or_del(new suit_store(H), ITEM_SLOT_SUITSTORE, TRUE) if(undershirt) H.undershirt = initial(undershirt.name) @@ -195,9 +195,9 @@ if(!visualsOnly) // Items in pockets or backpack don't show up on mob's icon. if(l_pocket) - H.equip_to_slot_or_del(new l_pocket(H), SLOT_L_STORE, TRUE) + H.equip_to_slot_or_del(new l_pocket(H), ITEM_SLOT_LPOCKET, TRUE) if(r_pocket) - H.equip_to_slot_or_del(new r_pocket(H), SLOT_R_STORE, TRUE) + H.equip_to_slot_or_del(new r_pocket(H), ITEM_SLOT_RPOCKET, TRUE) if(box) if(!backpack_contents) @@ -211,7 +211,7 @@ if(!isnum(number))//Default to 1 number = 1 for(var/i in 1 to number) - H.equip_to_slot_or_del(new path(H), SLOT_IN_BACKPACK, TRUE) + H.equip_to_slot_or_del(new path(H), ITEM_SLOT_BACKPACK, TRUE) if(!H.head && toggle_helmet && istype(H.wear_suit, /obj/item/clothing/suit/space/hardsuit)) var/obj/item/clothing/suit/space/hardsuit/HS = H.wear_suit diff --git a/code/datums/traits/_quirk.dm b/code/datums/traits/_quirk.dm index 22a851da1d..99fa6e73c5 100644 --- a/code/datums/traits/_quirk.dm +++ b/code/datums/traits/_quirk.dm @@ -129,7 +129,7 @@ Use this as a guideline var/mob/living/carbon/human/H = quirk_holder var/obj/item/clothing/glasses/regular/glasses = new(get_turf(H)) H.put_in_hands(glasses) - H.equip_to_slot(glasses, SLOT_GLASSES) + H.equip_to_slot(glasses, ITEM_SLOT_EYES) H.regenerate_icons() //This whole proc is called automatically diff --git a/code/datums/traits/good.dm b/code/datums/traits/good.dm index 23fd75f982..a0f62a32b8 100644 --- a/code/datums/traits/good.dm +++ b/code/datums/traits/good.dm @@ -108,10 +108,10 @@ var/mob/living/carbon/human/H = quirk_holder var/obj/item/choice_beacon/music/B = new(get_turf(H)) H.put_in_hands(B) - H.equip_to_slot_if_possible(B, SLOT_IN_BACKPACK) + H.equip_to_slot_if_possible(B, ITEM_SLOT_BACKPACK) var/obj/item/musicaltuner/musicaltuner = new(get_turf(H)) H.put_in_hands(musicaltuner) - H.equip_to_slot_if_possible(musicaltuner, SLOT_IN_BACKPACK) + H.equip_to_slot_if_possible(musicaltuner, ITEM_SLOT_BACKPACK) H.regenerate_icons() /datum/quirk/photographer @@ -127,7 +127,7 @@ var/mob/living/carbon/human/H = quirk_holder var/obj/item/camera/camera = new(get_turf(H)) H.put_in_hands(camera) - H.equip_to_slot(camera, SLOT_NECK) + H.equip_to_slot(camera, ITEM_SLOT_NECK) H.regenerate_icons() /datum/quirk/selfaware @@ -166,7 +166,7 @@ var/mob/living/carbon/human/H = quirk_holder var/obj/item/toy/crayon/spraycan/spraycan = new(get_turf(H)) H.put_in_hands(spraycan) - H.equip_to_slot(spraycan, SLOT_IN_BACKPACK) + H.equip_to_slot(spraycan, ITEM_SLOT_BACKPACK) H.regenerate_icons() /datum/quirk/voracious @@ -188,7 +188,7 @@ /datum/quirk/trandening/on_spawn() var/mob/living/carbon/human/H = quirk_holder var/obj/item/autosurgeon/gloweyes/gloweyes = new(get_turf(H)) - H.equip_to_slot(gloweyes, SLOT_IN_BACKPACK) + H.equip_to_slot(gloweyes, ITEM_SLOT_BACKPACK) H.regenerate_icons() /datum/quirk/bloodpressure diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 38007023b5..10f66fce0c 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -57,9 +57,9 @@ GLOBAL_LIST_EMPTY(family_heirlooms) heirloom = new heirloom_type(get_turf(quirk_holder)) GLOB.family_heirlooms += heirloom var/list/slots = list( - "in your left pocket" = SLOT_L_STORE, - "in your right pocket" = SLOT_R_STORE, - "in your backpack" = SLOT_IN_BACKPACK + "in your left pocket" = ITEM_SLOT_LPOCKET, + "in your right pocket" = ITEM_SLOT_RPOCKET, + "in your backpack" = ITEM_SLOT_BACKPACK ) where = H.equip_in_one_of_slots(heirloom, slots, FALSE) || "at your feet" @@ -120,7 +120,7 @@ GLOBAL_LIST_EMPTY(family_heirlooms) /datum/quirk/nearsighted/on_spawn() var/mob/living/carbon/human/H = quirk_holder var/obj/item/clothing/glasses/regular/glasses = new(get_turf(H)) - if(!H.equip_to_slot_if_possible(glasses, SLOT_GLASSES)) + if(!H.equip_to_slot_if_possible(glasses, ITEM_SLOT_EYES)) H.put_in_hands(glasses) /datum/quirk/nyctophobia @@ -383,7 +383,7 @@ GLOBAL_LIST_EMPTY(family_heirlooms) /datum/quirk/blindness/on_spawn() var/mob/living/carbon/human/H = quirk_holder var/obj/item/clothing/glasses/sunglasses/blindfold/white/glasses = new(get_turf(H)) - if(!H.equip_to_slot_if_possible(glasses, SLOT_GLASSES, bypass_equip_delay_self = TRUE)) //if you can't put it on the user's eyes, put it in their hands, otherwise put it on their eyes eyes + if(!H.equip_to_slot_if_possible(glasses, ITEM_SLOT_EYES, bypass_equip_delay_self = TRUE)) //if you can't put it on the user's eyes, put it in their hands, otherwise put it on their eyes eyes H.put_in_hands(glasses) H.regenerate_icons() diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index 36712ea6bb..6b2cdbd455 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -172,7 +172,7 @@ /datum/quirk/colorist/on_spawn() var/mob/living/carbon/human/H = quirk_holder var/obj/item/dyespray/spraycan = new(get_turf(quirk_holder)) - H.equip_to_slot(spraycan, SLOT_IN_BACKPACK) + H.equip_to_slot(spraycan, ITEM_SLOT_BACKPACK) H.regenerate_icons() /datum/quirk/colorist/post_add() diff --git a/code/game/atoms.dm b/code/game/atoms.dm index f49dae2bb4..62df84857f 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -1434,11 +1434,12 @@ //Update the screentip to reflect what we're hoverin over /atom/MouseEntered(location, control, params) . = ..() - // Statusbar - // status_bar_set_text(usr, name) // Screentips - // if(usr?.hud_used) - // if(!usr.client?.prefs.screentip_pref || (flags_1 & NO_SCREENTIPS_1)) - // usr.hud_used.screentip_text.maptext = "" - // else - // usr.hud_used.screentip_text.maptext = MAPTEXT("[name]") + var/client/client = usr?.client + var/datum/hud/active_hud = client?.mob?.hud_used + if(active_hud) + if(!client.prefs.screentip_pref || (flags_1 & NO_SCREENTIPS_1)) + active_hud.screentip_text.maptext = "" + else + //We inline a MAPTEXT() here, because there's no good way to statically add to a string like this + active_hud.screentip_text.maptext = MAPTEXT("[name]") diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index 83c1eec598..77c953567c 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -1,6 +1,6 @@ GLOBAL_LIST_INIT(possible_changeling_IDs, list("Alpha","Beta","Gamma","Delta","Epsilon","Zeta","Eta","Theta","Iota","Kappa","Lambda","Mu","Nu","Xi","Omicron","Pi","Rho","Sigma","Tau","Upsilon","Phi","Chi","Psi","Omega")) GLOBAL_LIST_INIT(slots, list("head", "wear_mask", "back", "wear_suit", "w_uniform", "shoes", "belt", "gloves", "glasses", "ears", "wear_id", "s_store")) -GLOBAL_LIST_INIT(slot2slot, list("head" = SLOT_HEAD, "wear_mask" = SLOT_WEAR_MASK, "neck" = SLOT_NECK, "back" = SLOT_BACK, "wear_suit" = SLOT_WEAR_SUIT, "w_uniform" = SLOT_W_UNIFORM, "shoes" = SLOT_SHOES, "belt" = SLOT_BELT, "gloves" = SLOT_GLOVES, "glasses" = SLOT_GLASSES, "ears" = SLOT_EARS, "wear_id" = SLOT_WEAR_ID, "s_store" = SLOT_S_STORE)) +GLOBAL_LIST_INIT(slot2slot, list("head" = ITEM_SLOT_HEAD, "wear_mask" = ITEM_SLOT_MASK, "neck" = ITEM_SLOT_NECK, "back" = ITEM_SLOT_BACK, "wear_suit" = ITEM_SLOT_OCLOTHING, "w_uniform" = ITEM_SLOT_ICLOTHING, "shoes" = ITEM_SLOT_FEET, "belt" = ITEM_SLOT_BELT, "gloves" = ITEM_SLOT_GLOVES, "glasses" = ITEM_SLOT_EYES, "ears" = ITEM_SLOT_EARS, "wear_id" = ITEM_SLOT_ID, "s_store" = ITEM_SLOT_SUITSTORE)) GLOBAL_LIST_INIT(slot2type, list("head" = /obj/item/clothing/head/changeling, "wear_mask" = /obj/item/clothing/mask/changeling, "back" = /obj/item/changeling, "wear_suit" = /obj/item/clothing/suit/changeling, "w_uniform" = /obj/item/clothing/under/changeling, "shoes" = /obj/item/clothing/shoes/changeling, "belt" = /obj/item/changeling, "gloves" = /obj/item/clothing/gloves/changeling, "glasses" = /obj/item/clothing/glasses/changeling, "ears" = /obj/item/changeling, "wear_id" = /obj/item/changeling, "s_store" = /obj/item/changeling)) GLOBAL_VAR(changeling_team_objective_type) //If this is not null, we hand our this objective to all lings diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 08a8d69575..77371ad7bc 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -205,11 +205,11 @@ Credit where due: var/mob/living/carbon/human/L = M var/obj/item/clockwork/slab/S = new var/slot = "At your feet" - var/list/slots = list("In your left pocket" = SLOT_L_STORE, "In your right pocket" = SLOT_R_STORE, "In your backpack" = SLOT_IN_BACKPACK) + var/list/slots = list("In your left pocket" = ITEM_SLOT_LPOCKET, "In your right pocket" = ITEM_SLOT_RPOCKET, "In your backpack" = ITEM_SLOT_BACKPACK) if(ishuman(L)) var/mob/living/carbon/human/H = L var/obj/item/clockwork/replica_fabricator/F = new - if(H.equip_to_slot_or_del(F, SLOT_IN_BACKPACK)) + if(H.equip_to_slot_or_del(F, ITEM_SLOT_BACKPACK)) to_chat(H, "You have been equipped with a replica fabricator, an advanced tool that can convert objects like doors, tables or even coats into clockwork equivalents.") slot = H.equip_in_one_of_slots(S, slots) if(slot == "In your backpack") diff --git a/code/game/gamemodes/clown_ops/bananium_bomb.dm b/code/game/gamemodes/clown_ops/bananium_bomb.dm index 695fc79169..3e8d45b842 100644 --- a/code/game/gamemodes/clown_ops/bananium_bomb.dm +++ b/code/game/gamemodes/clown_ops/bananium_bomb.dm @@ -37,17 +37,17 @@ if(!H.w_uniform || H.dropItemToGround(H.w_uniform)) C = new /obj/item/clothing/under/rank/civilian/clown(H) ADD_TRAIT(C, TRAIT_NODROP, CLOWN_NUKE_TRAIT) - H.equip_to_slot_or_del(C, SLOT_W_UNIFORM) + H.equip_to_slot_or_del(C, ITEM_SLOT_ICLOTHING) if(!H.shoes || H.dropItemToGround(H.shoes)) C = new /obj/item/clothing/shoes/clown_shoes(H) ADD_TRAIT(C, TRAIT_NODROP, CLOWN_NUKE_TRAIT) - H.equip_to_slot_or_del(C, SLOT_SHOES) + H.equip_to_slot_or_del(C, ITEM_SLOT_FEET) if(!H.wear_mask || H.dropItemToGround(H.wear_mask)) C = new /obj/item/clothing/mask/gas/clown_hat(H) ADD_TRAIT(C, TRAIT_NODROP, CLOWN_NUKE_TRAIT) - H.equip_to_slot_or_del(C, SLOT_WEAR_MASK) + H.equip_to_slot_or_del(C, ITEM_SLOT_MASK) H.dna.add_mutation(CLOWNMUT) H.dna.add_mutation(SMILE) diff --git a/code/game/gamemodes/clown_ops/clown_weapons.dm b/code/game/gamemodes/clown_ops/clown_weapons.dm index a27cb02ea8..081ffbbdc4 100644 --- a/code/game/gamemodes/clown_ops/clown_weapons.dm +++ b/code/game/gamemodes/clown_ops/clown_weapons.dm @@ -214,7 +214,7 @@ if(!istype(C.wear_mask, /obj/item/clothing/mask/gas/clown_hat) && !istype(C.wear_mask, /obj/item/clothing/mask/gas/mime)) if(!C.wear_mask || C.dropItemToGround(C.wear_mask)) var/obj/item/clothing/mask/fakemoustache/sticky/the_stash = new /obj/item/clothing/mask/fakemoustache/sticky() - C.equip_to_slot_or_del(the_stash, SLOT_WEAR_MASK, TRUE, TRUE, TRUE, TRUE) + C.equip_to_slot_or_del(the_stash, ITEM_SLOT_MASK, TRUE, TRUE, TRUE, TRUE) /obj/item/clothing/mask/fakemoustache/sticky var/unstick_time = 2 MINUTES @@ -226,7 +226,7 @@ /obj/item/clothing/mask/fakemoustache/sticky/equipped(mob/user, slot) . = ..() - if(slot == SLOT_WEAR_MASK) + if(slot == ITEM_SLOT_MASK) ADD_TRAIT(user, TRAIT_NO_INTERNALS, STICKY_MOUSTACHE_TRAIT) /obj/item/clothing/mask/fakemoustache/sticky/dropped(mob/user) diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index a82abe9b3d..f7ccae24e4 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -154,7 +154,7 @@ if(tc) var/obj/item/U = new uplink_type(H, H.key, tc) - H.equip_to_slot_or_del(U, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(U, ITEM_SLOT_BACKPACK) var/obj/item/implant/weapons_auth/W = new W.implant(H) @@ -170,7 +170,7 @@ mask = /obj/item/clothing/mask/gas/syndicate suit = /obj/item/clothing/suit/space/hardsuit/syndi r_pocket = /obj/item/tank/internals/emergency_oxygen/engi - internals_slot = SLOT_R_STORE + internals_slot = ITEM_SLOT_RPOCKET belt = /obj/item/storage/belt/military r_hand = /obj/item/gun/ballistic/automatic/shotgun/bulldog backpack_contents = list(/obj/item/storage/box/survival/syndie=1,\ @@ -186,7 +186,7 @@ suit = /obj/item/clothing/suit/space/syndicate/black/red head = /obj/item/clothing/head/helmet/space/syndicate/black/red r_pocket = /obj/item/tank/internals/emergency_oxygen/engi - internals_slot = SLOT_R_STORE + internals_slot = ITEM_SLOT_RPOCKET belt = /obj/item/storage/belt/military backpack_contents = list(/obj/item/storage/box/survival/syndie=1,\ /obj/item/tank/jetpack/oxygen/harness=1,\ diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 0358c3af2c..fd43b994e8 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -165,7 +165,7 @@ If not set, defaults to check_completion instead. Set it. It's used by cryo. if(receiver && receiver.current) if(ishuman(receiver.current)) var/mob/living/carbon/human/H = receiver.current - var/list/slots = list("backpack" = SLOT_IN_BACKPACK) + var/list/slots = list("backpack" = ITEM_SLOT_BACKPACK) for(var/eq_path in special_equipment) var/obj/O = new eq_path . += O @@ -1197,7 +1197,7 @@ GLOBAL_LIST_EMPTY(cult_contraband) I.forceMove(get_turf(owner)) if(ishuman(owner)) var/mob/living/carbon/human/H = owner - H.equip_in_one_of_slots(I, list("backpack" = SLOT_IN_BACKPACK), critical = TRUE) + H.equip_in_one_of_slots(I, list("backpack" = ITEM_SLOT_BACKPACK), critical = TRUE) hoarded_item = I diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 982e40a79b..ce29d1947d 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -102,7 +102,7 @@ rad_insulation = RAD_MEDIUM_INSULATION var/static/list/airlock_overlays = list() - + /// sigh var/unelectrify_timerid @@ -1278,8 +1278,8 @@ assemblytype = /obj/structure/door_assembly/door_assembly_extmai update_icon() -/obj/machinery/door/airlock/CanAStarPass(obj/item/card/id/ID) -//Airlock is passable if it is open (!density), bot has access, and is not bolted shut or powered off) +/obj/machinery/door/airlock/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) + //Airlock is passable if it is open (!density), bot has access, and is not bolted shut or powered off) return !density || (check_access(ID) && !locked && hasPower()) /obj/machinery/door/airlock/emag_act(mob/user) diff --git a/code/game/machinery/limbgrower.dm b/code/game/machinery/limbgrower.dm index dc87322b57..ad286a52a7 100644 --- a/code/game/machinery/limbgrower.dm +++ b/code/game/machinery/limbgrower.dm @@ -52,23 +52,30 @@ /obj/machinery/limbgrower/ui_data(mob/user) var/list/data = list() - - for(var/datum/reagent/reagent_id in reagents.reagent_list) - var/list/reagent_data = list( - reagent_name = reagent_id.name, - reagent_amount = reagent_id.volume, - reagent_type = reagent_id.type - ) - data["reagents"] += list(reagent_data) - + if(reagents.reagent_list.len) + for(var/datum/reagent/reagent_id in reagents.reagent_list) + var/list/reagent_data = list( + reagent_name = reagent_id.name, + reagent_amount = reagent_id.volume, + reagent_type = reagent_id.type + ) + data["reagents"] += list(reagent_data) + else + data["reagents"] = list() data["total_reagents"] = reagents.total_volume data["max_reagents"] = reagents.maximum_volume data["busy"] = busy var/list/disk_data = list() disk_data["disk"] = dna_disk //Do i, the machine, have a disk? - disk_data["name"] = dna_disk?.fields["name"] //Name for the human saved if there is one + if(dna_disk) + if(dna_disk.fields["name"]) + disk_data["name"] = dna_disk.fields["name"] + else if(dna_disk.genetic_makeup_buffer["name"]) + disk_data["name"] = dna_disk.genetic_makeup_buffer["name"] + else + disk_data["name"] = "No name" + //Name for the human saved if there is one data["disk"] = disk_data - return data /obj/machinery/limbgrower/ui_static_data(mob/user) @@ -119,6 +126,18 @@ if (busy) to_chat(user, "\The [src] is busy. Please wait for completion of previous operation.") return + if(ispath(user_item.type, /obj/item/reagent_containers/blood) && user.a_intent != INTENT_HARM) + var/obj/item/reagent_containers/blood/B = user_item + if(!B.reagents.get_reagents()) + to_chat(user, "You can't fill [src] with an empty [B.name]!") + return + if(reagents.total_volume == reagents.maximum_volume) + to_chat(user, "\The [src] can't hold more blood!") + return + user.visible_message("[user] drains the [user_item] into [src] using the blood bag port on [src].", + "You drain the [user_item] into [src] using the blood bag port.") + B.reagents.trans_to(src, B.amount_per_transfer_from_this) + return if(default_deconstruction_screwdriver(user, "limbgrower_panelopen", "limbgrower_idleoff", user_item)) ui_close(user) @@ -180,7 +199,7 @@ for(var/reagent_id in consumed_reagents_list) consumed_reagents_list[reagent_id] *= production_coefficient if(!reagents.has_reagent(reagent_id, consumed_reagents_list[reagent_id])) - audible_message("\The [src] buzzes.") + audible_message("\The [src] buzzes and states \"INSUFFICENT REAGENTS\"") playsound(src, 'sound/machines/buzz-sigh.ogg', 50, FALSE) return @@ -206,17 +225,13 @@ * modified_consumed_reagents_list - the list of reagents we will consume on build, modified by the production coefficient. */ /obj/machinery/limbgrower/proc/build_item(list/modified_consumed_reagents_list) - for(var/reagent_id in modified_consumed_reagents_list) - if(!reagents.has_reagent(reagent_id, modified_consumed_reagents_list[reagent_id])) - audible_message("\The [src] buzzes.") - playsound(src, 'sound/machines/buzz-sigh.ogg', 50, FALSE) - break - - reagents.remove_reagent(reagent_id, modified_consumed_reagents_list[reagent_id]) - + reagent_usage(modified_consumed_reagents_list) var/built_typepath = being_built.build_path // If we have a bodypart, we need to initialize the limb on its own. Otherwise we can build it here. - if(ispath(built_typepath, /obj/item/bodypart)) + if(ispath(built_typepath, /mob/living/carbon/human/chestonly)) + if(!build_mob_chest(built_typepath, FALSE)) + reagent_usage(modified_consumed_reagents_list, FALSE) + else if(ispath(built_typepath, /obj/item/bodypart)) build_limb(built_typepath) else if(ispath(built_typepath, /obj/item/organ/genital)) //genitals are uhh... customizable build_genital(built_typepath) @@ -227,6 +242,25 @@ flick("limbgrower_unfill", src) icon_state = "limbgrower_idleoff" +/obj/machinery/limbgrower/proc/reagent_usage(modified_consumed_reagents_list, remove = TRUE) + // Apparently, having a boolean in a loop is worse than doing it twice + if(remove) + for(var/reagent_id in modified_consumed_reagents_list) + if(reagent_sanity_check(reagent_id, modified_consumed_reagents_list[reagent_id])) + reagents.remove_reagent(reagent_id, modified_consumed_reagents_list[reagent_id]) + else + for(var/reagent_id in modified_consumed_reagents_list) + if(reagent_sanity_check(reagent_id, modified_consumed_reagents_list[reagent_id])) + reagents.add_reagent(reagent_id, modified_consumed_reagents_list[reagent_id]) + + +/obj/machinery/limbgrower/proc/reagent_sanity_check(reagent_id, amount) + if(reagents.has_reagent(reagent_id, amount)) + return TRUE + audible_message("\The [src] buzzes, with a screen showing: INSUFFICENT REAGENTS") + playsound(src, 'sound/machines/buzz-sigh.ogg', 50, FALSE) + return FALSE + /* * The process of putting together a limb. * This is called from after we remove the reagents, so this proc is just initializing the limb type. @@ -306,6 +340,53 @@ else new built_typepath(loc) +/obj/machinery/limbgrower/proc/build_mob_chest(built_typepath) + // Create a mob with a chest, but nothing else + if(!ispath(built_typepath, /mob/living/carbon/human/chestonly)) + playsound(src, 'sound/machines/buzz-sigh.ogg', 50, FALSE) + visible_message(src, "Buzzes, an error screen appearing on its display.") + return FALSE + // Fields is from cloning, a much fuller scan, genetic_makeup_buffer is less so + var/dna_genetics = dna_disk?.genetic_makeup_buffer + var/dna_cloning = dna_disk?.fields + var/datum/species/selected = GLOB.species_datums[selected_category] + var/mob/living/carbon/human/chestonly/C = new(loc) + C.real_name = length(dna_genetics) ? dna_genetics["name"] : "Synthetic Humanoid #[rand(10000, 99999)]" + if(length(dna_cloning)) + C.hardset_dna(dna_cloning["UI"], dna_cloning["SE"], dna_cloning["name"], dna_cloning["blood_type"], dna_cloning["mrace"], dna_cloning["features"]) + else if(length(dna_genetics)) + C.hardset_dna(dna_genetics["UI"], null, dna_genetics["name"], dna_genetics["blood_type"]) + else + C.real_name = "Synthetic Humanoid #[rand(10000, 99999)]" + C.hair_style = "bald" + C.skin_tone = "albino" + C.set_species(selected) + C.set_resting(TRUE, TRUE) + // Don't want to cause it to deathgasp.. + C.stat = DEAD + C.adjustOxyLoss(200) + // Limb replacement causes toxloss, which can cause too much suffering for the doctor that I don't want + C.adjustCloneLoss(45) + C.med_hud_set_status() + C.med_hud_set_health() + C.underwear = "Nude" + C.undershirt = "Nude" + C.saved_underwear = "" + C.saved_undershirt = "" + + // Just enough to start reviving them, I hope + C.blood_volume = BLOOD_VOLUME_SURVIVE + // At some point, make a way to deal with species regenerate_organs + // Remove all the organs + for(var/organ in C.internal_organs) + var/obj/item/organ/O = organ + O.Remove(organ) + C.update_body(TRUE) + C.update_hair() + C.update_body_parts() + C.update_appearance() + return TRUE + /obj/machinery/limbgrower/RefreshParts() reagents.maximum_volume = 0 for(var/obj/item/reagent_containers/glass/our_beaker in component_parts) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 953d21d318..54bdeff4de 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -351,7 +351,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb return if(anchored) return - if(loc == user && current_equipped_slot && current_equipped_slot != SLOT_HANDS) + if(loc == user && current_equipped_slot && current_equipped_slot != ITEM_SLOT_HANDS) if(current_equipped_slot in user.check_obscured_slots()) to_chat(user, "You are unable to unequip that while wearing other garments over it!") return FALSE @@ -416,7 +416,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb return if(anchored) return - if(loc == user && current_equipped_slot && current_equipped_slot != SLOT_HANDS) + if(loc == user && current_equipped_slot && current_equipped_slot != ITEM_SLOT_HANDS) if(current_equipped_slot in user.check_obscured_slots()) to_chat(user, "You are unable to unequip that while wearing other garments over it!") return FALSE @@ -568,7 +568,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb //sometimes we only want to grant the item's action if it's equipped in a specific slot. /obj/item/proc/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_IN_BACKPACK || slot == SLOT_LEGCUFFED) //these aren't true slots, so avoid granting actions there + if(slot == ITEM_SLOT_BACKPACK || slot == ITEM_SLOT_LEGCUFFED) //these aren't true slots, so avoid granting actions there return FALSE return TRUE @@ -817,7 +817,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb if(ismob(location)) var/mob/M = location var/success = FALSE - if(src == M.get_item_by_slot(SLOT_WEAR_MASK)) + if(src == M.get_item_by_slot(ITEM_SLOT_MASK)) success = TRUE if(success) location = get_turf(M) diff --git a/code/game/objects/items/chrono_eraser.dm b/code/game/objects/items/chrono_eraser.dm index 04838103f9..682ce18215 100644 --- a/code/game/objects/items/chrono_eraser.dm +++ b/code/game/objects/items/chrono_eraser.dm @@ -34,7 +34,7 @@ user.put_in_hands(PA) /obj/item/chrono_eraser/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_BACK) + if(slot == ITEM_SLOT_BACK) return 1 /obj/item/gun/energy/chrono_gun diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index 702cbd8d56..8227097d8f 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -89,7 +89,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM ..() /obj/item/proc/help_light_cig(mob/living/M) - var/mask_item = M.get_item_by_slot(SLOT_WEAR_MASK) + var/mask_item = M.get_item_by_slot(ITEM_SLOT_MASK) if(istype(mask_item, /obj/item/clothing/mask/cigarette)) return mask_item @@ -130,7 +130,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM reagents.add_reagent_list(list_reagents) if(starts_lit) light() - AddComponent(/datum/component/knockoff,90,list(BODY_ZONE_PRECISE_MOUTH),list(SLOT_WEAR_MASK))//90% to knock off when wearing a mask + AddComponent(/datum/component/knockoff,90,list(BODY_ZONE_PRECISE_MOUTH),list(ITEM_SLOT_MASK))//90% to knock off when wearing a mask /obj/item/clothing/mask/cigarette/Destroy() STOP_PROCESSING(SSobj, src) @@ -819,7 +819,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/vape/equipped(mob/user, slot) . = ..() - if(slot == SLOT_WEAR_MASK) + if(slot == ITEM_SLOT_MASK) if(!screw) to_chat(user, "You start puffing on the vape.") reagents.reagents_holder_flags &= ~(NO_REACT) @@ -830,7 +830,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/vape/dropped(mob/user) . = ..() var/mob/living/carbon/C = user - if(C.get_item_by_slot(SLOT_WEAR_MASK) == src) + if(C.get_item_by_slot(ITEM_SLOT_MASK) == src) reagents.reagents_holder_flags |= NO_REACT STOP_PROCESSING(SSobj, src) diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index 0570de6bcf..476758efee 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -80,13 +80,13 @@ /obj/item/defibrillator/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags) if(loc == user) if(slot_flags == ITEM_SLOT_BACK) - if(user.get_item_by_slot(SLOT_BACK) == src) + if(user.get_item_by_slot(ITEM_SLOT_BACK) == src) ui_action_click() else to_chat(user, "Put the defibrillator on your back first!") else if(slot_flags == ITEM_SLOT_BELT) - if(user.get_item_by_slot(SLOT_BELT) == src) + if(user.get_item_by_slot(ITEM_SLOT_BELT) == src) ui_action_click() else to_chat(user, "Strap the defibrillator's belt on first!") @@ -182,7 +182,7 @@ /obj/item/defibrillator/equipped(mob/user, slot) ..() - if((slot_flags == ITEM_SLOT_BACK && slot != SLOT_BACK) || (slot_flags == ITEM_SLOT_BELT && slot != SLOT_BELT)) + if((slot_flags == ITEM_SLOT_BACK && slot != ITEM_SLOT_BACK) || (slot_flags == ITEM_SLOT_BELT && slot != ITEM_SLOT_BELT)) remove_paddles(user) update_power() diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 2339e88a76..1a130998b6 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -369,6 +369,10 @@ GLOBAL_LIST_EMPTY(PDAs) dat += "
  • [PDAIMG(rdoor)]Toggle Remote Door
  • " if (cartridge.access & CART_DRONEPHONE) dat += "
  • [PDAIMG(dronephone)]Drone Phone
  • " + if (cartridge.access & CART_BARTENDER) + dat += "
  • [PDAIMG(bucket)]Drink Recipe Browser
  • " + if (cartridge.access & CART_CHEMISTRY) + dat += "
  • [PDAIMG(bucket)]Chemistry Recipe Browser
  • " dat += "
  • [PDAIMG(atmos)]Atmospheric Scan
  • " dat += "
  • [PDAIMG(flashlight)][fon ? "Disable" : "Enable"] Flashlight
  • " if (pai) @@ -705,6 +709,16 @@ GLOBAL_LIST_EMPTY(PDAs) if(T) pai.forceMove(T) +//DRINK RECIPE BROWSER============================= + if("Drink Recipe Browser") + if(cartridge && cartridge.access & CART_BARTENDER) + recipe_search(U, GLOB.drink_reactions_list) + +//CHEMISTRY RECIPE BROWSER + if("Chemistry Recipe Browser") + if(cartridge && cartridge.access & CART_CHEMISTRY) + recipe_search(U, GLOB.normalized_chemical_reactions_list) + //LINK FUNCTIONS=================================== else//Cartridge menu linking diff --git a/code/game/objects/items/devices/PDA/PDA_types.dm b/code/game/objects/items/devices/PDA/PDA_types.dm index 23ebaec3c2..8fcd97c261 100644 --- a/code/game/objects/items/devices/PDA/PDA_types.dm +++ b/code/game/objects/items/devices/PDA/PDA_types.dm @@ -222,6 +222,7 @@ /obj/item/pda/bar name = "bartender PDA" icon_state = "pda-bartender" + default_cartridge = /obj/item/cartridge/bartender inserted_item = /obj/item/pen/fountain /obj/item/pda/atmos diff --git a/code/game/objects/items/devices/PDA/cart.dm b/code/game/objects/items/devices/PDA/cart.dm index 4ca0b86bc0..ca72e3371b 100644 --- a/code/game/objects/items/devices/PDA/cart.dm +++ b/code/game/objects/items/devices/PDA/cart.dm @@ -13,6 +13,8 @@ #define CART_QUARTERMASTER (1<<12) #define CART_HYDROPONICS (1<<13) #define CART_DRONEPHONE (1<<14) +#define CART_BARTENDER (1<<15) +#define CART_CHEMISTRY (1<<16) /obj/item/cartridge @@ -77,7 +79,7 @@ /obj/item/cartridge/chemistry name = "\improper ChemWhiz cartridge" icon_state = "cart-chem" - access = CART_REAGENT_SCANNER + access = CART_REAGENT_SCANNER | CART_CHEMISTRY bot_access_flags = MED_BOT /obj/item/cartridge/security @@ -190,6 +192,12 @@ bot_access_flags = SEC_BOT | MULE_BOT | FLOOR_BOT | CLEAN_BOT | MED_BOT | FIRE_BOT spam_enabled = 1 +/obj/item/cartridge/bartender + name = "\improper B.O.O.Z.E cartridge" + desc = "Now with 12% alcohol!" + icon_state = "cart-bar" + access = CART_BARTENDER + /obj/item/cartridge/captain/New() ..() radio = new(src) diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index 365446bad9..a3de2d822f 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -19,7 +19,7 @@ /obj/item/megaphone/equipped(mob/M, slot) . = ..() - if (slot == SLOT_HANDS) + if (slot == ITEM_SLOT_HANDS) RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index c51edc8106..2c55bbf8e4 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -156,7 +156,7 @@ category = list("hacked", "Misc") /obj/item/electropack/shockcollar/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags) - if(loc == user && user.get_item_by_slot(SLOT_NECK)) + if(loc == user && user.get_item_by_slot(ITEM_SLOT_NECK)) to_chat(user, "The collar is fastened tight! You'll need help taking this off!") return return ..() @@ -167,7 +167,7 @@ if(isliving(loc) && on) //the "on" arg is currently useless var/mob/living/L = loc - if(!L.get_item_by_slot(SLOT_NECK)) //**properly** stops pocket shockers + if(!L.get_item_by_slot(ITEM_SLOT_NECK)) //**properly** stops pocket shockers return if(shock_cooldown == TRUE) return diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 58a3eb312b..6feb8bf663 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -56,7 +56,7 @@ GLOBAL_LIST_INIT(channel_tokens, list( /obj/item/radio/headset/ComponentInitialize() . = ..() if (bowman) - AddComponent(/datum/component/wearertargeting/earprotection, list(SLOT_EARS)) + AddComponent(/datum/component/wearertargeting/earprotection, list(ITEM_SLOT_EARS)) /obj/item/radio/headset/Initialize() . = ..() @@ -373,4 +373,4 @@ GLOBAL_LIST_INIT(channel_tokens, list( name = replacetext(name,"headset", "bowman headset") desc = "[desc] Protects ears from flashbangs." bowman = TRUE - AddComponent(/datum/component/wearertargeting/earprotection, list(SLOT_EARS)) + AddComponent(/datum/component/wearertargeting/earprotection, list(ITEM_SLOT_EARS)) diff --git a/code/game/objects/items/devices/reverse_bear_trap.dm b/code/game/objects/items/devices/reverse_bear_trap.dm index de7e3d2812..810f2150e6 100644 --- a/code/game/objects/items/devices/reverse_bear_trap.dm +++ b/code/game/objects/items/devices/reverse_bear_trap.dm @@ -48,7 +48,7 @@ /obj/item/reverse_bear_trap/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags) if(iscarbon(user)) var/mob/living/carbon/C = user - if(C.get_item_by_slot(SLOT_HEAD) == src) + if(C.get_item_by_slot(ITEM_SLOT_HEAD) == src) if(HAS_TRAIT_FROM(src, TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) && !struggling) struggling = TRUE var/fear_string @@ -82,26 +82,26 @@ ..() /obj/item/reverse_bear_trap/attack(mob/living/target, mob/living/user) - if(target.get_item_by_slot(SLOT_HEAD)) + if(target.get_item_by_slot(ITEM_SLOT_HEAD)) to_chat(user, "Remove [target.p_their()] headgear first!") return target.visible_message("[user] starts forcing [src] onto [target]'s head!", \ "[target] starts forcing [src] onto your head!", "You hear clanking.") to_chat(user, "You start forcing [src] onto [target]'s head...") - if(!do_after(user, 30, target = target) || target.get_item_by_slot(SLOT_HEAD)) + if(!do_after(user, 30, target = target) || target.get_item_by_slot(ITEM_SLOT_HEAD)) return target.visible_message("[user] forces and locks [src] onto [target]'s head!", \ "[target] locks [src] onto your head!", "You hear a click, and then a timer ticking down.") to_chat(user, "You force [src] onto [target]'s head and click the padlock shut.") user.dropItemToGround(src) - target.equip_to_slot_if_possible(src, SLOT_HEAD) + target.equip_to_slot_if_possible(src, ITEM_SLOT_HEAD) arm() notify_ghosts("[user] put a reverse bear trap on [target]!", source = src, action = NOTIFY_ORBIT, ghost_sound = 'sound/machines/beep.ogg') /obj/item/reverse_bear_trap/proc/snap() reset() var/mob/living/carbon/human/H = loc - if(!istype(H) || H.get_item_by_slot(SLOT_HEAD) != src) + if(!istype(H) || H.get_item_by_slot(ITEM_SLOT_HEAD) != src) visible_message("[src]'s jaws snap open with an ear-piercing crack!") playsound(src, 'sound/effects/snap.ogg', 75, TRUE) else diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index a353a2b76b..0ca2e40b45 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -436,7 +436,7 @@ GENETICS SCANNER if(R) blood_type = R.name - + if((C.scan_blood_volume() + C.integrating_blood) <= (BLOOD_VOLUME_SAFE * C.blood_ratio) && (C.scan_blood_volume() + C.integrating_blood) > (BLOOD_VOLUME_OKAY*C.blood_ratio)) msg += "LOW [HAS_TRAIT(C, TRAIT_ROBOTIC_ORGANISM) ? "coolant" : "blood"] level [blood_percent] %, [C.scan_blood_volume()] cl[C.integrating_blood? ", with [integrated_blood_percent] % of it integrating, [C.integrating_blood] cl " : ""]. type: [blood_type]\n" else if((C.scan_blood_volume() + C.integrating_blood) <= (BLOOD_VOLUME_OKAY * C.blood_ratio)) diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index ac79b3b887..11900d8e42 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -208,7 +208,7 @@ effective or pretty fucking useless. actions_types = list(/datum/action/item_action/toggle) /obj/item/shadowcloak/ui_action_click(mob/user) - if(user.get_item_by_slot(SLOT_BELT) == src) + if(user.get_item_by_slot(ITEM_SLOT_BELT) == src) if(!on) Activate(usr) else @@ -216,7 +216,7 @@ effective or pretty fucking useless. return /obj/item/shadowcloak/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_BELT) + if(slot == ITEM_SLOT_BELT) return 1 /obj/item/shadowcloak/proc/Activate(mob/living/carbon/human/user) @@ -238,11 +238,11 @@ effective or pretty fucking useless. /obj/item/shadowcloak/dropped(mob/user) ..() - if(user && user.get_item_by_slot(SLOT_BELT) != src) + if(user && user.get_item_by_slot(ITEM_SLOT_BELT) != src) Deactivate() /obj/item/shadowcloak/process() - if(user.get_item_by_slot(SLOT_BELT) != src) + if(user.get_item_by_slot(ITEM_SLOT_BELT) != src) Deactivate() return var/turf/T = get_turf(src) diff --git a/code/game/objects/items/fluff.dm b/code/game/objects/items/fluff.dm index 7105e57c30..0df8d5b447 100644 --- a/code/game/objects/items/fluff.dm +++ b/code/game/objects/items/fluff.dm @@ -6,7 +6,7 @@ // 1) Tennis balls, lines 39 - 99 // 2) Chew bones, lines 101 - 138 // 3) Frisbee, lines 140 - 166 -*/ +*/ /obj/item/toy/fluff name = "Fluff Item" diff --git a/code/game/objects/items/granters.dm b/code/game/objects/items/granters.dm index d1450c2685..c084b90d6f 100644 --- a/code/game/objects/items/granters.dm +++ b/code/game/objects/items/granters.dm @@ -336,7 +336,7 @@ var/obj/item/clothing/magichead = new /obj/item/clothing/mask/horsehead/cursed(user.drop_location()) if(!user.dropItemToGround(user.wear_mask)) qdel(user.wear_mask) - user.equip_to_slot_if_possible(magichead, SLOT_WEAR_MASK, TRUE, TRUE) + user.equip_to_slot_if_possible(magichead, ITEM_SLOT_MASK, TRUE, TRUE) qdel(src) else to_chat(user,"I say thee neigh") //It still lives here diff --git a/code/game/objects/items/inducer.dm b/code/game/objects/items/inducer.dm index ddcd35f834..a5913c308d 100644 --- a/code/game/objects/items/inducer.dm +++ b/code/game/objects/items/inducer.dm @@ -188,7 +188,7 @@ icon_state = "inducer-combat" item_state = "inducer-combat" w_class = WEIGHT_CLASS_BULKY - slot_flags = SLOT_BELT + slot_flags = ITEM_SLOT_BELT desc = "A tool for inductively charging internal power cells. This one has been modified and upgraded to be able to charge into guns as well as normal electronics." cell_type = /obj/item/stock_parts/cell/hyper powertransfer = 1300 diff --git a/code/game/objects/items/shooting_range.dm b/code/game/objects/items/shooting_range.dm index ced0ee3160..989cc5a73e 100644 --- a/code/game/objects/items/shooting_range.dm +++ b/code/game/objects/items/shooting_range.dm @@ -34,6 +34,7 @@ /obj/item/target/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags) if(pinnedLoc) pinnedLoc.removeTarget(user) + . = ..() /obj/item/target/syndicate icon_state = "target_s" diff --git a/code/game/objects/items/storage/bags.dm b/code/game/objects/items/storage/bags.dm index 6bb501807d..56ad6c2534 100644 --- a/code/game/objects/items/storage/bags.dm +++ b/code/game/objects/items/storage/bags.dm @@ -108,7 +108,7 @@ desc = "This little bugger can be used to store and transport ores." icon = 'icons/obj/mining.dmi' icon_state = "satchel" - slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_POCKET + slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_POCKETS w_class = WEIGHT_CLASS_NORMAL component_type = /datum/component/storage/concrete/stack var/spam_protection = FALSE //If this is TRUE, the holder won't receive any messages when they fail to pick up ore through crossing it @@ -400,7 +400,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "bag" desc = "A bag for storing pills, patches, and bottles." - slot_flags = ITEM_SLOT_BELT|ITEM_SLOT_POCKET + slot_flags = ITEM_SLOT_BELT|ITEM_SLOT_POCKETS resistance_flags = FLAMMABLE /obj/item/storage/bag/chemistry/ComponentInitialize() @@ -420,7 +420,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "biobag" desc = "A bag for the safe transportation and disposal of biowaste and other biological materials." - slot_flags = ITEM_SLOT_BELT|ITEM_SLOT_POCKET + slot_flags = ITEM_SLOT_BELT|ITEM_SLOT_POCKETS resistance_flags = FLAMMABLE /obj/item/storage/bag/bio/ComponentInitialize() @@ -451,7 +451,7 @@ desc = "A pouch for your ammo that goes in your pocket." icon = 'icons/obj/items_and_weapons.dmi' icon_state = "ammopouch" - slot_flags = ITEM_SLOT_POCKET + slot_flags = ITEM_SLOT_POCKETS w_class = WEIGHT_CLASS_BULKY resistance_flags = FLAMMABLE @@ -472,7 +472,7 @@ Bag for holding materials desc = "A pouch for sheets and RCD ammunition that manages to hang where you would normally put things in your pocket." icon = 'icons/obj/items_and_weapons.dmi' icon_state = "materialpouch" - slot_flags = ITEM_SLOT_POCKET + slot_flags = ITEM_SLOT_POCKETS w_class = WEIGHT_CLASS_BULKY resistance_flags = FLAMMABLE diff --git a/code/game/objects/items/storage/book.dm b/code/game/objects/items/storage/book.dm index 476f35fe4c..1a3b40d1da 100644 --- a/code/game/objects/items/storage/book.dm +++ b/code/game/objects/items/storage/book.dm @@ -73,7 +73,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "bible", var/mob/living/carbon/human/H = usr H.dna.add_mutation(CLOWNMUT) H.dna.add_mutation(SMILE) - H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), SLOT_WEAR_MASK) + H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), ITEM_SLOT_MASK) GLOB.bible_icon_state = icon_state GLOB.bibleitemstates = item_state diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm index f68084d63a..111e3c96a0 100644 --- a/code/game/objects/items/storage/fancy.dm +++ b/code/game/objects/items/storage/fancy.dm @@ -248,10 +248,10 @@ return ..() var/obj/item/clothing/mask/cigarette/cig = locate(/obj/item/clothing/mask/cigarette) in contents if(cig) - if(!user.wear_mask && !(SLOT_WEAR_MASK in M.check_obscured_slots())) + if(!user.wear_mask && !(ITEM_SLOT_MASK in M.check_obscured_slots())) var/obj/item/clothing/mask/cigarette/W = cig SEND_SIGNAL(src, COMSIG_TRY_STORAGE_TAKE, W, M) - M.equip_to_slot_if_possible(W, SLOT_WEAR_MASK) + M.equip_to_slot_if_possible(W, ITEM_SLOT_MASK) contents -= W to_chat(user, "You take \a [W] out of the pack.") else diff --git a/code/game/objects/items/tanks/watertank.dm b/code/game/objects/items/tanks/watertank.dm index fffcd6dada..88131fb197 100644 --- a/code/game/objects/items/tanks/watertank.dm +++ b/code/game/objects/items/tanks/watertank.dm @@ -58,7 +58,7 @@ /obj/item/watertank/equipped(mob/user, slot) ..() - if(slot != SLOT_BACK) + if(slot != ITEM_SLOT_BACK) remove_noz() /obj/item/watertank/proc/remove_noz() @@ -348,14 +348,14 @@ toggle_injection() /obj/item/reagent_containers/chemtank/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_BACK) + if(slot == ITEM_SLOT_BACK) return 1 /obj/item/reagent_containers/chemtank/proc/toggle_injection() var/mob/living/carbon/human/user = usr if(!istype(user)) return - if (user.get_item_by_slot(SLOT_BACK) != src) + if (user.get_item_by_slot(ITEM_SLOT_BACK) != src) to_chat(user, "The chemtank needs to be on your back before you can activate it!") return if(on) diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index 3fd31941f3..b00d736282 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -1229,7 +1229,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/item/slapper/on_offered(mob/living/carbon/offerer) . = TRUE - + if(!(locate(/mob/living/carbon) in orange(1, offerer))) visible_message(span_danger("[offerer] raises [offerer.p_their()] arm, looking around for a high-five, but there's no one around!"), \ span_warning("You post up, looking for a high-five, but finding no one within range!"), null, 2) diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 7e3d0262e1..5b4b3a229f 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -301,11 +301,10 @@ if((mover.pass_flags & PASSGRILLE) || istype(mover, /obj/item/projectile)) return prob(girderpasschance) -/obj/structure/girder/CanAStarPass(ID, dir, caller) +/obj/structure/girder/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) . = !density - if(ismovable(caller)) - var/atom/movable/mover = caller - . = . || (mover.pass_flags & PASSGRILLE) + if(istype(caller)) + . = . || (caller.pass_flags & PASSGRILLE) /obj/structure/girder/deconstruct(disassembled = TRUE) if(!(flags_1 & NODECONSTRUCT_1)) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index 29817e3d58..ccac4ed9da 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -130,11 +130,10 @@ if(!. && istype(mover, /obj/item/projectile)) return prob(30) -/obj/structure/grille/CanAStarPass(ID, dir, caller) +/obj/structure/grille/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) . = !density - if(ismovable(caller)) - var/atom/movable/mover = caller - . = . || (mover.pass_flags & PASSGRILLE) + if(istype(caller)) + . = . || (caller.pass_flags & PASSGRILLE) /obj/structure/grille/attackby(obj/item/W, mob/user, params) user.DelayNextAction(CLICK_CD_MELEE) diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index f98151e76a..fb3964ab54 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -369,4 +369,11 @@ GLOBAL_LIST_EMPTY(crematoriums) if(.) return if(locate(/obj/structure/table) in get_turf(mover)) - return TRUE + return 1 + else + return 0 + +/obj/structure/tray/m_tray/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) + . = !density + if(istype(caller)) + . = . || (caller.pass_flags & PASSTABLE) diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index 4e916d57a6..efb9a3fe01 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -56,18 +56,18 @@ return FALSE return TRUE -/obj/structure/plasticflaps/CanAStarPass(ID, to_dir, caller) +/obj/structure/plasticflaps/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) if(isliving(caller)) if(isbot(caller)) - return 1 + return TRUE - var/mob/living/M = caller - if(!(SEND_SIGNAL(M, COMSIG_CHECK_VENTCRAWL)) && M.mob_size != MOB_SIZE_TINY) - return 0 - var/atom/movable/M = caller - if(M && M.pulling) - return CanAStarPass(ID, to_dir, M.pulling) - return 1 //diseases, stings, etc can pass + var/mob/living/living_caller = caller + if(!(SEND_SIGNAL(living_caller, COMSIG_CHECK_VENTCRAWL)) && living_caller.mob_size != MOB_SIZE_TINY) + return FALSE + + if(caller?.pulling) + return CanAStarPass(ID, to_dir, caller.pulling) + return TRUE //diseases, stings, etc can pass /obj/structure/plasticflaps/CanAllowThrough(atom/movable/A, turf/T) . = ..() diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 2435e9a5f6..d1f8acc98b 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -108,11 +108,10 @@ if(locate(/obj/structure/table) in get_turf(mover)) return TRUE -/obj/structure/table/CanAStarPass(ID, dir, caller) +/obj/structure/table/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) . = !density - if(ismovable(caller)) - var/atom/movable/mover = caller - . = . || (mover.pass_flags & PASSTABLE) + if(istype(caller)) + . = . || (caller.pass_flags & PASSTABLE) /obj/structure/table/proc/tableplace(mob/living/user, mob/living/pushed_mob) pushed_mob.forceMove(src.loc) @@ -701,6 +700,11 @@ else return 0 +/obj/structure/rack/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) + . = !density + if(istype(caller)) + . = . || (caller.pass_flags & PASSTABLE) + /obj/structure/rack/MouseDrop_T(obj/O, mob/user) . = ..() if ((!( istype(O, /obj/item) ) || user.get_active_held_item() != O)) diff --git a/code/game/objects/structures/target_stake.dm b/code/game/objects/structures/target_stake.dm index c5f3a089f7..dc920556f7 100644 --- a/code/game/objects/structures/target_stake.dm +++ b/code/game/objects/structures/target_stake.dm @@ -58,13 +58,10 @@ pinned_target.nullPinnedLoc() nullPinnedTarget() handle_density() - if(ishuman(user)) - if(!user.get_active_held_item()) - user.put_in_hands(pinned_target) - to_chat(user, "You take the target out of the stake.") - else - pinned_target.forceMove(user.drop_location()) - to_chat(user, "You take the target out of the stake.") + pinned_target.forceMove(get_turf(src)) + to_chat(user, "You take the target out of the stake.") + if(user.can_hold_items()) + user.put_in_hands(pinned_target) /obj/structure/target_stake/bullet_act(obj/item/projectile/P) if(pinned_target) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index a73de2d367..32690b7c14 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -575,13 +575,13 @@ GLOBAL_LIST_EMPTY(electrochromatic_window_lookup) /obj/structure/window/get_dumping_location(obj/item/storage/source,mob/user) return null -/obj/structure/window/CanAStarPass(ID, to_dir) +/obj/structure/window/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) if(!density) - return 1 + return TRUE if((dir == FULLTILE_WINDOW_DIR) || (dir == to_dir)) - return 0 + return FALSE - return 1 + return TRUE /obj/structure/window/GetExplosionBlock() return reinf && fulltile ? real_explosion_block : 0 diff --git a/code/game/turfs/simulated/floor.dm b/code/game/turfs/simulated/floor.dm index 9b6767b874..5e2b5284e1 100644 --- a/code/game/turfs/simulated/floor.dm +++ b/code/game/turfs/simulated/floor.dm @@ -11,6 +11,7 @@ barefootstep = FOOTSTEP_HARD_BAREFOOT clawfootstep = FOOTSTEP_HARD_CLAW heavyfootstep = FOOTSTEP_GENERIC_HEAVY + flags_1 = NO_SCREENTIPS_1 /// Minimum explosion power to break tile var/explosion_power_break_tile = EXPLOSION_POWER_FLOOR_TILE_BREAK diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index c831faca61..b23ce17c72 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -125,8 +125,12 @@ if(istype(W, /obj/item/stack/tile/material)) var/turf/newturf = PlaceOnTop(/turf/open/floor/material, flags = CHANGETURF_INHERIT_AIR) newturf.set_custom_materials(W.custom_materials) + if(length(C.atom_colours) && C.atom_colours[WASHABLE_COLOUR_PRIORITY] != null) + newturf.add_atom_colour(C.atom_colours[WASHABLE_COLOUR_PRIORITY], FIXED_COLOUR_PRIORITY) else if(W.turf_type) var/turf/open/floor/T = PlaceOnTop(W.turf_type, flags = CHANGETURF_INHERIT_AIR) + if(length(C.atom_colours) && C.atom_colours[WASHABLE_COLOUR_PRIORITY] != null) + T.add_atom_colour(C.atom_colours[WASHABLE_COLOUR_PRIORITY], FIXED_COLOUR_PRIORITY) if(istype(W, /obj/item/stack/tile/light)) //TODO: get rid of this ugly check somehow var/obj/item/stack/tile/light/L = W var/turf/open/floor/light/F = T diff --git a/code/game/turfs/simulated/lava.dm b/code/game/turfs/simulated/lava.dm index 8d7da15761..5da3d079c2 100644 --- a/code/game/turfs/simulated/lava.dm +++ b/code/game/turfs/simulated/lava.dm @@ -153,8 +153,8 @@ continue if(iscarbon(L)) var/mob/living/carbon/C = L - var/obj/item/clothing/S = C.get_item_by_slot(SLOT_WEAR_SUIT) - var/obj/item/clothing/H = C.get_item_by_slot(SLOT_HEAD) + var/obj/item/clothing/S = C.get_item_by_slot(ITEM_SLOT_OCLOTHING) + var/obj/item/clothing/H = C.get_item_by_slot(ITEM_SLOT_HEAD) if(S && H && S.clothing_flags & LAVAPROTECT && H.clothing_flags & LAVAPROTECT) return diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index c87d386b5f..526193c72c 100755 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -623,3 +623,23 @@ GLOBAL_LIST_EMPTY(station_turfs) var/obj/machinery/door/D = locate() in src if(D?.density) . += D.opacity? 29 : 19 // glass doors are slightly more resistant to screaming + +/** + * Returns adjacent turfs to this turf that are reachable, in all cardinal directions + * + * Arguments: + * * caller: The movable, if one exists, being used for mobility checks to see what tiles it can reach + * * ID: An ID card that decides if we can gain access to doors that would otherwise block a turf + * * simulated_only: Do we only worry about turfs with simulated atmos, most notably things that aren't space? +*/ +/turf/proc/reachableAdjacentTurfs(caller, ID, simulated_only) + var/static/space_type_cache = typecacheof(/turf/open/space) + . = list() + + for(var/iter_dir in GLOB.cardinals) + var/turf/turf_to_check = get_step(src,iter_dir) + if(!turf_to_check || (simulated_only && space_type_cache[turf_to_check.type])) + continue + if(turf_to_check.density || LinkBlockedWithAccess(turf_to_check, caller, ID)) + continue + . += turf_to_check diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index d56e78c9fb..d3dfe3d10e 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -25,7 +25,9 @@ to_chat(usr, "You seem to be selecting a mob that doesn't exist anymore.", confidential = TRUE) return - var/body = "Options for [M.key]" +//ambition start + var/list/body = list("Options for [M.key]") +//ambition end body += "Options panel for [M]" if(M.client) body += " played by [M.client] " @@ -125,6 +127,10 @@ body += "Subtle message | " // body += "Play sound to | " body += "Language Menu" +//ambition start + if(M.mind) + body += " | Objective-Ambition Menu" +//ambition end if (M.client) if(!isnewplayer(M)) @@ -206,7 +212,11 @@ body += "
    " body += "" - usr << browse(body, "window=adminplayeropts-[REF(M)];size=550x515") +//ambition start + var/datum/browser/popup = new(usr, "adminplayeropts-[REF(M)]", "Player Panel", nwidth = 550, nheight = 515) + popup.set_content(body.Join()) + popup.open() +//ambition end SSblackbox.record_feedback("tally", "admin_verb", 1, "Player Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/playtimes.dm b/code/modules/admin/playtimes.dm new file mode 100644 index 0000000000..7cf24d9746 --- /dev/null +++ b/code/modules/admin/playtimes.dm @@ -0,0 +1,68 @@ +/datum/player_playtime/New(mob/viewer) + ui_interact(viewer) + +/datum/player_playtime/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "PlayerPlaytimes", "Player Playtimes") + ui.open() + +/datum/player_playtime/ui_state(mob/user) + return GLOB.admin_state + +/datum/player_playtime/ui_data(mob/user) + var/list/data = list() + + var/list/clients = list() + for(var/client/C in GLOB.clients) + var/list/client = list() + + client["ckey"] = C.ckey + client["playtime"] = C.get_exp_living(TRUE) + client["playtime_hours"] = C.get_exp_living() + + var/mob/M = C.mob + client["observer"] = isobserver(M) + client["ingame"] = !isnewplayer(M) + client["name"] = M.real_name + var/nnpa = CONFIG_GET(number/notify_new_player_age) + if(nnpa >= 0) + if(C.account_age >= 0 && (C.account_age < CONFIG_GET(number/notify_new_player_age))) + client["new_account"] = "New BYOND account [C.account_age] day[(C.account_age==1?"":"s")] old, created on [C.account_join_date]" + + clients += list(client) + + clients = sortList(clients, /proc/cmp_playtime) + data["clients"] = clients + return data + +/datum/player_playtime/ui_act(action, params) + if(..()) + return + + switch(action) + if("view_playtime") + var/mob/target = get_mob_by_ckey(params["ckey"]) + usr.client.holder.cmd_show_exp_panel(target.client) + if("admin_pm") + usr.client.cmd_admin_pm(params["ckey"]) + if("player_panel") + var/mob/target = get_mob_by_ckey(params["ckey"]) + usr.client.holder.show_player_panel(target) + if("view_variables") + var/mob/target = get_mob_by_ckey(params["ckey"]) + usr.client.debug_variables(target) + if("observe") + if(!isobserver(usr) && !check_rights(R_ADMIN)) + return + + var/mob/target = get_mob_by_key(params["ckey"]) + if(!target) + to_chat(usr, "Player not found.") + return + + var/client/C = usr.client + if(!isobserver(usr) && !C.admin_ghost()) + return + var/mob/dead/observer/A = C.mob + A.ManualFollow(target) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 17bad60945..d134853494 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1686,8 +1686,8 @@ if(ishuman(L)) var/mob/living/carbon/human/observer = L - observer.equip_to_slot_or_del(new /obj/item/clothing/under/suit/black(observer), SLOT_W_UNIFORM) - observer.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/black(observer), SLOT_SHOES) + observer.equip_to_slot_or_del(new /obj/item/clothing/under/suit/black(observer), ITEM_SLOT_ICLOTHING) + observer.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/black(observer), ITEM_SLOT_FEET) L.Unconscious(100) sleep(5) L.forceMove(pick(GLOB.tdomeobserve)) @@ -2022,6 +2022,18 @@ var/mob/M = locate(href_list["HeadsetMessage"]) usr.client.admin_headset_message(M) +//ambition start + else if(href_list["ObjectiveRequest"]) + if(!check_rights(R_ADMIN)) + return + var/datum/mind/requesting_mind = locate(href_list["ObjectiveRequest"]) + if(!istype(requesting_mind) || QDELETED(requesting_mind)) + to_chat(usr, "This mind reference is no longer valid. It has probably since been destroyed.") + return + requesting_mind.do_edit_objectives_ambitions() + return +//ambition end + else if(href_list["reject_custom_name"]) if(!check_rights(R_ADMIN)) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 138913b3a4..7957a6d638 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -202,7 +202,7 @@ id.forceMove(W) W.update_icon() else - H.equip_to_slot(id,SLOT_WEAR_ID) + H.equip_to_slot(id,ITEM_SLOT_ID) else alert("Invalid mob") diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index a0a1da9584..9e201ec360 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -1557,6 +1557,7 @@ Traitors and the like can also be revived with the previous role mostly intact. /client/proc/cmd_admin_check_player_exp() //Allows admins to determine who the newer players are. set category = "Admin" set name = "Player Playtime" + if(!check_rights(R_ADMIN)) return @@ -1564,12 +1565,7 @@ Traitors and the like can also be revived with the previous role mostly intact. to_chat(usr, "Tracking is disabled in the server configuration file.") return - var/list/msg = list() - msg += "Playtime ReportPlaytime:
    " - src << browse(msg.Join(), "window=Player_playtime_check") + new /datum/player_playtime(usr) /obj/effect/temp_visual/fireball icon = 'icons/obj/wizard.dmi' diff --git a/code/modules/antagonists/_common/antag_datum.dm b/code/modules/antagonists/_common/antag_datum.dm index 2f7e160e6e..a1b1a1288e 100644 --- a/code/modules/antagonists/_common/antag_datum.dm +++ b/code/modules/antagonists/_common/antag_datum.dm @@ -50,6 +50,10 @@ GLOBAL_LIST_EMPTY(antagonists) var/show_name_in_check_antagonists = FALSE /// Should this antagonist be shown as antag to ghosts? Shouldn't be used for stealthy antagonists like traitors var/show_to_ghosts = FALSE +//ambition start + /// Lazy list for antagonists to request the admins objectives. + var/list/requested_objective_changes +//ambition end /* CIT SPECIFIC */ /// Quirks that will be removed upon gaining this antag. Pacifist and mute are default. @@ -78,7 +82,9 @@ GLOBAL_LIST_EMPTY(antagonists) if(!owner) stack_trace("Destroy()ing antagonist datum when it has no owner.") else - LAZYREMOVE(owner.antag_datums, src) +//ambition start + owner?.do_remove_antag_datum(src) +//ambition end owner = null return ..() @@ -230,7 +236,7 @@ GLOBAL_LIST_EMPTY(antagonists) remove_innate_effects() clear_antag_moodies() - LAZYREMOVE(owner.antag_datums, src) + owner.do_remove_antag_datum(src) // cit skill for(var/A in skill_modifiers) owner.remove_skill_modifier(GET_SKILL_MOD_ID(A, type)) @@ -524,3 +530,33 @@ GLOBAL_LIST_EMPTY(antagonists) /datum/action/antag_info/IsAvailable() return TRUE + +///Clears change requests from deleted objectives to avoid broken references. +/datum/antagonist/proc/clean_request_from_del_objective(datum/objective/source, force) + var/objective_reference = REF(source) + for(var/uid in requested_objective_changes) + var/list/change_request = requested_objective_changes[uid] + if(change_request["target"] != objective_reference) + continue + LAZYREMOVE(requested_objective_changes, uid) + + +/datum/antagonist/proc/add_objective_change(uid, list/additions) + LAZYADD(requested_objective_changes, uid) + var/datum/objective/request_target = additions["target"] + if(!ispath(request_target)) + request_target = locate(request_target) in objectives + if(istype(request_target)) + RegisterSignal(request_target, COMSIG_PARENT_QDELETING, .proc/clean_request_from_del_objective) + requested_objective_changes[uid] = additions + + +/datum/antagonist/proc/remove_objective_change(uid) + if(!LAZYACCESS(requested_objective_changes, uid)) + return + var/datum/objective/request_target = requested_objective_changes[uid]["target"] + if(!ispath(request_target)) + request_target = locate(request_target) in objectives + if(istype(request_target)) + UnregisterSignal(request_target, COMSIG_PARENT_QDELETING) + LAZYREMOVE(requested_objective_changes, uid) diff --git a/code/modules/antagonists/abductor/equipment/abduction_gear.dm b/code/modules/antagonists/abductor/equipment/abduction_gear.dm index 8484732d8d..011d175cfa 100644 --- a/code/modules/antagonists/abductor/equipment/abduction_gear.dm +++ b/code/modules/antagonists/abductor/equipment/abduction_gear.dm @@ -62,7 +62,7 @@ A.UpdateButtonIcon() /obj/item/clothing/suit/armor/abductor/vest/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_WEAR_SUIT) //we only give the mob the ability to activate the vest if he's actually wearing it. + if(slot == ITEM_SLOT_OCLOTHING) //we only give the mob the ability to activate the vest if he's actually wearing it. return TRUE /obj/item/clothing/suit/armor/abductor/vest/proc/SetDisguise(datum/icon_snapshot/entry) diff --git a/code/modules/antagonists/blob/blob/theblob.dm b/code/modules/antagonists/blob/blob/theblob.dm index 5d8086816a..924553d996 100644 --- a/code/modules/antagonists/blob/blob/theblob.dm +++ b/code/modules/antagonists/blob/blob/theblob.dm @@ -71,6 +71,11 @@ /obj/structure/blob/CanAtmosPass(turf/T) return !atmosblock +/obj/structure/blob/CanAStarPass(obj/item/card/id/ID, to_dir, atom/movable/caller) + . = FALSE + if(istype(caller)) + . = . || (caller.pass_flags & PASSBLOB) + /obj/structure/blob/update_icon() //Updates color based on overmind color if we have an overmind. if(overmind) add_atom_colour(overmind.blobstrain.color, FIXED_COLOUR_PRIORITY) diff --git a/code/modules/antagonists/bloodsucker/bloodsucker_life.dm b/code/modules/antagonists/bloodsucker/bloodsucker_life.dm index 29e64a4913..c5f1cfbb40 100644 --- a/code/modules/antagonists/bloodsucker/bloodsucker_life.dm +++ b/code/modules/antagonists/bloodsucker/bloodsucker_life.dm @@ -84,7 +84,7 @@ return FALSE if(owner.current.reagents.has_reagent(/datum/reagent/consumable/garlic)) return FALSE - if(istype(owner.current.get_item_by_slot(SLOT_NECK), /obj/item/clothing/neck/garlic_necklace)) + if(istype(owner.current.get_item_by_slot(ITEM_SLOT_NECK), /obj/item/clothing/neck/garlic_necklace)) return FALSE owner.current.adjustStaminaLoss(-1.5 + (actual_regen * -7) * mult, 0) // Humans lose stamina damage really quickly. Vamps should heal more. owner.current.adjustCloneLoss(-0.1 * (actual_regen * 2) * mult, 0) diff --git a/code/modules/antagonists/bloodsucker/bloodsucker_powers.dm b/code/modules/antagonists/bloodsucker/bloodsucker_powers.dm index 2fb7a2ccca..0a799021e9 100644 --- a/code/modules/antagonists/bloodsucker/bloodsucker_powers.dm +++ b/code/modules/antagonists/bloodsucker/bloodsucker_powers.dm @@ -94,7 +94,7 @@ if(display_error) to_chat(owner, "You have a stake in your chest! Your powers are useless.") return FALSE - if(istype(owner.get_item_by_slot(SLOT_NECK), /obj/item/clothing/neck/garlic_necklace)) + if(istype(owner.get_item_by_slot(ITEM_SLOT_NECK), /obj/item/clothing/neck/garlic_necklace)) if(display_error) to_chat(owner, "") return FALSE diff --git a/code/modules/antagonists/bloodsucker/powers/brawn.dm b/code/modules/antagonists/bloodsucker/powers/brawn.dm index 5444cccd3f..db3ce92ec1 100644 --- a/code/modules/antagonists/bloodsucker/powers/brawn.dm +++ b/code/modules/antagonists/bloodsucker/powers/brawn.dm @@ -105,7 +105,7 @@ var/mob/living/carbon/user_C = owner //message_admins("DEBUG3: attempt_cast() [name] / [user_C.handcuffed] ") if(user_C.handcuffed) - var/obj/O = user_C.get_item_by_slot(SLOT_HANDCUFFED) + var/obj/O = user_C.get_item_by_slot(ITEM_SLOT_HANDCUFFED) if(istype(O)) user_C.clear_cuffs(O,TRUE) playsound(get_turf(usr), 'sound/effects/grillehit.ogg', 80, 1, -1) @@ -124,7 +124,7 @@ return TRUE */ // Destroy Leg Cuffs if(user_C.legcuffed) - var/obj/O = user_C.get_item_by_slot(SLOT_LEGCUFFED) + var/obj/O = user_C.get_item_by_slot(ITEM_SLOT_LEGCUFFED) if(istype(O)) user_C.clear_cuffs(O,TRUE) playsound(get_turf(usr), 'sound/effects/grillehit.ogg', 80, 1, -1) diff --git a/code/modules/antagonists/changeling/powers/absorb.dm b/code/modules/antagonists/changeling/powers/absorb.dm index 208fefee70..4e68e27583 100644 --- a/code/modules/antagonists/changeling/powers/absorb.dm +++ b/code/modules/antagonists/changeling/powers/absorb.dm @@ -65,7 +65,9 @@ user.copy_languages(target, LANGUAGE_ABSORB) if(target.mind && user.mind)//if the victim and user have minds - target.mind.show_memory(user, 0) //I can read your mind, kekeke. Output all their notes. +//ambition start + to_chat(user, "[target.mind.show_memory()]") //I can read your mind, kekeke. Output all their notes. +//ambition end //Some of target's recent speech, so the changeling can attempt to imitate them better. //Recent as opposed to all because rounds tend to have a LOT of text. diff --git a/code/modules/antagonists/changeling/powers/biodegrade.dm b/code/modules/antagonists/changeling/powers/biodegrade.dm index 8b3b1659d1..b440228a4e 100644 --- a/code/modules/antagonists/changeling/powers/biodegrade.dm +++ b/code/modules/antagonists/changeling/powers/biodegrade.dm @@ -17,7 +17,7 @@ return FALSE if(user.handcuffed) - var/obj/O = user.get_item_by_slot(SLOT_HANDCUFFED) + var/obj/O = user.get_item_by_slot(ITEM_SLOT_HANDCUFFED) if(!istype(O)) return FALSE user.visible_message("[user] vomits a glob of acid on [user.p_their()] [O]!", \ @@ -27,7 +27,7 @@ used = TRUE if(user.legcuffed) - var/obj/O = user.get_item_by_slot(SLOT_LEGCUFFED) + var/obj/O = user.get_item_by_slot(ITEM_SLOT_LEGCUFFED) if(!istype(O)) return FALSE user.visible_message("[user] vomits a glob of acid on [user.p_their()] [O]!", \ @@ -37,7 +37,7 @@ used = TRUE if(user.wear_suit && user.wear_suit.breakouttime && !used) - var/obj/item/clothing/suit/S = user.get_item_by_slot(SLOT_WEAR_SUIT) + var/obj/item/clothing/suit/S = user.get_item_by_slot(ITEM_SLOT_OCLOTHING) if(!istype(S)) return FALSE user.visible_message("[user] vomits a glob of acid across the front of [user.p_their()] [S]!", \ diff --git a/code/modules/antagonists/changeling/powers/mutations.dm b/code/modules/antagonists/changeling/powers/mutations.dm index f4b74c5567..ec95ee4ef6 100644 --- a/code/modules/antagonists/changeling/powers/mutations.dm +++ b/code/modules/antagonists/changeling/powers/mutations.dm @@ -130,8 +130,8 @@ user.dropItemToGround(user.head) user.dropItemToGround(user.wear_suit) - user.equip_to_slot_if_possible(new suit_type(user), SLOT_WEAR_SUIT, 1, 1, 1) - user.equip_to_slot_if_possible(new helmet_type(user), SLOT_HEAD, 1, 1, 1) + user.equip_to_slot_if_possible(new suit_type(user), ITEM_SLOT_OCLOTHING, 1, 1, 1) + user.equip_to_slot_if_possible(new helmet_type(user), ITEM_SLOT_HEAD, 1, 1, 1) var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) changeling.chem_recharge_slowdown += recharge_slowdown @@ -637,7 +637,7 @@ user.dropItemToGround(user.gloves) - user.equip_to_slot_if_possible(new glove_type(user), SLOT_GLOVES, 1, 1, 1) + user.equip_to_slot_if_possible(new glove_type(user), ITEM_SLOT_GLOVES, 1, 1, 1) playsound(user, 'sound/effects/blobattack.ogg', 30, 1) var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) changeling.chem_recharge_slowdown += recharge_slowdown @@ -733,7 +733,7 @@ /obj/item/clothing/gloves/fingerless/pugilist/cling/equipped(mob/user, slot) . = ..() - if(current_equipped_slot == SLOT_GLOVES) + if(current_equipped_slot == ITEM_SLOT_GLOVES) to_chat(user, "With [src] formed around our arms, we are ready to fight.") /obj/item/clothing/gloves/fingerless/pugilist/cling/dropped(mob/user) diff --git a/code/modules/antagonists/changeling/powers/tiny_prick.dm b/code/modules/antagonists/changeling/powers/tiny_prick.dm index 9bda1bf5b9..2e684b514b 100644 --- a/code/modules/antagonists/changeling/powers/tiny_prick.dm +++ b/code/modules/antagonists/changeling/powers/tiny_prick.dm @@ -47,8 +47,8 @@ return if(!isturf(user.loc)) return - if(!AStar(user, target.loc, /turf/proc/Distance, changeling.sting_range, simulated_only = 0)) - return + if(!length(get_path_to(user, target, max_distance = changeling.sting_range, simulated_only = FALSE))) + return // no path within the sting's range is found. what a weird place to use the pathfinding system return 1 /obj/effect/proc_holder/changeling/sting/sting_feedback(mob/user, mob/target) diff --git a/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm index ad507adcec..b5f2a358e6 100644 --- a/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm +++ b/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm @@ -38,7 +38,7 @@ /obj/item/clothing/head/helmet/clockwork/equipped(mob/living/user, slot) ..() - if(slot == SLOT_HEAD && !is_servant_of_ratvar(user)) + if(slot == ITEM_SLOT_HEAD && !is_servant_of_ratvar(user)) if(!iscultist(user)) to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off [user.p_their()] head!", "The helmet flickers off your head, leaving only nausea!") @@ -105,7 +105,7 @@ /obj/item/clothing/suit/armor/clockwork/equipped(mob/living/user, slot) ..() - if(slot == SLOT_WEAR_SUIT && !is_servant_of_ratvar(user)) + if(slot == ITEM_SLOT_OCLOTHING && !is_servant_of_ratvar(user)) if(!iscultist(user)) to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off [user.p_their()] body!", "The cuirass flickers off your body, leaving only nausea!") @@ -165,7 +165,7 @@ /obj/item/clothing/gloves/clockwork/equipped(mob/living/user, slot) ..() - if(slot == SLOT_GLOVES && !is_servant_of_ratvar(user)) + if(slot == ITEM_SLOT_GLOVES && !is_servant_of_ratvar(user)) if(!iscultist(user)) to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off [user.p_their()] arms!", "The gauntlets flicker off your arms, leaving only nausea!") @@ -215,7 +215,7 @@ /obj/item/clothing/shoes/clockwork/equipped(mob/living/user, slot) ..() - if(slot == SLOT_SHOES && !is_servant_of_ratvar(user)) + if(slot == ITEM_SLOT_FEET && !is_servant_of_ratvar(user)) if(!iscultist(user)) to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off [user.p_their()] feet!", "The treads flicker off your feet, leaving only nausea!") diff --git a/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm b/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm index daee9f5c2c..9342cd8ea5 100644 --- a/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm +++ b/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm @@ -117,4 +117,4 @@ S.no_cost = TRUE if(seasonal_hat && seasonal_hat != "none") var/obj/item/hat = new seasonal_hat(construct) - construct.equip_to_slot_or_del(hat, SLOT_HEAD) + construct.equip_to_slot_or_del(hat, ITEM_SLOT_HEAD) diff --git a/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm b/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm index e748da8765..138f04feb3 100644 --- a/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm +++ b/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm @@ -28,13 +28,13 @@ return ..() /obj/item/clothing/glasses/judicial_visor/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot != SLOT_GLASSES) + if(slot != ITEM_SLOT_EYES) return 0 return ..() /obj/item/clothing/glasses/judicial_visor/equipped(mob/living/user, slot) ..() - if(slot != SLOT_GLASSES) + if(slot != ITEM_SLOT_EYES) update_status(FALSE) if(blaster.ranged_ability_user) blaster.remove_ranged_ability() @@ -55,13 +55,13 @@ addtimer(CALLBACK(src, .proc/check_on_mob, user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later /obj/item/clothing/glasses/judicial_visor/proc/check_on_mob(mob/user) - if(user && src != user.get_item_by_slot(SLOT_GLASSES)) //if we happen to check and we AREN'T in the slot, we need to remove our shit from whoever we got dropped from + if(user && src != user.get_item_by_slot(ITEM_SLOT_EYES)) //if we happen to check and we AREN'T in the slot, we need to remove our shit from whoever we got dropped from update_status(FALSE) if(blaster.ranged_ability_user) blaster.remove_ranged_ability() /obj/item/clothing/glasses/judicial_visor/attack_self(mob/user) - if(is_servant_of_ratvar(user) && src == user.get_item_by_slot(SLOT_GLASSES)) + if(is_servant_of_ratvar(user) && src == user.get_item_by_slot(ITEM_SLOT_EYES)) blaster.toggle(user) /obj/item/clothing/glasses/judicial_visor/proc/update_status(change_to) @@ -89,7 +89,7 @@ if(!src) return 0 recharging = FALSE - if(user && src == user.get_item_by_slot(SLOT_GLASSES)) + if(user && src == user.get_item_by_slot(ITEM_SLOT_EYES)) to_chat(user, "Your [name] hums. It is ready.") else active = FALSE @@ -115,7 +115,7 @@ /obj/effect/proc_holder/judicial_visor/InterceptClickOn(mob/living/caller, params, atom/target) if(..()) return - if(ranged_ability_user.incapacitated() || !visor || visor != ranged_ability_user.get_item_by_slot(SLOT_GLASSES)) + if(ranged_ability_user.incapacitated() || !visor || visor != ranged_ability_user.get_item_by_slot(ITEM_SLOT_EYES)) remove_ranged_ability() return diff --git a/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm b/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm index 5e25b8de82..837844d0cb 100644 --- a/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm +++ b/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm @@ -75,7 +75,7 @@ /obj/item/clothing/glasses/wraith_spectacles/equipped(mob/living/user, slot) ..() - if(slot != SLOT_GLASSES || up) + if(slot != ITEM_SLOT_EYES || up) return if(HAS_TRAIT(user, TRAIT_BLIND)) to_chat(user, "\"You're blind, idiot. Stop embarrassing yourself.\"" ) diff --git a/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm b/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm index 7ba4ce0936..be4785f4a7 100644 --- a/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm +++ b/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm @@ -200,18 +200,18 @@ /datum/action/innate/clockwork_armaments/Activate() var/do_message = 0 - var/obj/item/I = owner.get_item_by_slot(SLOT_WEAR_SUIT) + var/obj/item/I = owner.get_item_by_slot(ITEM_SLOT_OCLOTHING) if(remove_item_if_better(I, owner)) - do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/suit/armor/clockwork(null), SLOT_WEAR_SUIT) - I = owner.get_item_by_slot(SLOT_HEAD) + do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/suit/armor/clockwork(null), ITEM_SLOT_OCLOTHING) + I = owner.get_item_by_slot(ITEM_SLOT_HEAD) if(remove_item_if_better(I, owner)) - do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/head/helmet/clockwork(null), SLOT_HEAD) - I = owner.get_item_by_slot(SLOT_GLOVES) + do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/head/helmet/clockwork(null), ITEM_SLOT_HEAD) + I = owner.get_item_by_slot(ITEM_SLOT_GLOVES) if(remove_item_if_better(I, owner)) - do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/gloves/clockwork(null), SLOT_GLOVES) - I = owner.get_item_by_slot(SLOT_SHOES) + do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/gloves/clockwork(null), ITEM_SLOT_GLOVES) + I = owner.get_item_by_slot(ITEM_SLOT_FEET) if(remove_item_if_better(I, owner)) - do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/shoes/clockwork(null), SLOT_SHOES) + do_message += owner.equip_to_slot_or_del(new/obj/item/clothing/shoes/clockwork(null), ITEM_SLOT_FEET) if(do_message) owner.visible_message("Strange armor appears on [owner]!", "A bright shimmer runs down your body, equipping you with Ratvarian armor.") playsound(owner, 'sound/magic/clockwork/fellowship_armory.ogg', 15 * do_message, TRUE) //get sound loudness based on how much we equipped @@ -309,16 +309,16 @@ continue T = get_turf(M) var/heal_ticks = 0 //one heal tick for each piece of ratvarian armor worn - var/obj/item/I = H.get_item_by_slot(SLOT_WEAR_SUIT) + var/obj/item/I = H.get_item_by_slot(ITEM_SLOT_OCLOTHING) if(is_type_in_typecache(I, ratvarian_armor_typecache)) heal_ticks++ - I = H.get_item_by_slot(SLOT_HEAD) + I = H.get_item_by_slot(ITEM_SLOT_HEAD) if(is_type_in_typecache(I, ratvarian_armor_typecache)) heal_ticks++ - I = H.get_item_by_slot(SLOT_GLOVES) + I = H.get_item_by_slot(ITEM_SLOT_GLOVES) if(is_type_in_typecache(I, ratvarian_armor_typecache)) heal_ticks++ - I = H.get_item_by_slot(SLOT_SHOES) + I = H.get_item_by_slot(ITEM_SLOT_FEET) if(is_type_in_typecache(I, ratvarian_armor_typecache)) heal_ticks++ if(heal_ticks) diff --git a/code/modules/antagonists/cult/blood_magic.dm b/code/modules/antagonists/cult/blood_magic.dm index 521c32fe3d..0efde2d3db 100644 --- a/code/modules/antagonists/cult/blood_magic.dm +++ b/code/modules/antagonists/cult/blood_magic.dm @@ -678,12 +678,12 @@ uses-- var/mob/living/carbon/C = target C.visible_message("Otherworldly armor suddenly appears on [C]!") - C.equip_to_slot_or_del(new /obj/item/clothing/under/color/black,SLOT_W_UNIFORM) - C.equip_to_slot_or_del(new /obj/item/clothing/head/culthood/alt(user), SLOT_HEAD) - C.equip_to_slot_or_del(new /obj/item/clothing/suit/cultrobes/alt(user), SLOT_WEAR_SUIT) - C.equip_to_slot_or_del(new /obj/item/clothing/shoes/cult/alt(user), SLOT_SHOES) - C.equip_to_slot_or_del(new /obj/item/storage/backpack/cultpack(user), SLOT_BACK) - C.equip_to_slot_or_del(new /obj/item/clothing/gloves/fingerless/pugilist/hungryghost(user), SLOT_GLOVES) + C.equip_to_slot_or_del(new /obj/item/clothing/under/color/black,ITEM_SLOT_ICLOTHING) + C.equip_to_slot_or_del(new /obj/item/clothing/head/culthood/alt(user), ITEM_SLOT_HEAD) + C.equip_to_slot_or_del(new /obj/item/clothing/suit/cultrobes/alt(user), ITEM_SLOT_OCLOTHING) + C.equip_to_slot_or_del(new /obj/item/clothing/shoes/cult/alt(user), ITEM_SLOT_FEET) + C.equip_to_slot_or_del(new /obj/item/storage/backpack/cultpack(user), ITEM_SLOT_BACK) + C.equip_to_slot_or_del(new /obj/item/clothing/gloves/fingerless/pugilist/hungryghost(user), ITEM_SLOT_GLOVES) if(C == user) qdel(src) //Clears the hands C.put_in_hands(new /obj/item/melee/cultblade(user)) diff --git a/code/modules/antagonists/cult/cult.dm b/code/modules/antagonists/cult/cult.dm index a18523069e..2850cb85cc 100644 --- a/code/modules/antagonists/cult/cult.dm +++ b/code/modules/antagonists/cult/cult.dm @@ -49,7 +49,10 @@ cult_team = new_team /datum/antagonist/cult/proc/add_objectives() - objectives |= cult_team?.objectives +//ambition start + if(cult_team) + objectives |= cult_team.objectives +//ambition end /datum/antagonist/cult/Destroy() QDEL_NULL(communion) @@ -95,9 +98,9 @@ /datum/antagonist/cult/proc/cult_give_item(obj/item/item_path, mob/living/carbon/human/mob) var/list/slots = list( - "backpack" = SLOT_IN_BACKPACK, - "left pocket" = SLOT_L_STORE, - "right pocket" = SLOT_R_STORE + "backpack" = ITEM_SLOT_BACKPACK, + "left pocket" = ITEM_SLOT_LPOCKET, + "right pocket" = ITEM_SLOT_RPOCKET ) var/T = new item_path(mob) diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 7981a10701..3b73a998e7 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -1090,7 +1090,7 @@ structure_check() searches for nearby cultist structures required for the invoca /proc/hudFix(mob/living/carbon/human/target) if(!target || !target.client) return - var/obj/O = target.get_item_by_slot(SLOT_GLASSES) + var/obj/O = target.get_item_by_slot(ITEM_SLOT_EYES) if(istype(O, /obj/item/clothing/glasses/hud/security)) var/datum/atom_hud/AH = GLOB.huds[DATA_HUD_SECURITY_ADVANCED] AH.add_hud_to(target) diff --git a/code/modules/antagonists/devil/devil.dm b/code/modules/antagonists/devil/devil.dm index 65ce89d33f..9f69f10887 100644 --- a/code/modules/antagonists/devil/devil.dm +++ b/code/modules/antagonists/devil/devil.dm @@ -460,10 +460,10 @@ GLOBAL_LIST_INIT(devil_suffix, list(" the Red", " the Soulless", " the Master", return -1 currentMob.change_mob_type( /mob/living/carbon/human, targetturf, null, 1) var/mob/living/carbon/human/H = owner.current - H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/civilian/lawyer/black(H), SLOT_W_UNIFORM) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), SLOT_SHOES) - H.equip_to_slot_or_del(new /obj/item/storage/briefcase(H), SLOT_HANDS) - H.equip_to_slot_or_del(new /obj/item/pen(H), SLOT_L_STORE) + H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/civilian/lawyer/black(H), ITEM_SLOT_ICLOTHING) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), ITEM_SLOT_FEET) + H.equip_to_slot_or_del(new /obj/item/storage/briefcase(H), ITEM_SLOT_HANDS) + H.equip_to_slot_or_del(new /obj/item/pen(H), ITEM_SLOT_LPOCKET) if(SOULVALUE >= BLOOD_THRESHOLD) H.set_species(/datum/species/lizard, 1) H.underwear = "Nude" diff --git a/code/modules/antagonists/eldritch_cult/eldritch_antag.dm b/code/modules/antagonists/eldritch_cult/eldritch_antag.dm index fc0a5cdc6a..d7334d6c9c 100644 --- a/code/modules/antagonists/eldritch_cult/eldritch_antag.dm +++ b/code/modules/antagonists/eldritch_cult/eldritch_antag.dm @@ -72,9 +72,9 @@ /datum/antagonist/heretic/proc/ecult_give_item(obj/item/item_path, mob/living/carbon/human/H) var/list/slots = list( - "backpack" = SLOT_IN_BACKPACK, - "left pocket" = SLOT_L_STORE, - "right pocket" = SLOT_R_STORE + "backpack" = ITEM_SLOT_BACKPACK, + "left pocket" = ITEM_SLOT_LPOCKET, + "right pocket" = ITEM_SLOT_RPOCKET ) var/T = new item_path(H) diff --git a/code/modules/antagonists/eldritch_cult/eldritch_items.dm b/code/modules/antagonists/eldritch_cult/eldritch_items.dm index 28228aedd6..c0f3e2be7c 100644 --- a/code/modules/antagonists/eldritch_cult/eldritch_items.dm +++ b/code/modules/antagonists/eldritch_cult/eldritch_items.dm @@ -145,7 +145,7 @@ /obj/item/clothing/neck/eldritch_amulet/equipped(mob/user, slot) . = ..() - if(ishuman(user) && user.mind && slot == SLOT_NECK && (IS_HERETIC(user) || IS_HERETIC_MONSTER(user))) + if(ishuman(user) && user.mind && slot == ITEM_SLOT_NECK && (IS_HERETIC(user) || IS_HERETIC_MONSTER(user))) ADD_TRAIT(user, trait, CLOTHING_TRAIT) user.update_sight() @@ -239,7 +239,7 @@ /obj/item/clothing/mask/void_mask/equipped(mob/user, slot) . = ..() - if(ishuman(user) && user.mind && slot == SLOT_WEAR_MASK) + if(ishuman(user) && user.mind && slot == ITEM_SLOT_MASK) local_user = user START_PROCESSING(SSobj, src) diff --git a/code/modules/antagonists/ert/ert.dm b/code/modules/antagonists/ert/ert.dm index 43a7e561c0..a8e57ee08b 100644 --- a/code/modules/antagonists/ert/ert.dm +++ b/code/modules/antagonists/ert/ert.dm @@ -234,8 +234,8 @@ var/obj/O = new C(owner.current) var/list/slots = list ( "backpack" = ITEM_SLOT_BACKPACK, - "left pocket" = SLOT_L_STORE, - "right pocket" = SLOT_R_STORE + "left pocket" = ITEM_SLOT_LPOCKET, + "right pocket" = ITEM_SLOT_RPOCKET ) var/mob/living/carbon/human/H = owner.current var/equipped = H.equip_in_one_of_slots(O, slots) diff --git a/code/modules/antagonists/highlander/highlander.dm b/code/modules/antagonists/highlander/highlander.dm index ffca67b882..b2fce0269a 100644 --- a/code/modules/antagonists/highlander/highlander.dm +++ b/code/modules/antagonists/highlander/highlander.dm @@ -45,11 +45,11 @@ qdel(I) for(var/obj/item/I in H.held_items) qdel(I) - H.equip_to_slot_or_del(new /obj/item/clothing/under/costume/kilt/highlander(H), SLOT_W_UNIFORM) - H.equip_to_slot_or_del(new /obj/item/radio/headset/heads/captain(H), SLOT_EARS) - H.equip_to_slot_or_del(new /obj/item/clothing/head/beret/highlander(H), SLOT_HEAD) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(H), SLOT_SHOES) - H.equip_to_slot_or_del(new /obj/item/pinpointer/nuke(H), SLOT_L_STORE) + H.equip_to_slot_or_del(new /obj/item/clothing/under/costume/kilt/highlander(H), ITEM_SLOT_ICLOTHING) + H.equip_to_slot_or_del(new /obj/item/radio/headset/heads/captain(H), ITEM_SLOT_EARS) + H.equip_to_slot_or_del(new /obj/item/clothing/head/beret/highlander(H), ITEM_SLOT_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(H), ITEM_SLOT_FEET) + H.equip_to_slot_or_del(new /obj/item/pinpointer/nuke(H), ITEM_SLOT_LPOCKET) for(var/obj/item/pinpointer/nuke/P in H) P.attack_self(H) var/obj/item/card/id/W = new(H) @@ -60,7 +60,7 @@ W.registered_name = H.real_name ADD_TRAIT(W, TRAIT_NODROP, HIGHLANDER) W.update_label(H.real_name) - H.equip_to_slot_or_del(W, SLOT_WEAR_ID) + H.equip_to_slot_or_del(W, ITEM_SLOT_ID) sword = new(H) if(!GLOB.highlander) diff --git a/code/modules/antagonists/overthrow/overthrow.dm b/code/modules/antagonists/overthrow/overthrow.dm index f086f5db97..fffd8f9237 100644 --- a/code/modules/antagonists/overthrow/overthrow.dm +++ b/code/modules/antagonists/overthrow/overthrow.dm @@ -127,9 +127,9 @@ // Give AI hacking board var/obj/item/aiModule/core/full/overthrow/O = new(H) var/list/slots = list ( - "backpack" = SLOT_IN_BACKPACK, - "left pocket" = SLOT_L_STORE, - "right pocket" = SLOT_R_STORE + "backpack" = ITEM_SLOT_BACKPACK, + "left pocket" = ITEM_SLOT_LPOCKET, + "right pocket" = ITEM_SLOT_RPOCKET ) var/where = H.equip_in_one_of_slots(O, slots, critical = TRUE) if (!where) diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index 925527f35e..e4625b4ef2 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -272,9 +272,9 @@ if(give_flash) var/obj/item/assembly/flash/T = new(H) var/list/slots = list ( - "backpack" = SLOT_IN_BACKPACK, - "left pocket" = SLOT_L_STORE, - "right pocket" = SLOT_R_STORE + "backpack" = ITEM_SLOT_BACKPACK, + "left pocket" = ITEM_SLOT_LPOCKET, + "right pocket" = ITEM_SLOT_RPOCKET ) var/where = H.equip_in_one_of_slots(T, slots, critical = TRUE) if (!where) diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index 78403d4e27..f184961004 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -240,9 +240,9 @@ folder = new/obj/item/folder/syndicate/blue(mob.loc) var/list/slots = list ( - "backpack" = SLOT_IN_BACKPACK, - "left pocket" = SLOT_L_STORE, - "right pocket" = SLOT_R_STORE + "backpack" = ITEM_SLOT_BACKPACK, + "left pocket" = ITEM_SLOT_LPOCKET, + "right pocket" = ITEM_SLOT_RPOCKET ) var/where = "At your feet" diff --git a/code/modules/antagonists/wizard/equipment/artefact.dm b/code/modules/antagonists/wizard/equipment/artefact.dm index 44f267358a..6f7ba374f7 100644 --- a/code/modules/antagonists/wizard/equipment/artefact.dm +++ b/code/modules/antagonists/wizard/equipment/artefact.dm @@ -229,12 +229,12 @@ H.dropItemToGround(I) var/hat = pick(/obj/item/clothing/head/helmet/roman, /obj/item/clothing/head/helmet/roman/legionnaire) - H.equip_to_slot_or_del(new hat(H), SLOT_HEAD) - H.equip_to_slot_or_del(new /obj/item/clothing/under/costume/roman(H), SLOT_W_UNIFORM) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(H), SLOT_SHOES) + H.equip_to_slot_or_del(new hat(H), ITEM_SLOT_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/under/costume/roman(H), ITEM_SLOT_ICLOTHING) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(H), ITEM_SLOT_FEET) H.put_in_hands(new /obj/item/shield/riot/roman(H), TRUE) H.put_in_hands(new /obj/item/claymore(H), TRUE) - H.equip_to_slot_or_del(new /obj/item/spear(H), SLOT_BACK) + H.equip_to_slot_or_del(new /obj/item/spear(H), ITEM_SLOT_BACK) /obj/item/voodoo diff --git a/code/modules/antagonists/wizard/wizard.dm b/code/modules/antagonists/wizard/wizard.dm index c52436a3c4..63bb2b5b57 100644 --- a/code/modules/antagonists/wizard/wizard.dm +++ b/code/modules/antagonists/wizard/wizard.dm @@ -208,17 +208,17 @@ if(!istype(master_mob) || !istype(H)) return if(master_mob.ears) - H.equip_to_slot_or_del(new master_mob.ears.type, SLOT_EARS) + H.equip_to_slot_or_del(new master_mob.ears.type, ITEM_SLOT_EARS) if(master_mob.w_uniform) - H.equip_to_slot_or_del(new master_mob.w_uniform.type, SLOT_W_UNIFORM) + H.equip_to_slot_or_del(new master_mob.w_uniform.type, ITEM_SLOT_ICLOTHING) if(master_mob.shoes) - H.equip_to_slot_or_del(new master_mob.shoes.type, SLOT_SHOES) + H.equip_to_slot_or_del(new master_mob.shoes.type, ITEM_SLOT_FEET) if(master_mob.wear_suit) - H.equip_to_slot_or_del(new master_mob.wear_suit.type, SLOT_WEAR_SUIT) + H.equip_to_slot_or_del(new master_mob.wear_suit.type, ITEM_SLOT_OCLOTHING) if(master_mob.head) - H.equip_to_slot_or_del(new master_mob.head.type, SLOT_HEAD) + H.equip_to_slot_or_del(new master_mob.head.type, ITEM_SLOT_HEAD) if(master_mob.back) - H.equip_to_slot_or_del(new master_mob.back.type, SLOT_BACK) + H.equip_to_slot_or_del(new master_mob.back.type, ITEM_SLOT_BACK) //Operation: Fuck off and scare people owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/area_teleport/teleport(null)) diff --git a/code/modules/atmospherics/auxgm/gas_types.dm b/code/modules/atmospherics/auxgm/gas_types.dm index aaf3945aac..6ee234d64d 100644 --- a/code/modules/atmospherics/auxgm/gas_types.dm +++ b/code/modules/atmospherics/auxgm/gas_types.dm @@ -129,7 +129,7 @@ heat_penalty = 10 transmit_modifier = 30 fire_products = list(GAS_H2O = 1) - enthalpy = 40000 + enthalpy = 300000 fire_burn_rate = 2 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 diff --git a/code/modules/awaymissions/mission_code/jungleresort.dm b/code/modules/awaymissions/mission_code/jungleresort.dm index 6c82b2c0c4..f520cfdbee 100644 --- a/code/modules/awaymissions/mission_code/jungleresort.dm +++ b/code/modules/awaymissions/mission_code/jungleresort.dm @@ -27,7 +27,7 @@ /obj/item/clothing/head/rice_hat/cursed/equipped(mob/M, slot) . = ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/code/modules/awaymissions/mission_code/snowdin.dm b/code/modules/awaymissions/mission_code/snowdin.dm index 5d30ccd907..ba3f07bd7d 100644 --- a/code/modules/awaymissions/mission_code/snowdin.dm +++ b/code/modules/awaymissions/mission_code/snowdin.dm @@ -589,7 +589,7 @@ back = /obj/item/storage/backpack mask = /obj/item/clothing/mask/breath r_pocket = /obj/item/tank/internals/emergency_oxygen/engi - internals_slot = SLOT_R_STORE + internals_slot = ITEM_SLOT_RPOCKET /obj/effect/mob_spawn/human/syndicatesoldier/coldres/alive/female mob_gender = FEMALE diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 9948802bc9..4b93f42d4d 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -154,7 +154,15 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( var/atom/target = locate(href_list["statpanel_item_target"]) if(!target) return - Click(target, target.loc, null, "[href_list["statpanel_item_shiftclick"]?"shift=1;":null][href_list["statpanel_item_ctrlclick"]?"ctrl=1;":null]&alt=[href_list["statpanel_item_altclick"]?"alt=1;":null]", FALSE, "statpanel") + var/button = "left=1" + switch(href_list["statpanel_item_click"]) + if("middle") + button = "middle=1" + if("right") + button = "right=1" + else + button = "left=1" + Click(target, target.loc, null, "[button];[href_list["statpanel_item_shiftclick"]?"shift=1;":null][href_list["statpanel_item_ctrlclick"]?"ctrl=1;":null]&alt=[href_list["statpanel_item_altclick"]?"alt=1;":null]", FALSE, "statpanel") /client/proc/is_content_unlocked() if(!prefs.unlock_content) @@ -1012,6 +1020,7 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( var/list/actualview = getviewsize(view) update_clickcatcher() parallax_holder.Reset() + mob.hud_used.screentip_text.update_view() mob.reload_fullscreen() if (isliving(mob)) var/mob/living/M = mob diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 3272060835..5fcb6787d2 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -62,6 +62,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/UI_style = null var/outline_enabled = TRUE var/outline_color = COLOR_THEME_MIDNIGHT + var/screentip_pref = TRUE + var/screentip_color = "#ffd391" var/buttons_locked = FALSE var/hotkeys = FALSE @@ -788,6 +790,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "UI Style: [UI_style]
    " dat += "Outline: [outline_enabled ? "Enabled" : "Disabled"]
    " dat += "Outline Color: [outline_color ? "" : "Theme-based (null)"]    Change
    " + dat += "Screentip: [screentip_pref ? "Enabled" : "Disabled"]
    " + dat += "Screentip Color:     Change
    " dat += "tgui Monitors: [(tgui_lock) ? "Primary" : "All"]
    " dat += "tgui Style: [(tgui_fancy) ? "Fancy" : "No Frills"]
    " dat += "Show Runechat Chat Bubbles: [chat_on_map ? "Enabled" : "Disabled"]
    " @@ -2136,6 +2140,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/datum/sprite_accessory/S = instance if(!show_mismatched_markings && S.recommended_species && !S.recommended_species.Find(pref_species.id)) continue + if(S.ignore) + continue if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(user.client.ckey))) snowflake_taur_list[S.name] = path var/new_taur @@ -2746,6 +2752,12 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/pickedOutlineColor = input(user, "Choose your outline color.", "General Preference", outline_color) as color|null if(pickedOutlineColor != pickedOutlineColor) outline_color = pickedOutlineColor // nullable + if("screentip_pref") + screentip_pref = !screentip_pref + if("screentip_color") + var/pickedScreentipColor = input(user, "Choose your screentip color.", "General Preference", screentip_color) as color|null + if(pickedScreentipColor) + screentip_color = pickedScreentipColor if("tgui_lock") tgui_lock = !tgui_lock if("winflash") @@ -3066,6 +3078,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) save_character() character.dna.features = features.Copy() + character.set_species(chosen_species, icon_update = FALSE, pref_load = TRUE) character.dna.species.eye_type = eye_type if(chosen_limb_id && (chosen_limb_id in character.dna.species.allowed_limb_ids)) @@ -3224,10 +3237,10 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/occupied_slots = L[initial(G.category)] ? L[initial(G.category)] + 1 : 1 LAZYSET(L, initial(G.category), occupied_slots) switch(slot) - if(SLOT_IN_BACKPACK) + if(ITEM_SLOT_BACKPACK) if(L[LOADOUT_CATEGORY_BACKPACK] < BACKPACK_SLOT_AMT) return TRUE - if(SLOT_HANDS) + if(ITEM_SLOT_HANDS) if(L[LOADOUT_CATEGORY_HANDS] < HANDS_SLOT_AMT) return TRUE else diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 72b2f5d949..628a51ed44 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -385,6 +385,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["UI_style"] >> UI_style S["outline_color"] >> outline_color S["outline_enabled"] >> outline_enabled + S["screentip_pref"] >> screentip_pref + S["screentip_color"] >> screentip_color S["hotkeys"] >> hotkeys S["chat_on_map"] >> chat_on_map S["max_chat_length"] >> max_chat_length @@ -567,6 +569,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car WRITE_FILE(S["UI_style"], UI_style) WRITE_FILE(S["outline_enabled"], outline_enabled) WRITE_FILE(S["outline_color"], outline_color) + WRITE_FILE(S["screentip_pref"], screentip_pref) + WRITE_FILE(S["screentip_color"], screentip_color) WRITE_FILE(S["hotkeys"], hotkeys) WRITE_FILE(S["chat_on_map"], chat_on_map) WRITE_FILE(S["max_chat_length"], max_chat_length) diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index 008772663d..697afd4885 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -63,8 +63,8 @@ // it's TRAIT_NODROP D.dropItemToGround(target, TRUE) qdel(old_headgear) - // where is `SLOT_HEAD` defined? WHO KNOWS - D.equip_to_slot(new_headgear, SLOT_HEAD) + // where is `ITEM_SLOT_HEAD` defined? WHO KNOWS + D.equip_to_slot(new_headgear, ITEM_SLOT_HEAD) return 1 diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 1a7c220550..572cce28b2 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -219,7 +219,7 @@ ..() if (!istype(user)) return - if(slot_flags & slotdefine2slotbit(slot)) //Was equipped to a valid slot for this item? + if(slot_flags & slot) //Was equipped to a valid slot for this item? if(iscarbon(user) && LAZYLEN(zones_disabled)) RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/bristle) if(LAZYLEN(user_vars_to_edit)) @@ -450,7 +450,7 @@ BLIND // can't see anything return FALSE // Skip species restriction checks on non-equipment slots - if(slot in list(SLOT_IN_BACKPACK, SLOT_L_STORE, SLOT_R_STORE)) + if(slot in list(ITEM_SLOT_BACKPACK, ITEM_SLOT_LPOCKET, ITEM_SLOT_RPOCKET)) return TRUE if(species_restricted && ishuman(M)) diff --git a/code/modules/clothing/ears/_ears.dm b/code/modules/clothing/ears/_ears.dm index f58be1373a..a2f0c80041 100644 --- a/code/modules/clothing/ears/_ears.dm +++ b/code/modules/clothing/ears/_ears.dm @@ -20,7 +20,7 @@ /obj/item/clothing/ears/earmuffs/ComponentInitialize() . = ..() AddElement(/datum/element/earhealing) - AddComponent(/datum/component/wearertargeting/earprotection, list(SLOT_EARS)) + AddComponent(/datum/component/wearertargeting/earprotection, list(ITEM_SLOT_EARS)) /obj/item/clothing/ears/headphones name = "headphones" diff --git a/code/modules/clothing/glasses/_glasses.dm b/code/modules/clothing/glasses/_glasses.dm index 737bbbb522..9726ab6b59 100644 --- a/code/modules/clothing/glasses/_glasses.dm +++ b/code/modules/clothing/glasses/_glasses.dm @@ -115,7 +115,7 @@ armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100) /obj/item/clothing/glasses/science/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_GLASSES) + if(slot == ITEM_SLOT_EYES) return 1 /obj/item/clothing/glasses/night @@ -158,7 +158,7 @@ /obj/item/clothing/glasses/eyepatch/syndicate/equipped(mob/living/carbon/human/user, slot) . = ..() - if(slot == SLOT_GLASSES) + if(slot == ITEM_SLOT_EYES) user.visible_message("Circuitry from the eyepatch links itself to your brain as you put on the eyepatch.") if(HAS_TRAIT(user, TRAIT_POOR_AIM)) user.visible_message("You hear a fizzing noise from the circuit. That can't be good.") @@ -351,7 +351,7 @@ /obj/item/clothing/glasses/sunglasses/blindfold/equipped(mob/living/carbon/human/user, slot) . = ..() - if(slot == SLOT_GLASSES) + if(slot == ITEM_SLOT_EYES) user.become_blind("blindfold_[REF(src)]") /obj/item/clothing/glasses/sunglasses/blindfold/dropped(mob/living/carbon/human/user) @@ -372,7 +372,7 @@ var/colored_before = FALSE /obj/item/clothing/glasses/sunglasses/blindfold/white/equipped(mob/living/carbon/human/user, slot) - if(ishuman(user) && slot == SLOT_GLASSES) + if(ishuman(user) && slot == ITEM_SLOT_EYES) update_icon(user) user.update_inv_glasses() //Color might have been changed by update_icon. ..() diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index cad91315a3..c848dbdfa8 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -18,7 +18,7 @@ /obj/item/clothing/glasses/hud/equipped(mob/living/carbon/human/user, slot) ..() - if(hud_type && slot == SLOT_GLASSES) + if(hud_type && slot == ITEM_SLOT_EYES) var/datum/atom_hud/H = GLOB.huds[hud_type] H.add_hud_to(user) diff --git a/code/modules/clothing/glasses/phantomthief.dm b/code/modules/clothing/glasses/phantomthief.dm index ba3ea2830e..db77f17218 100644 --- a/code/modules/clothing/glasses/phantomthief.dm +++ b/code/modules/clothing/glasses/phantomthief.dm @@ -17,7 +17,7 @@ /obj/item/clothing/glasses/phantomthief/syndicate/examine(mob/user) . = ..() - if(user.get_item_by_slot(SLOT_GLASSES) == src) + if(user.get_item_by_slot(ITEM_SLOT_EYES) == src) if(world.time >= nextadrenalinepop) . += "The built-in adrenaline injector is ready for use." else @@ -33,7 +33,7 @@ . = ..() if(!istype(user)) return - if(slot != SLOT_GLASSES) + if(slot != ITEM_SLOT_EYES) return RegisterSignal(user, COMSIG_LIVING_COMBAT_ENABLED, .proc/injectadrenaline) diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 836b845faa..1e3f2c08cf 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -31,7 +31,7 @@ C.visible_message("[U] sprays glittery rubber on the hands of [C]!") else user.visible_message("The rubber fails to stick to [C]'s hands!", - "The rubber fails to stick to [C]'s [(SLOT_GLOVES in C.check_obscured_slots()) ? "unexposed" : ""] hands!") + "The rubber fails to stick to [C]'s [(ITEM_SLOT_GLOVES in C.check_obscured_slots()) ? "unexposed" : ""] hands!") qdel(src) @@ -226,7 +226,7 @@ /obj/item/clothing/gloves/color/latex/equipped(mob/user, slot) ..() - if(slot == SLOT_GLOVES) + if(slot == ITEM_SLOT_GLOVES) ADD_TRAIT(user, carrytrait, GLOVE_TRAIT) /obj/item/clothing/gloves/color/latex/dropped(mob/user) diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 8c8400a45d..381e70161b 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -9,6 +9,8 @@ equip_delay_other = 20 cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT + heat_protection = HANDS + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT strip_mod = 0.9 custom_price = PRICE_ALMOST_CHEAP @@ -36,7 +38,7 @@ /obj/item/clothing/gloves/fingerless/pugilist/equipped(mob/user, slot) . = ..() - if(slot == SLOT_GLOVES) + if(slot == ITEM_SLOT_GLOVES) wornonce = TRUE if((HAS_TRAIT(user, TRAIT_NOPUGILIST))) to_chat(user, "What purpose is there to don the weapons of pugilism if you're already well-practiced in martial arts? Mixing arts is blasphemous!") @@ -195,7 +197,7 @@ /obj/item/clothing/gloves/fingerless/ablative/equipped(mob/user, slot) . = ..() - if(current_equipped_slot == SLOT_GLOVES) + if(current_equipped_slot == ITEM_SLOT_GLOVES) RegisterSignal(user, COMSIG_LIVING_ACTIVE_PARRY_START, .proc/get_component_parry_data) wornonce = TRUE @@ -262,7 +264,7 @@ /obj/item/clothing/gloves/fingerless/pugilist/mauler/equipped(mob/user, slot) . = ..() - if(slot == SLOT_GLOVES) + if(slot == ITEM_SLOT_GLOVES) wornonce = TRUE if((HAS_TRAIT(user, TRAIT_NOPUGILIST))) return @@ -349,6 +351,8 @@ transfer_prints = TRUE cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT + heat_protection = HANDS + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT strip_mod = 0.9 /obj/item/clothing/gloves/evening/black diff --git a/code/modules/clothing/gloves/mittens.dm b/code/modules/clothing/gloves/mittens.dm index 42250aae2f..b1b17c9afe 100644 --- a/code/modules/clothing/gloves/mittens.dm +++ b/code/modules/clothing/gloves/mittens.dm @@ -6,6 +6,8 @@ //item_color = "white" cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT + heat_protection = HANDS + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT resistance_flags = NONE /obj/item/clothing/gloves/mittens/random diff --git a/code/modules/clothing/gloves/tacklers.dm b/code/modules/clothing/gloves/tacklers.dm index 39d39ba58f..754a72ff0c 100644 --- a/code/modules/clothing/gloves/tacklers.dm +++ b/code/modules/clothing/gloves/tacklers.dm @@ -6,6 +6,8 @@ transfer_prints = TRUE cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT + heat_protection = HANDS + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT resistance_flags = NONE //custom_premium_price = PRICE_EXPENSIVE /// For storing our tackler datum so we can remove it after @@ -28,7 +30,7 @@ if(!ishuman(user)) return switch(slot) // I didn't like how it looked - if(SLOT_GLOVES) + if(ITEM_SLOT_GLOVES) var/mob/living/carbon/human/H = user tackler = H.AddComponent(/datum/component/tackler, stamina_cost=tackle_stam_cost, base_knockdown = base_knockdown, range = tackle_range, speed = tackle_speed, skill_mod = skill_mod, min_distance = min_distance) else @@ -103,7 +105,7 @@ /obj/item/clothing/gloves/tackler/combat/insulated/infiltrator/equipped(mob/user, slot) . = ..() - if(slot == SLOT_GLOVES) + if(slot == ITEM_SLOT_GLOVES) ADD_TRAIT(user, carrytrait, GLOVE_TRAIT) /obj/item/clothing/gloves/tackler/combat/insulated/infiltrator/dropped(mob/user) diff --git a/code/modules/clothing/head/_head.dm b/code/modules/clothing/head/_head.dm index 6ad3a19694..ea58d0bc88 100644 --- a/code/modules/clothing/head/_head.dm +++ b/code/modules/clothing/head/_head.dm @@ -34,7 +34,7 @@ var/obj/item/WH = H.head H.visible_message("[src] bounces off [H]'s [WH.name]!", "[src] bounces off your [WH.name], falling to the floor.") return - if(H.equip_to_slot_if_possible(src, SLOT_HEAD, FALSE, TRUE)) + if(H.equip_to_slot_if_possible(src, ITEM_SLOT_HEAD, FALSE, TRUE)) H.visible_message("[src] lands neatly on [H]'s head!", "[src] lands perfectly onto your head!") return if(iscyborg(hit_atom)) diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 6b698f9619..126b1af40f 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -27,7 +27,7 @@ /obj/item/clothing/head/helmet/ComponentInitialize() . = ..() - AddComponent(/datum/component/wearertargeting/earprotection, list(SLOT_HEAD)) + AddComponent(/datum/component/wearertargeting/earprotection, list(ITEM_SLOT_HEAD)) /obj/item/clothing/head/helmet/examine(mob/user) . = ..() diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 5af694ea1b..592614af61 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -220,7 +220,7 @@ /obj/item/clothing/head/warden/drill/equipped(mob/M, slot) . = ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 76e8ca53df..eb48048c00 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -264,7 +264,8 @@ item_state = "that" cold_protection = HEAD min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT - + heat_protection = HEAD + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT dog_fashion = /datum/dog_fashion/head/santa beepsky_fashion = /datum/beepsky_fashion/santa @@ -354,7 +355,7 @@ /obj/item/clothing/head/frenchberet/equipped(mob/M, slot) . = ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 247062581d..21cec4f7d2 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -93,6 +93,8 @@ var/earflaps = TRUE cold_protection = HEAD min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT + heat_protection = HEAD + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT ///Sprite visible when the ushanka flaps are folded up. var/upsprite = "ushankaup" ///Sprite visible when the ushanka flaps are folded down. @@ -147,7 +149,7 @@ beepsky_fashion = /datum/beepsky_fashion/cat /obj/item/clothing/head/kitty/equipped(mob/living/carbon/human/user, slot) - if(ishuman(user) && slot == SLOT_HEAD) + if(ishuman(user) && slot == ITEM_SLOT_HEAD) update_icon(user) user.update_inv_head() //Color might have been changed by update_icon. ..() @@ -186,7 +188,7 @@ /obj/item/clothing/head/cardborg/equipped(mob/living/user, slot) ..() - if(ishuman(user) && slot == SLOT_HEAD) + if(ishuman(user) && slot == ITEM_SLOT_HEAD) var/mob/living/carbon/human/H = user if(istype(H.wear_suit, /obj/item/clothing/suit/cardborg)) var/obj/item/clothing/suit/cardborg/CB = H.wear_suit @@ -265,7 +267,7 @@ /obj/item/clothing/head/foilhat/equipped(mob/living/carbon/human/user, slot) . = ..() - if(slot != SLOT_HEAD || warped) + if(slot != ITEM_SLOT_HEAD || warped) return if(paranoia) QDEL_NULL(paranoia) @@ -295,7 +297,7 @@ if(!isliving(loc) || !paranoia) return var/mob/living/target = loc - if(target.get_item_by_slot(SLOT_HEAD) != src) + if(target.get_item_by_slot(ITEM_SLOT_HEAD) != src) return QDEL_NULL(paranoia) if(!target.IsUnconscious()) diff --git a/code/modules/clothing/masks/_masks.dm b/code/modules/clothing/masks/_masks.dm index ef7c6a1926..cca13ce1d8 100644 --- a/code/modules/clothing/masks/_masks.dm +++ b/code/modules/clothing/masks/_masks.dm @@ -18,7 +18,7 @@ /obj/item/clothing/mask/equipped(mob/M, slot) . = ..() - if (slot == SLOT_WEAR_MASK && modifies_speech) + if (slot == ITEM_SLOT_MASK && modifies_speech) RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/code/modules/clothing/masks/cluwne.dm b/code/modules/clothing/masks/cluwne.dm index a1177e2b47..f39f5e73b8 100644 --- a/code/modules/clothing/masks/cluwne.dm +++ b/code/modules/clothing/masks/cluwne.dm @@ -55,7 +55,7 @@ . = ..() if(!ishuman(user)) return - if(slot == SLOT_WEAR_MASK) + if(slot == ITEM_SLOT_MASK) var/mob/living/carbon/human/H = user H.dna.add_mutation(CLUWNEMUT) return @@ -88,7 +88,7 @@ if(!ishuman(user)) return var/mob/living/carbon/human/H = user - if(slot == SLOT_WEAR_MASK) + if(slot == ITEM_SLOT_MASK) if(is_cursed && can_cluwne) //logic predetermined log_admin("[key_name(H)] was made into a cluwne by [src]") message_admins("[key_name(H)] got cluwned by [src]") diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index e6a0425920..45da6a9a75 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -290,7 +290,7 @@ . = ..() if(iscarbon(user)) var/mob/living/carbon/C = user - if((C.get_item_by_slot(SLOT_HEAD == src)) || (C.get_item_by_slot(SLOT_WEAR_MASK) == src)) + if((C.get_item_by_slot(ITEM_SLOT_HEAD == src)) || (C.get_item_by_slot(ITEM_SLOT_MASK) == src)) to_chat(user, "You can't tie [src] while wearing it!") return if(slot_flags & ITEM_SLOT_HEAD) diff --git a/code/modules/clothing/neck/_neck.dm b/code/modules/clothing/neck/_neck.dm index 28a3343ae6..1f40df0f57 100644 --- a/code/modules/clothing/neck/_neck.dm +++ b/code/modules/clothing/neck/_neck.dm @@ -226,7 +226,7 @@ return /obj/item/clothing/neck/petcollar/locked/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags) - if(loc == user && user.get_item_by_slot(SLOT_NECK) && lock != FALSE) + if(loc == user && user.get_item_by_slot(ITEM_SLOT_NECK) && lock != FALSE) to_chat(user, "The collar is locked! You'll need unlock the collar before you can take it off!") return ..() @@ -323,7 +323,7 @@ . = ..() if(iscarbon(user)) var/mob/living/carbon/C = user - if(C.get_item_by_slot(SLOT_NECK) == src) + if(C.get_item_by_slot(ITEM_SLOT_NECK) == src) to_chat(user, "You can't untie [src] while wearing it!") return if(user.is_holding(src)) diff --git a/code/modules/clothing/outfits/vr.dm b/code/modules/clothing/outfits/vr.dm index ac852a35a8..99fc5d1359 100644 --- a/code/modules/clothing/outfits/vr.dm +++ b/code/modules/clothing/outfits/vr.dm @@ -36,7 +36,7 @@ . = ..() var/key = H.key ? H.key : preference_source ? preference_source.key : null var/obj/item/uplink/U = new /obj/item/uplink/nuclear_restricted(H, key, 80) - H.equip_to_slot_or_del(U, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(U, ITEM_SLOT_BACKPACK) var/obj/item/implant/weapons_auth/W = new W.implant(H) var/obj/item/implant/explosive/E = new diff --git a/code/modules/clothing/outfits/vv_outfit.dm b/code/modules/clothing/outfits/vv_outfit.dm index b9d9bf0b22..de230b254e 100644 --- a/code/modules/clothing/outfits/vv_outfit.dm +++ b/code/modules/clothing/outfits/vv_outfit.dm @@ -10,35 +10,35 @@ /datum/outfit/varedit/proc/set_equipement_by_slot(slot,item_path) switch(slot) - if(SLOT_W_UNIFORM) + if(ITEM_SLOT_ICLOTHING) uniform = item_path - if(SLOT_BACK) + if(ITEM_SLOT_BACK) back = item_path - if(SLOT_WEAR_SUIT) + if(ITEM_SLOT_OCLOTHING) suit = item_path - if(SLOT_BELT) + if(ITEM_SLOT_BELT) belt = item_path - if(SLOT_GLOVES) + if(ITEM_SLOT_GLOVES) gloves = item_path - if(SLOT_SHOES) + if(ITEM_SLOT_FEET) shoes = item_path - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) head = item_path - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) mask = item_path - if(SLOT_NECK) + if(ITEM_SLOT_NECK) neck = item_path - if(SLOT_EARS) + if(ITEM_SLOT_EARS) ears = item_path - if(SLOT_GLASSES) + if(ITEM_SLOT_EYES) glasses = item_path - if(SLOT_WEAR_ID) + if(ITEM_SLOT_ID) id = item_path - if(SLOT_S_STORE) + if(ITEM_SLOT_SUITSTORE) suit_store = item_path - if(SLOT_L_STORE) + if(ITEM_SLOT_LPOCKET) l_pocket = item_path - if(SLOT_R_STORE) + if(ITEM_SLOT_RPOCKET) r_pocket = item_path @@ -68,7 +68,7 @@ //Copy equipment var/list/result = list() - var/list/slots_to_check = list(SLOT_W_UNIFORM,SLOT_BACK,SLOT_WEAR_SUIT,SLOT_BELT,SLOT_GLOVES,SLOT_SHOES,SLOT_HEAD,SLOT_WEAR_MASK,SLOT_NECK,SLOT_EARS,SLOT_GLASSES,SLOT_WEAR_ID,SLOT_S_STORE,SLOT_L_STORE,SLOT_R_STORE) + var/list/slots_to_check = list(ITEM_SLOT_ICLOTHING,ITEM_SLOT_BACK,ITEM_SLOT_OCLOTHING,ITEM_SLOT_BELT,ITEM_SLOT_GLOVES,ITEM_SLOT_FEET,ITEM_SLOT_HEAD,ITEM_SLOT_MASK,ITEM_SLOT_NECK,ITEM_SLOT_EARS,ITEM_SLOT_EYES,ITEM_SLOT_ID,ITEM_SLOT_SUITSTORE,ITEM_SLOT_LPOCKET,ITEM_SLOT_RPOCKET) for(var/s in slots_to_check) var/obj/item/I = get_item_by_slot(s) var/vedits = collect_vv(I) @@ -79,7 +79,7 @@ //Copy access O.stored_access = list() - var/obj/item/id_slot = get_item_by_slot(SLOT_WEAR_ID) + var/obj/item/id_slot = get_item_by_slot(ITEM_SLOT_ID) if(id_slot) O.stored_access |= id_slot.GetAccess() //Copy hands @@ -98,7 +98,7 @@ result["RHAND"] = vedits O.vv_values = result //Copy backpack contents if exist. - var/obj/item/backpack = get_item_by_slot(SLOT_BACK) + var/obj/item/backpack = get_item_by_slot(ITEM_SLOT_BACK) if(istype(backpack) && SEND_SIGNAL(backpack, COMSIG_CONTAINS_STORAGE)) var/list/bp_stuff = list() var/list/typecounts = list() @@ -136,7 +136,7 @@ for(var/vname in edits) I.vv_edit_var(vname,edits[vname]) //Apply access - var/obj/item/id_slot = H.get_item_by_slot(SLOT_WEAR_ID) + var/obj/item/id_slot = H.get_item_by_slot(ITEM_SLOT_ID) if(id_slot) var/obj/item/card/id/card = id_slot.GetID() if(istype(card)) diff --git a/code/modules/clothing/shoes/_shoes.dm b/code/modules/clothing/shoes/_shoes.dm index c98824fa7f..d8ac875df5 100644 --- a/code/modules/clothing/shoes/_shoes.dm +++ b/code/modules/clothing/shoes/_shoes.dm @@ -87,7 +87,7 @@ /obj/item/clothing/shoes/equipped(mob/user, slot) . = ..() - if(offset && slot_flags & slotdefine2slotbit(slot)) + if(offset && (slot_flags & slot)) user.pixel_y += offset worn_y_dimension -= (offset * 2) user.update_inv_shoes() diff --git a/code/modules/clothing/shoes/cluwne.dm b/code/modules/clothing/shoes/cluwne.dm index fbe1ba624b..aec57a2148 100644 --- a/code/modules/clothing/shoes/cluwne.dm +++ b/code/modules/clothing/shoes/cluwne.dm @@ -23,7 +23,7 @@ . = ..() if(!ishuman(user)) return - if(slot == SLOT_SHOES) + if(slot == ITEM_SLOT_FEET) var/mob/living/carbon/human/H = user H.dna.add_mutation(CLUWNEMUT) return diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 773b1ac361..cd01d6f099 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -96,7 +96,7 @@ /obj/item/clothing/shoes/magboots/crushing/equipped(mob/user,slot) . = ..() - if (slot == SLOT_SHOES && magpulse) + if (slot == ITEM_SLOT_FEET && magpulse) RegisterSignal(user, COMSIG_MOVABLE_MOVED,.proc/crush) /obj/item/clothing/shoes/magboots/crushing/dropped(mob/user) diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 669ffa1780..7a67308760 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -28,7 +28,7 @@ /obj/item/clothing/shoes/combat/sneakboots/equipped(mob/user, slot) . = ..() - if(slot == SLOT_SHOES) + if(slot == ITEM_SLOT_FEET) ADD_TRAIT(user, TRAIT_SILENT_STEP, SHOES_TRAIT) /obj/item/clothing/shoes/combat/sneakboots/dropped(mob/user) @@ -112,7 +112,7 @@ /obj/item/clothing/shoes/clown_shoes/equipped(mob/user, slot) . = ..() - if(slot == SLOT_SHOES) + if(slot == ITEM_SLOT_FEET) if(enabled_waddle) waddle = user.AddComponent(/datum/component/waddling) if(user.mind && HAS_TRAIT(user.mind, TRAIT_CLOWN_MENTALITY)) @@ -340,7 +340,7 @@ /obj/item/clothing/shoes/wheelys/ui_action_click(mob/user, action) if(!isliving(user)) return - if(!istype(user.get_item_by_slot(SLOT_SHOES), /obj/item/clothing/shoes/wheelys)) + if(!istype(user.get_item_by_slot(ITEM_SLOT_FEET), /obj/item/clothing/shoes/wheelys)) to_chat(user, "You must be wearing the wheely-heels to use them!") return if(!(W.is_occupant(user))) @@ -460,7 +460,7 @@ /obj/item/clothing/shoes/wallwalkers/equipped(mob/user,slot) . = ..() - if(slot == SLOT_SHOES) + if(slot == ITEM_SLOT_FEET) RegisterSignal(user, COMSIG_MOB_CLIENT_MOVE,.proc/intercept_user_move) /obj/item/clothing/shoes/wallwalkers/dropped(mob/user) diff --git a/code/modules/clothing/shoes/taeclowndo.dm b/code/modules/clothing/shoes/taeclowndo.dm index c0f8a77543..82f467d8b1 100644 --- a/code/modules/clothing/shoes/taeclowndo.dm +++ b/code/modules/clothing/shoes/taeclowndo.dm @@ -15,7 +15,7 @@ var/mob/living/carbon/human/H = user if(!(HAS_TRAIT(H, TRAIT_CLUMSY)) && !(H.mind && HAS_TRAIT(H.mind, TRAIT_CLOWN_MENTALITY))) return - if(slot == SLOT_SHOES) + if(slot == ITEM_SLOT_FEET) spells = new for(var/spell in spelltypes) var/obj/effect/proc_holder/spell/S = new spell @@ -29,7 +29,7 @@ if(!ishuman(user)) return var/mob/living/carbon/human/H = user - if(H.get_item_by_slot(SLOT_SHOES) == src) + if(H.get_item_by_slot(ITEM_SLOT_FEET) == src) for(var/spell in spells) var/obj/effect/proc_holder/spell/S = spell H.mind.spell_list.Remove(S) diff --git a/code/modules/clothing/spacesuits/chronosuit.dm b/code/modules/clothing/spacesuits/chronosuit.dm index 6642731d8b..e30b0953c6 100644 --- a/code/modules/clothing/spacesuits/chronosuit.dm +++ b/code/modules/clothing/spacesuits/chronosuit.dm @@ -107,7 +107,7 @@ teleport_now.UpdateButtonIcon() - var/list/nonsafe_slots = list(SLOT_BELT, SLOT_BACK) + var/list/nonsafe_slots = list(ITEM_SLOT_BELT, ITEM_SLOT_BACK) var/list/exposed = list() for(var/slot in nonsafe_slots) var/obj/item/slot_item = user.get_item_by_slot(slot) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 18138bf4b6..d8a6426295 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -50,12 +50,12 @@ soundloop.stop(user) /obj/item/clothing/head/helmet/space/hardsuit/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_HEAD) + if(slot == ITEM_SLOT_HEAD) return 1 /obj/item/clothing/head/helmet/space/hardsuit/equipped(mob/user, slot) ..() - if(slot != SLOT_HEAD) + if(slot != ITEM_SLOT_HEAD) if(suit) suit.RemoveHelmet() soundloop.stop(user) @@ -118,7 +118,7 @@ if(jetpack) to_chat(user, "[src] already has a jetpack installed.") return - if(src == user.get_item_by_slot(SLOT_WEAR_SUIT)) //Make sure the player is not wearing the suit before applying the upgrade. + if(src == user.get_item_by_slot(ITEM_SLOT_OCLOTHING)) //Make sure the player is not wearing the suit before applying the upgrade. to_chat(user, "You cannot install the upgrade to [src] while wearing it.") return @@ -130,7 +130,7 @@ if(!jetpack) to_chat(user, "[src] has no jetpack installed.") return - if(src == user.get_item_by_slot(SLOT_WEAR_SUIT)) + if(src == user.get_item_by_slot(ITEM_SLOT_OCLOTHING)) to_chat(user, "You cannot remove the jetpack from [src] while wearing it.") return @@ -145,7 +145,7 @@ /obj/item/clothing/suit/space/hardsuit/equipped(mob/user, slot) ..() if(jetpack) - if(slot == SLOT_WEAR_SUIT) + if(slot == ITEM_SLOT_OCLOTHING) for(var/X in jetpack.actions) var/datum/action/A = X A.Grant(user) @@ -158,7 +158,7 @@ A.Remove(user) /obj/item/clothing/suit/space/hardsuit/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_WEAR_SUIT) //we only give the mob the ability to toggle the helmet if he's wearing the hardsuit. + if(slot == ITEM_SLOT_OCLOTHING) //we only give the mob the ability to toggle the helmet if he's wearing the hardsuit. return 1 //Engineering @@ -488,7 +488,7 @@ /obj/item/clothing/head/helmet/space/hardsuit/medical/equipped(mob/living/carbon/human/user, slot) ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) var/datum/atom_hud/DHUD = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] DHUD.add_hud_to(user) @@ -528,7 +528,7 @@ /obj/item/clothing/head/helmet/space/hardsuit/rd/equipped(mob/living/carbon/human/user, slot) ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) var/datum/atom_hud/DHUD = GLOB.huds[DATA_HUD_DIAGNOSTIC_BASIC] DHUD.add_hud_to(user) @@ -702,7 +702,7 @@ /obj/item/clothing/head/helmet/space/hardsuit/ancient/mason/equipped(mob/living/carbon/human/user, slot) ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) var/datum/atom_hud/DHUD = GLOB.huds[DATA_HUD_DIAGNOSTIC_BASIC] DHUD.add_hud_to(user) ADD_TRAIT(user, TRAIT_TESLA_SHOCKIMMUNE, "mason_hardsuit") @@ -726,7 +726,7 @@ /obj/item/clothing/suit/space/hardsuit/ancient/equipped(mob/user, slot) . = ..() - if(slot != SLOT_WEAR_SUIT) + if(slot != ITEM_SLOT_OCLOTHING) if(listeningTo) UnregisterSignal(listeningTo, COMSIG_MOVABLE_MOVED) return diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 513ad94365..57d2ae5c69 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -206,7 +206,7 @@ /obj/item/clothing/suit/cardborg/equipped(mob/living/user, slot) ..() - if(slot == SLOT_WEAR_SUIT) + if(slot == ITEM_SLOT_OCLOTHING) disguise(user) /obj/item/clothing/suit/cardborg/dropped(mob/living/user) @@ -279,7 +279,9 @@ item_state = "labcoat" body_parts_covered = CHEST|GROIN|ARMS|LEGS|FEET cold_protection = CHEST|GROIN|ARMS + heat_protection = CHEST|GROIN|ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT //Space carp like space, so you should too + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT allowed = list(/obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman, /obj/item/gun/ballistic/automatic/speargun, /obj/item/staff/bostaff) hoodtype = /obj/item/clothing/head/hooded/carp_hood @@ -289,7 +291,9 @@ icon_state = "carp_casual" body_parts_covered = HEAD cold_protection = HEAD + heat_protection = HEAD min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT flags_inv = HIDEHAIR|HIDEEARS /obj/item/clothing/suit/hooded/ian_costume //It's Ian, rub his bell- oh god what happened to his inside parts? @@ -362,7 +366,10 @@ item_state = "ran_suit" body_parts_covered = CHEST|GROIN|LEGS flags_inv = HIDEJUMPSUIT|HIDETAUR - heat_protection = CHEST|GROIN|LEGS //fluffy tails! + cold_protection = CHEST|GROIN|LEGS //fluffy tails! + min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT //Bleh, same as winter coat + heat_protection = CHEST|GROIN|LEGS + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT mutantrace_variation = STYLE_DIGITIGRADE|STYLE_NO_ANTHRO_ICON /obj/item/clothing/head/ran @@ -419,7 +426,9 @@ allowed = list(/obj/item/flashlight, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman, /obj/item/toy, /obj/item/storage/fancy/cigarettes, /obj/item/lighter, /obj/item/radio) body_parts_covered = CHEST|ARMS cold_protection = CHEST|GROIN|ARMS + heat_protection = CHEST|GROIN|ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT mutantrace_variation = STYLE_DIGITIGRADE|STYLE_NO_ANTHRO_ICON /obj/item/clothing/suit/jacket/flannel @@ -520,6 +529,7 @@ icon_state = "leathercoat" body_parts_covered = CHEST|GROIN|ARMS|LEGS cold_protection = CHEST|GROIN|ARMS|LEGS + heat_protection = CHEST|GROIN|ARMS|LEGS mutantrace_variation = STYLE_DIGITIGRADE /obj/item/clothing/suit/jacket/puffer @@ -537,6 +547,7 @@ item_state = "armor" body_parts_covered = CHEST|GROIN cold_protection = CHEST|GROIN + heat_protection = CHEST|GROIN armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 30, "rad" = 0, "fire" = 0, "acid" = 0) /obj/item/clothing/suit/jacket/miljacket @@ -655,7 +666,9 @@ item_state = "coatwinter" body_parts_covered = CHEST|GROIN|ARMS cold_protection = CHEST|GROIN|ARMS + heat_protection = CHEST|GROIN|ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 10, "rad" = 0, "fire" = 0, "acid" = 0) allowed = list(/obj/item/flashlight, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman, /obj/item/toy, /obj/item/storage/fancy/cigarettes, /obj/item/lighter) mutantrace_variation = STYLE_DIGITIGRADE|STYLE_NO_ANTHRO_ICON @@ -666,7 +679,9 @@ icon_state = "winterhood" body_parts_covered = HEAD cold_protection = HEAD + heat_protection = HEAD min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT + max_heat_protection_temperature = COAT_MAX_TEMP_PROTECT flags_inv = HIDEHAIR|HIDEEARS rad_flags = RAD_NO_CONTAMINATE @@ -1012,7 +1027,7 @@ /obj/item/clothing/suit/hooded/wintercoat/ratvar/equipped(mob/living/user,slot) ..() - if (slot != SLOT_WEAR_SUIT || !real) + if (slot != ITEM_SLOT_OCLOTHING || !real) return if (is_servant_of_ratvar(user)) return @@ -1034,7 +1049,7 @@ /obj/item/clothing/suit/hooded/wintercoat/narsie/equipped(mob/living/user,slot) ..() - if (slot != SLOT_WEAR_SUIT || !real) + if (slot != ITEM_SLOT_OCLOTHING || !real) return if (iscultist(user)) return diff --git a/code/modules/clothing/suits/reactive_armour.dm b/code/modules/clothing/suits/reactive_armour.dm index 98fb836c38..608aca2aad 100644 --- a/code/modules/clothing/suits/reactive_armour.dm +++ b/code/modules/clothing/suits/reactive_armour.dm @@ -51,7 +51,7 @@ icon_state = "reactiveoff" item_state = "reactiveoff" add_fingerprint(user) - if(user.get_item_by_slot(SLOT_WEAR_SUIT) == src) + if(user.get_item_by_slot(ITEM_SLOT_OCLOTHING) == src) user.update_inv_wear_suit() /obj/item/clothing/suit/armor/reactive/emp_act(severity) @@ -177,7 +177,7 @@ /obj/item/clothing/suit/armor/reactive/tesla/equipped(mob/user, slot) ..() - if(slot_flags & slotdefine2slotbit(slot)) //Was equipped to a valid slot for this item? + if(slot_flags & slot) //Was equipped to a valid slot for this item? ADD_TRAIT(user, TRAIT_TESLA_SHOCKIMMUNE, "reactive_tesla_armor") /obj/item/clothing/suit/armor/reactive/tesla/block_action(mob/living/owner, atom/object, damage, attack_text, attack_type, armour_penetration, mob/attacker, def_zone, final_block_chance, list/block_return) diff --git a/code/modules/clothing/suits/toggles.dm b/code/modules/clothing/suits/toggles.dm index 78708f54bb..5ee247e135 100644 --- a/code/modules/clothing/suits/toggles.dm +++ b/code/modules/clothing/suits/toggles.dm @@ -31,11 +31,11 @@ ToggleHood() /obj/item/clothing/suit/hooded/item_action_slot_check(slot, mob/user, datum/action/A) - if(slot == SLOT_WEAR_SUIT || slot == SLOT_NECK) + if(slot == ITEM_SLOT_OCLOTHING || slot == ITEM_SLOT_NECK) return 1 /obj/item/clothing/suit/hooded/equipped(mob/user, slot) - if(slot != SLOT_WEAR_SUIT && slot != SLOT_NECK) + if(slot != ITEM_SLOT_OCLOTHING && slot != ITEM_SLOT_NECK) RemoveHood() ..() @@ -80,7 +80,7 @@ if(H.head) to_chat(H, "You're already wearing something on your head!") return - else if(H.equip_to_slot_if_possible(hood,SLOT_HEAD,0,0,1)) + else if(H.equip_to_slot_if_possible(hood,ITEM_SLOT_HEAD,0,0,1)) suittoggled = TRUE update_icon() H.update_inv_wear_suit() @@ -102,7 +102,7 @@ /obj/item/clothing/head/hooded/equipped(mob/user, slot) ..() - if(slot != SLOT_HEAD) + if(slot != ITEM_SLOT_HEAD) if(suit) suit.RemoveHood() else @@ -177,7 +177,7 @@ /obj/item/clothing/suit/space/hardsuit/equipped(mob/user, slot) if(!helmettype) return - if(slot != SLOT_WEAR_SUIT) + if(slot != ITEM_SLOT_OCLOTHING) RemoveHelmet() ..() @@ -222,7 +222,7 @@ if(message) to_chat(H, "You're already wearing something on your head!") return - else if(H.equip_to_slot_if_possible(helmet,SLOT_HEAD,0,0,1)) + else if(H.equip_to_slot_if_possible(helmet,ITEM_SLOT_HEAD,0,0,1)) if(message) to_chat(H, "You engage the helmet on the hardsuit.") suittoggled = TRUE diff --git a/code/modules/clothing/suits/wiz_robe.dm b/code/modules/clothing/suits/wiz_robe.dm index 977e916f87..5b131749b8 100644 --- a/code/modules/clothing/suits/wiz_robe.dm +++ b/code/modules/clothing/suits/wiz_robe.dm @@ -167,7 +167,7 @@ actions_types = list(/datum/action/item_action/stickmen) /obj/item/clothing/suit/wizrobe/paper/item_action_slot_check(slot, mob/user, datum/action/A) - if(A.type == /datum/action/item_action/stickmen && slot != SLOT_WEAR_SUIT) + if(A.type == /datum/action/item_action/stickmen && slot != ITEM_SLOT_OCLOTHING) return FALSE return ..() diff --git a/code/modules/clothing/under/_under.dm b/code/modules/clothing/under/_under.dm index 59af632d2a..61e4bb5149 100644 --- a/code/modules/clothing/under/_under.dm +++ b/code/modules/clothing/under/_under.dm @@ -114,7 +114,7 @@ if(!alt_covers_chest) body_parts_covered |= CHEST - if(attached_accessory && slot != SLOT_HANDS && ishuman(user)) + if(attached_accessory && slot != ITEM_SLOT_HANDS && ishuman(user)) var/mob/living/carbon/human/H = user attached_accessory.on_uniform_equip(src, user) if(attached_accessory.above_suit) diff --git a/code/modules/clothing/under/cluwne.dm b/code/modules/clothing/under/cluwne.dm index 5a908c5663..e1af4b5171 100644 --- a/code/modules/clothing/under/cluwne.dm +++ b/code/modules/clothing/under/cluwne.dm @@ -16,7 +16,7 @@ /obj/item/clothing/under/cluwne/equipped(mob/living/carbon/user, slot) if(!ishuman(user)) return - if(slot == SLOT_W_UNIFORM) + if(slot == ITEM_SLOT_ICLOTHING) var/mob/living/carbon/human/H = user H.dna.add_mutation(CLUWNEMUT) return ..() diff --git a/code/modules/clothing/under/color.dm b/code/modules/clothing/under/color.dm index 824f026e8c..06d2771d88 100644 --- a/code/modules/clothing/under/color.dm +++ b/code/modules/clothing/under/color.dm @@ -17,7 +17,7 @@ if(ishuman(loc)) var/mob/living/carbon/human/H = loc - H.equip_to_slot_or_del(new C(H), SLOT_W_UNIFORM) //or else you end up with naked assistants running around everywhere... + H.equip_to_slot_or_del(new C(H), ITEM_SLOT_ICLOTHING) //or else you end up with naked assistants running around everywhere... else new C(loc) return INITIALIZE_HINT_QDEL @@ -30,7 +30,7 @@ var/obj/item/clothing/under/color/jumpskirt/C = pick(subtypesof(/obj/item/clothing/under/color/jumpskirt) - /obj/item/clothing/under/color/jumpskirt/random) if(ishuman(loc)) var/mob/living/carbon/human/H = loc - H.equip_to_slot_or_del(new C(H), SLOT_W_UNIFORM) + H.equip_to_slot_or_del(new C(H), ITEM_SLOT_ICLOTHING) else new C(loc) return INITIALIZE_HINT_QDEL diff --git a/code/modules/events/wizard/curseditems.dm b/code/modules/events/wizard/curseditems.dm index 2f0b9c68f8..061de0ea7c 100644 --- a/code/modules/events/wizard/curseditems.dm +++ b/code/modules/events/wizard/curseditems.dm @@ -18,23 +18,23 @@ switch(item_set) if("wizardmimic") - loadout[SLOT_WEAR_SUIT] = /obj/item/clothing/suit/wizrobe - loadout[SLOT_SHOES] = /obj/item/clothing/shoes/sandal/magic - loadout[SLOT_HEAD] = /obj/item/clothing/head/wizard + loadout[ITEM_SLOT_OCLOTHING] = /obj/item/clothing/suit/wizrobe + loadout[ITEM_SLOT_FEET] = /obj/item/clothing/shoes/sandal/magic + loadout[ITEM_SLOT_HEAD] = /obj/item/clothing/head/wizard ruins_spaceworthiness = 1 if("swords") - loadout[SLOT_HANDS] = /obj/item/katana/cursed + loadout[ITEM_SLOT_HANDS] = /obj/item/katana/cursed if("bigfatdoobie") - loadout[SLOT_WEAR_MASK] = /obj/item/clothing/mask/cigarette/rollie/trippy + loadout[ITEM_SLOT_MASK] = /obj/item/clothing/mask/cigarette/rollie/trippy ruins_spaceworthiness = 1 if("boxing") - loadout[SLOT_WEAR_MASK] = /obj/item/clothing/mask/luchador - loadout[SLOT_GLOVES] = /obj/item/clothing/gloves/boxing + loadout[ITEM_SLOT_MASK] = /obj/item/clothing/mask/luchador + loadout[ITEM_SLOT_GLOVES] = /obj/item/clothing/gloves/boxing ruins_spaceworthiness = 1 if("voicemodulators") - loadout[SLOT_WEAR_MASK] = /obj/item/clothing/mask/chameleon + loadout[ITEM_SLOT_MASK] = /obj/item/clothing/mask/chameleon if("catgirls2015") - loadout[SLOT_HEAD] = /obj/item/clothing/head/kitty + loadout[ITEM_SLOT_HEAD] = /obj/item/clothing/head/kitty ruins_spaceworthiness = 1 ruins_wizard_loadout = 1 diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index a43bb0cff5..6845c4ef00 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -739,7 +739,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( if(close_other) //increase the odds for(var/i in 1 to 5) message_pool.Add("You feel a tiny prick!") - var/obj/item/storage/equipped_backpack = other.get_item_by_slot(SLOT_BACK) + var/obj/item/storage/equipped_backpack = other.get_item_by_slot(ITEM_SLOT_BACK) if(istype(equipped_backpack)) for(var/i in 1 to 5) //increase the odds message_pool.Add("[other] puts the [pick(\ diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index f650a935ea..1c151511af 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -35,7 +35,7 @@ //If they have a hat/helmet and the user is targeting their head. if(affecting == BODY_ZONE_HEAD) - var/obj/item/I = target.get_item_by_slot(SLOT_HEAD) + var/obj/item/I = target.get_item_by_slot(ITEM_SLOT_HEAD) if(I) headarmor = I.armor.melee diff --git a/code/modules/holiday/dynamic.dm b/code/modules/holiday/dynamic.dm new file mode 100644 index 0000000000..f75dd37542 --- /dev/null +++ b/code/modules/holiday/dynamic.dm @@ -0,0 +1,10 @@ +/datum/holiday/dynamic + name = "Dynamic Day" + +/datum/holiday/dynamic/shouldCelebrate(dd, mm, yy, ww, ddd) + var/list/days = CONFIG_GET(keyed_list/dynamic_mode_days) + return lowertext(ddd) in days + +/datum/holiday/dynamic/celebrate() + GLOB.dynamic_forced_threat_level = rand(90, 100) + CONFIG_SET(string/force_gamemode, "dynamic") // prevents the round vote, which prevents extended diff --git a/code/modules/holiday/halloween/jacqueen.dm b/code/modules/holiday/halloween/jacqueen.dm index 1ebacf0968..723b404717 100644 --- a/code/modules/holiday/halloween/jacqueen.dm +++ b/code/modules/holiday/halloween/jacqueen.dm @@ -432,7 +432,7 @@ var/obj/item/W = C.head C.dropItemToGround(W, TRUE) var/jaqc_latern = new /obj/item/clothing/head/hardhat/pumpkinhead/jaqc - C.equip_to_slot(jaqc_latern, SLOT_HEAD, 1, 1) + C.equip_to_slot(jaqc_latern, ITEM_SLOT_HEAD, 1, 1) if(4) visible_message("[src] waves their arms around, \"In your body there's something amiss, you'll find it's a chem made by my sis!\"") jacqrunes("In your body there's something amiss, you'll find it's a chem made by my sis!", C) @@ -449,7 +449,7 @@ var/obj/item/W = H.wear_suit H.dropItemToGround(W, TRUE) var/ghost = new /obj/item/clothing/suit/ghost_sheet/sticky - H.equip_to_slot(ghost, SLOT_WEAR_SUIT, 1, 1) + H.equip_to_slot(ghost, ITEM_SLOT_OCLOTHING, 1, 1) poof() //Blame Fel diff --git a/code/modules/integrated_electronics/subtypes/smart.dm b/code/modules/integrated_electronics/subtypes/smart.dm index 5dc866c556..e1fdc36552 100644 --- a/code/modules/integrated_electronics/subtypes/smart.dm +++ b/code/modules/integrated_electronics/subtypes/smart.dm @@ -97,7 +97,7 @@ return idc.access = assembly.access_card.access var/turf/a_loc = get_turf(assembly) - var/list/P = cir_get_path_to(assembly, locate(get_pin_data(IC_INPUT, 1),get_pin_data(IC_INPUT, 2),a_loc.z), /turf/proc/Distance_cardinal, 0, 200, id=idc, exclude=get_turf(get_pin_data_as_type(IC_INPUT,3, /atom)), simulated_only = 0) + var/list/P = get_path_to(assembly, locate(get_pin_data(IC_INPUT, 1),get_pin_data(IC_INPUT, 2),a_loc.z), 200, id=idc, exclude=get_turf(get_pin_data_as_type(IC_INPUT,3, /atom)), simulated_only = 0) if(!P) activate_pin(3) diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index 1f5becace8..6eaad5e2dc 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -241,7 +241,7 @@ var/satchel = /obj/item/storage/backpack/satchel var/duffelbag = /obj/item/storage/backpack/duffelbag - var/pda_slot = SLOT_BELT + var/pda_slot = ITEM_SLOT_BELT /datum/outfit/job/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE, client/preference_source) var/preference_backpack = preference_source?.prefs.backbag diff --git a/code/modules/jobs/job_types/atmospheric_technician.dm b/code/modules/jobs/job_types/atmospheric_technician.dm index de66c32138..82eae55bde 100644 --- a/code/modules/jobs/job_types/atmospheric_technician.dm +++ b/code/modules/jobs/job_types/atmospheric_technician.dm @@ -40,7 +40,7 @@ satchel = /obj/item/storage/backpack/satchel/eng duffelbag = /obj/item/storage/backpack/duffelbag/engineering box = /obj/item/storage/box/survival/engineer - pda_slot = SLOT_L_STORE + pda_slot = ITEM_SLOT_LPOCKET backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) /datum/outfit/job/atmos/rig @@ -49,4 +49,4 @@ mask = /obj/item/clothing/mask/gas suit = /obj/item/clothing/suit/space/hardsuit/engine/atmos suit_store = /obj/item/tank/internals/oxygen - internals_slot = SLOT_S_STORE + internals_slot = ITEM_SLOT_SUITSTORE diff --git a/code/modules/jobs/job_types/chaplain.dm b/code/modules/jobs/job_types/chaplain.dm index a9e891a303..7789e3c614 100644 --- a/code/modules/jobs/job_types/chaplain.dm +++ b/code/modules/jobs/job_types/chaplain.dm @@ -34,7 +34,7 @@ B.icon_state = GLOB.bible_icon_state B.item_state = GLOB.bible_item_state to_chat(H, "There is already an established religion onboard the station. You are an acolyte of [GLOB.deity]. Defer to the Chaplain.") - H.equip_to_slot_or_del(B, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(B, ITEM_SLOT_BACKPACK) var/nrt = GLOB.holy_weapon_type || /obj/item/nullrod var/obj/item/nullrod/N = new nrt(H) H.put_in_hands(N) @@ -108,7 +108,7 @@ GLOB.bible_name = B.name GLOB.deity = B.deity_name - H.equip_to_slot_or_del(B, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(B, ITEM_SLOT_BACKPACK) SSblackbox.record_feedback("text", "religion_name", 1, "[new_religion]", 1) SSblackbox.record_feedback("text", "religion_deity", 1, "[new_deity]", 1) diff --git a/code/modules/jobs/job_types/chief_engineer.dm b/code/modules/jobs/job_types/chief_engineer.dm index 804952dbb2..6fbf546e95 100644 --- a/code/modules/jobs/job_types/chief_engineer.dm +++ b/code/modules/jobs/job_types/chief_engineer.dm @@ -55,7 +55,7 @@ satchel = /obj/item/storage/backpack/satchel/eng duffelbag = /obj/item/storage/backpack/duffelbag/engineering box = /obj/item/storage/box/survival/engineer - pda_slot = SLOT_L_STORE + pda_slot = ITEM_SLOT_LPOCKET chameleon_extras = /obj/item/stamp/ce /datum/outfit/job/ce/rig @@ -68,4 +68,4 @@ glasses = /obj/item/clothing/glasses/meson/engine gloves = /obj/item/clothing/gloves/color/yellow head = null - internals_slot = SLOT_S_STORE + internals_slot = ITEM_SLOT_SUITSTORE diff --git a/code/modules/jobs/job_types/paramedic.dm b/code/modules/jobs/job_types/paramedic.dm index 331bad9bfe..b9fc5809e3 100644 --- a/code/modules/jobs/job_types/paramedic.dm +++ b/code/modules/jobs/job_types/paramedic.dm @@ -41,7 +41,7 @@ r_pocket = /obj/item/pinpointer/crew l_pocket = /obj/item/pda/medical backpack_contents = list(/obj/item/roller=1) - pda_slot = SLOT_L_STORE + pda_slot = ITEM_SLOT_LPOCKET backpack = /obj/item/storage/backpack/medic satchel = /obj/item/storage/backpack/satchel/med diff --git a/code/modules/jobs/job_types/research_director.dm b/code/modules/jobs/job_types/research_director.dm index 6c2cb94d13..e70e747ae6 100644 --- a/code/modules/jobs/job_types/research_director.dm +++ b/code/modules/jobs/job_types/research_director.dm @@ -63,4 +63,4 @@ mask = /obj/item/clothing/mask/breath suit = /obj/item/clothing/suit/space/hardsuit/rd suit_store = /obj/item/tank/internals/oxygen - internals_slot = SLOT_S_STORE + internals_slot = ITEM_SLOT_SUITSTORE diff --git a/code/modules/jobs/job_types/roboticist.dm b/code/modules/jobs/job_types/roboticist.dm index b44d536cd2..90dacc0482 100644 --- a/code/modules/jobs/job_types/roboticist.dm +++ b/code/modules/jobs/job_types/roboticist.dm @@ -37,4 +37,4 @@ backpack = /obj/item/storage/backpack/science satchel = /obj/item/storage/backpack/satchel/tox - pda_slot = SLOT_L_STORE + pda_slot = ITEM_SLOT_LPOCKET diff --git a/code/modules/jobs/job_types/security_officer.dm b/code/modules/jobs/job_types/security_officer.dm index 3462fb96c9..1823a2498a 100644 --- a/code/modules/jobs/job_types/security_officer.dm +++ b/code/modules/jobs/job_types/security_officer.dm @@ -84,7 +84,7 @@ GLOBAL_LIST_INIT(available_depts, list(SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, S if(ears) if(H.ears) qdel(H.ears) - H.equip_to_slot_or_del(new ears(H),SLOT_EARS) + H.equip_to_slot_or_del(new ears(H),ITEM_SLOT_EARS) var/obj/item/card/id/W = H.wear_id W.access |= dep_access diff --git a/code/modules/jobs/job_types/shaft_miner.dm b/code/modules/jobs/job_types/shaft_miner.dm index 0c04380afe..273f74defa 100644 --- a/code/modules/jobs/job_types/shaft_miner.dm +++ b/code/modules/jobs/job_types/shaft_miner.dm @@ -60,7 +60,7 @@ mask = /obj/item/clothing/mask/gas/explorer glasses = /obj/item/clothing/glasses/meson suit_store = /obj/item/tank/internals/oxygen - internals_slot = SLOT_S_STORE + internals_slot = ITEM_SLOT_SUITSTORE backpack_contents = list( /obj/item/flashlight/seclite=1,\ /obj/item/kitchen/knife/combat/survival=1, diff --git a/code/modules/jobs/job_types/station_engineer.dm b/code/modules/jobs/job_types/station_engineer.dm index 25bd2196a0..83b11b22f6 100644 --- a/code/modules/jobs/job_types/station_engineer.dm +++ b/code/modules/jobs/job_types/station_engineer.dm @@ -43,7 +43,7 @@ satchel = /obj/item/storage/backpack/satchel/eng duffelbag = /obj/item/storage/backpack/duffelbag/engineering box = /obj/item/storage/box/survival/engineer - pda_slot = SLOT_L_STORE + pda_slot = ITEM_SLOT_LPOCKET backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) /datum/outfit/job/engineer/gloved @@ -56,6 +56,6 @@ suit = /obj/item/clothing/suit/space/hardsuit/engine suit_store = /obj/item/tank/internals/oxygen head = null - internals_slot = SLOT_S_STORE + internals_slot = ITEM_SLOT_SUITSTORE diff --git a/code/modules/mining/equipment/wormhole_jaunter.dm b/code/modules/mining/equipment/wormhole_jaunter.dm index 9c503279d4..9eed296851 100644 --- a/code/modules/mining/equipment/wormhole_jaunter.dm +++ b/code/modules/mining/equipment/wormhole_jaunter.dm @@ -20,7 +20,7 @@ /obj/item/wormhole_jaunter/equipped(mob/user, slot) . = ..() - if(slot == SLOT_BELT) + if(slot == ITEM_SLOT_BELT) RegisterSignal(user, COMSIG_MOVABLE_CHASM_DROP, .proc/chasm_react) /obj/item/wormhole_jaunter/dropped(mob/user) @@ -68,7 +68,7 @@ var/mob/M = loc if(istype(M)) - if(M.get_item_by_slot(SLOT_BELT) == src) + if(M.get_item_by_slot(ITEM_SLOT_BELT) == src) if(prob(severity)) M.visible_message("[src] overloads and activates!") SSblackbox.record_feedback("tally", "jaunter", 1, "EMP") // EMP accidental activation diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 0d46912a5a..0b394e0fc5 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -307,7 +307,7 @@ var/mob/living/carbon/human/active_owner /obj/item/clothing/neck/necklace/memento_mori/item_action_slot_check(slot, mob/user, datum/action/A) - return slot == SLOT_NECK + return slot == ITEM_SLOT_NECK /obj/item/clothing/neck/necklace/memento_mori/dropped(mob/user) ..() diff --git a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm index 1dc50bfe73..08ae75d728 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm @@ -28,10 +28,9 @@ for(var/path in typesof(prototype)) if(path == prototype && skip_prototype) continue - if(roundstart) - var/datum/sprite_accessory/P = path - if(initial(P.locked)) - continue + var/datum/sprite_accessory/P = path + if((roundstart && initial(P.locked))) + continue var/datum/sprite_accessory/D = new path() if(D.icon_state) @@ -64,6 +63,7 @@ var/mutant_part_string //Also used in species.handle_mutant_bodyparts() to generate the overlay icon state. var/alpha_mask_state var/matrixed_sections = MATRIX_NONE //if color_src is MATRIXED, how many sections does it have? 1-3 + var/ignore = FALSE //NEVER include in customization if set to TRUE //Special / holdover traits for Citadel specific sprites. var/extra = FALSE diff --git a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm index c525a13ef8..11fde50a37 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm @@ -126,6 +126,11 @@ hide_legs = USE_SNEK_CLIP_MASK matrixed_sections = MATRIX_RED_GREEN +/datum/sprite_accessory/taur/naga/coiled + name = "Naga (coiled)" + icon_state = "naga_coiled" + ignore = TRUE + /datum/sprite_accessory/taur/otie name = "Otie" icon_state = "otie" diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index 67a95006ab..849bbb9e38 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -182,7 +182,7 @@ held_items[hand_index] = I I.layer = ABOVE_HUD_LAYER I.plane = ABOVE_HUD_PLANE - I.equipped(src, SLOT_HANDS) + I.equipped(src, ITEM_SLOT_HANDS) if(I.pulledby) I.pulledby.stop_pulling() update_inv_hands() @@ -375,14 +375,14 @@ if(!slot_priority) slot_priority = list( \ - SLOT_BACK, SLOT_WEAR_ID,\ - SLOT_W_UNIFORM, SLOT_WEAR_SUIT,\ - SLOT_WEAR_MASK, SLOT_HEAD, SLOT_NECK,\ - SLOT_SHOES, SLOT_GLOVES,\ - SLOT_EARS, SLOT_GLASSES,\ - SLOT_BELT, SLOT_S_STORE,\ - SLOT_L_STORE, SLOT_R_STORE,\ - SLOT_GENERC_DEXTROUS_STORAGE\ + ITEM_SLOT_BACK, ITEM_SLOT_ID,\ + ITEM_SLOT_ICLOTHING, ITEM_SLOT_OCLOTHING,\ + ITEM_SLOT_MASK, ITEM_SLOT_HEAD, ITEM_SLOT_NECK,\ + ITEM_SLOT_FEET, ITEM_SLOT_GLOVES,\ + ITEM_SLOT_EARS, ITEM_SLOT_EYES,\ + ITEM_SLOT_BELT, ITEM_SLOT_SUITSTORE,\ + ITEM_SLOT_LPOCKET, ITEM_SLOT_RPOCKET,\ + ITEM_SLOT_DEX_STORAGE\ ) for(var/slot in slot_priority) @@ -424,7 +424,7 @@ if(M.active_storage && M.active_storage.parent && SEND_SIGNAL(M.active_storage.parent, COMSIG_TRY_STORAGE_INSERT, src,M)) return TRUE - var/list/obj/item/possible = list(M.get_inactive_held_item(), M.get_item_by_slot(SLOT_BELT), M.get_item_by_slot(SLOT_GENERC_DEXTROUS_STORAGE), M.get_item_by_slot(SLOT_BACK)) + var/list/obj/item/possible = list(M.get_inactive_held_item(), M.get_item_by_slot(ITEM_SLOT_BELT), M.get_item_by_slot(ITEM_SLOT_DEX_STORAGE), M.get_item_by_slot(ITEM_SLOT_BACK)) for(var/i in possible) if(!i) continue @@ -446,10 +446,10 @@ //used in code for items usable by both carbon and drones, this gives the proper back slot for each mob.(defibrillator, backpack watertank, ...) /mob/proc/getBackSlot() - return SLOT_BACK + return ITEM_SLOT_BACK /mob/proc/getBeltSlot() - return SLOT_BELT + return ITEM_SLOT_BELT diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index ca2946fd8a..7dedf5a739 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -172,7 +172,7 @@ if(target.dropItemToGround(W)) target.visible_message("[src] tears [W] off of [target]'s face!", \ "[src] tears [W] off of [target]'s face!") - target.equip_to_slot_if_possible(src, SLOT_WEAR_MASK, 0, 1, 1) + target.equip_to_slot_if_possible(src, ITEM_SLOT_MASK, 0, 1, 1) return TRUE // time for a smoke /obj/item/clothing/mask/facehugger/proc/Attach(mob/living/M) @@ -259,7 +259,7 @@ return 1 var/mob/living/carbon/C = M - if(ishuman(C) && !(SLOT_WEAR_MASK in C.dna.species.no_equip)) + if(ishuman(C) && !(ITEM_SLOT_MASK in C.dna.species.no_equip)) var/mob/living/carbon/human/H = C if(H.is_mouth_covered(head_only = 1)) return FALSE diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 61839ce123..969e63563d 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -261,7 +261,7 @@ // too soon. var/buckle_cd = 600 if(handcuffed) - var/obj/item/restraints/O = src.get_item_by_slot(SLOT_HANDCUFFED) + var/obj/item/restraints/O = src.get_item_by_slot(ITEM_SLOT_HANDCUFFED) buckle_cd = O.breakouttime MarkResistTime() visible_message("[src] attempts to unbuckle [p_them()]self!", \ @@ -1137,15 +1137,15 @@ /mob/living/carbon/check_obscured_slots() if(head) if(head.flags_inv & HIDEMASK) - LAZYOR(., SLOT_WEAR_MASK) + LAZYOR(., ITEM_SLOT_MASK) if(head.flags_inv & HIDEEYES) - LAZYOR(., SLOT_GLASSES) + LAZYOR(., ITEM_SLOT_EYES) if(head.flags_inv & HIDEEARS) - LAZYOR(., SLOT_EARS) + LAZYOR(., ITEM_SLOT_EARS) if(wear_mask) if(wear_mask.flags_inv & HIDEEYES) - LAZYOR(., SLOT_GLASSES) + LAZYOR(., ITEM_SLOT_EYES) // if any of our bodyparts are bleeding /mob/living/carbon/proc/is_bleeding() diff --git a/code/modules/mob/living/carbon/carbon_stripping.dm b/code/modules/mob/living/carbon/carbon_stripping.dm index 45ff02f0d5..afbd6edaeb 100644 --- a/code/modules/mob/living/carbon/carbon_stripping.dm +++ b/code/modules/mob/living/carbon/carbon_stripping.dm @@ -1,10 +1,10 @@ /datum/strippable_item/mob_item_slot/head key = STRIPPABLE_ITEM_HEAD - item_slot = SLOT_HEAD + item_slot = ITEM_SLOT_HEAD /datum/strippable_item/mob_item_slot/back key = STRIPPABLE_ITEM_BACK - item_slot = SLOT_BACK + item_slot = ITEM_SLOT_BACK /datum/strippable_item/mob_item_slot/back/get_alternate_action(atom/source, mob/user) if(..() == FALSE) @@ -18,15 +18,15 @@ /datum/strippable_item/mob_item_slot/mask key = STRIPPABLE_ITEM_MASK - item_slot = SLOT_WEAR_MASK + item_slot = ITEM_SLOT_MASK /datum/strippable_item/mob_item_slot/neck key = STRIPPABLE_ITEM_NECK - item_slot = SLOT_NECK + item_slot = ITEM_SLOT_NECK /datum/strippable_item/mob_item_slot/handcuffs key = STRIPPABLE_ITEM_HANDCUFFS - item_slot = SLOT_HANDCUFFED + item_slot = ITEM_SLOT_HANDCUFFED /datum/strippable_item/mob_item_slot/handcuffs/should_show(atom/source, mob/user) if (!iscarbon(source)) @@ -41,7 +41,7 @@ /datum/strippable_item/mob_item_slot/legcuffs key = STRIPPABLE_ITEM_LEGCUFFS - item_slot = SLOT_LEGCUFFED + item_slot = ITEM_SLOT_LEGCUFFED /datum/strippable_item/mob_item_slot/legcuffs/should_show(atom/source, mob/user) if (!iscarbon(source)) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index c3fb82de36..32a4fac90f 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -31,7 +31,7 @@ . += "[t_He] [t_is] a [spec_trait_examine_font()][dna.custom_species ? dna.custom_species : dna.species.name]!" //uniform - if(w_uniform && !(SLOT_W_UNIFORM in obscured)) + if(w_uniform && !(ITEM_SLOT_ICLOTHING in obscured)) //accessory var/accessory_msg if(istype(w_uniform, /obj/item/clothing/under)) @@ -47,7 +47,7 @@ if(wear_suit && !(wear_suit.obj_flags & EXAMINE_SKIP)) . += "[t_He] [t_is] wearing [wear_suit.get_examine_string(user)]." //suit/armor storage - if(s_store && !(SLOT_S_STORE in obscured)) + if(s_store && !(ITEM_SLOT_SUITSTORE in obscured)) . += "[t_He] [t_is] carrying [s_store.get_examine_string(user)] on [t_his] [wear_suit.name]." //back if(back) @@ -59,7 +59,7 @@ . += "[t_He] [t_is] holding [I.get_examine_string(user)] in [t_his] [get_held_index_name(get_held_index_of_item(I))]." //gloves - if(gloves && !(SLOT_GLOVES in obscured)) + if(gloves && !(ITEM_SLOT_GLOVES in obscured)) . += "[t_He] [t_has] [gloves.get_examine_string(user)] on [t_his] hands." else if(length(blood_DNA)) var/hand_number = get_num_arms(FALSE) @@ -78,18 +78,18 @@ . += "[t_He] [t_has] [belt.get_examine_string(user)] about [t_his] waist." //shoes - if(shoes && !(SLOT_SHOES in obscured)) + if(shoes && !(ITEM_SLOT_FEET in obscured)) . += "[t_He] [t_is] wearing [shoes.get_examine_string(user)] on [t_his] feet." //mask - if(wear_mask && !(SLOT_WEAR_MASK in obscured)) + if(wear_mask && !(ITEM_SLOT_MASK in obscured)) . += "[t_He] [t_has] [wear_mask.get_examine_string(user)] on [t_his] face." - if(wear_neck && !(SLOT_NECK in obscured)) + if(wear_neck && !(ITEM_SLOT_NECK in obscured)) . += "[t_He] [t_is] wearing [wear_neck.get_examine_string(user)] around [t_his] neck." //eyes - if(!(SLOT_GLASSES in obscured)) + if(!(ITEM_SLOT_EYES in obscured)) if(glasses) . += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes." else if((left_eye_color == BLOODCULT_EYE || right_eye_color == BLOODCULT_EYE) && iscultist(src) && HAS_TRAIT(src, TRAIT_CULT_EYES)) @@ -100,7 +100,7 @@ . += "[t_His] eyes are flickering a bright yellow!" //ears - if(ears && !(SLOT_EARS in obscured)) + if(ears && !(ITEM_SLOT_EARS in obscured)) . += "[t_He] [t_has] [ears.get_examine_string(user)] on [t_his] ears." //ID diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 5a58289316..0f149928df 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -372,11 +372,11 @@ . = ..() if(wear_suit) if(wear_suit.flags_inv & HIDEGLOVES) - LAZYOR(., SLOT_GLOVES) + LAZYOR(., ITEM_SLOT_GLOVES) if(wear_suit.flags_inv & HIDEJUMPSUIT) - LAZYOR(., SLOT_W_UNIFORM) + LAZYOR(., ITEM_SLOT_ICLOTHING) if(wear_suit.flags_inv & HIDESHOES) - LAZYOR(., SLOT_SHOES) + LAZYOR(., ITEM_SLOT_FEET) /mob/living/carbon/human/assess_threat(judgement_criteria, lasercolor = "", datum/callback/weaponcheck=null) if(judgement_criteria & JUDGE_EMAGGED) @@ -942,6 +942,9 @@ . += "[t_He] [t_is] a [spec_trait_examine_font()][dna.custom_species ? dna.custom_species : dna.species.name]" SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, usr, .) +/mob/living/carbon/human/chestonly + bodyparts = list(/obj/item/bodypart/chest) + /mob/living/carbon/human/species/abductor race = /datum/species/abductor diff --git a/code/modules/mob/living/carbon/human/human_stripping.dm b/code/modules/mob/living/carbon/human/human_stripping.dm index 6197241ef3..cd05e06731 100644 --- a/code/modules/mob/living/carbon/human/human_stripping.dm +++ b/code/modules/mob/living/carbon/human/human_stripping.dm @@ -35,15 +35,15 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list( /datum/strippable_item/mob_item_slot/eyes key = STRIPPABLE_ITEM_EYES - item_slot = SLOT_GLASSES + item_slot = ITEM_SLOT_EYES /datum/strippable_item/mob_item_slot/ears key = STRIPPABLE_ITEM_EARS - item_slot = SLOT_EARS + item_slot = ITEM_SLOT_EARS /datum/strippable_item/mob_item_slot/jumpsuit key = STRIPPABLE_ITEM_JUMPSUIT - item_slot = SLOT_W_UNIFORM + item_slot = ITEM_SLOT_ICLOTHING /datum/strippable_item/mob_item_slot/jumpsuit/get_alternate_action(atom/source, mob/user) if(..() == FALSE) @@ -75,7 +75,7 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list( /datum/strippable_item/mob_item_slot/suit key = STRIPPABLE_ITEM_SUIT - item_slot = SLOT_WEAR_SUIT + item_slot = ITEM_SLOT_OCLOTHING /datum/strippable_item/mob_item_slot/suit/get_alternate_action(atom/source, mob/user) if(..() == FALSE) @@ -108,11 +108,11 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list( /datum/strippable_item/mob_item_slot/gloves key = STRIPPABLE_ITEM_GLOVES - item_slot = SLOT_GLOVES + item_slot = ITEM_SLOT_GLOVES /datum/strippable_item/mob_item_slot/feet key = STRIPPABLE_ITEM_FEET - item_slot = SLOT_SHOES + item_slot = ITEM_SLOT_FEET /datum/strippable_item/mob_item_slot/feet/get_alternate_action(atom/source, mob/user) if(..() == FALSE) @@ -141,7 +141,7 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list( /datum/strippable_item/mob_item_slot/suit_storage key = STRIPPABLE_ITEM_SUIT_STORAGE - item_slot = SLOT_S_STORE + item_slot = ITEM_SLOT_SUITSTORE /datum/strippable_item/mob_item_slot/suit_storage/get_alternate_action(atom/source, mob/user) if(..() == FALSE) @@ -155,11 +155,11 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list( /datum/strippable_item/mob_item_slot/id key = STRIPPABLE_ITEM_ID - item_slot = SLOT_WEAR_ID + item_slot = ITEM_SLOT_ID /datum/strippable_item/mob_item_slot/belt key = STRIPPABLE_ITEM_BELT - item_slot = SLOT_BELT + item_slot = ITEM_SLOT_BELT /datum/strippable_item/mob_item_slot/belt/get_alternate_action(atom/source, mob/user) if(..() == FALSE) @@ -212,12 +212,12 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list( /datum/strippable_item/mob_item_slot/pocket/left key = STRIPPABLE_ITEM_LPOCKET - item_slot = SLOT_L_STORE + item_slot = ITEM_SLOT_LPOCKET pocket_side = "left" /datum/strippable_item/mob_item_slot/pocket/right key = STRIPPABLE_ITEM_RPOCKET - item_slot = SLOT_R_STORE + item_slot = ITEM_SLOT_RPOCKET pocket_side = "right" /proc/get_strippable_alternate_action_internals(obj/item/item, atom/source) diff --git a/code/modules/mob/living/carbon/human/innate_abilities/coiling.dm b/code/modules/mob/living/carbon/human/innate_abilities/coiling.dm new file mode 100644 index 0000000000..52e2a87a7d --- /dev/null +++ b/code/modules/mob/living/carbon/human/innate_abilities/coiling.dm @@ -0,0 +1,89 @@ + +/datum/action/innate/ability/coiling + name = "Coil Grabbed Mob" + check_flags = AB_CHECK_CONSCIOUS + button_icon_state = "coil_icon" + icon_icon = 'icons/mob/actions/actions_snake.dmi' + background_icon_state = "bg_alien" + required_mobility_flags = MOBILITY_STAND + var/currently_coiling = FALSE + var/mob/living/carbon/human/currently_coiled + var/mutable_appearance/tracked_overlay + +/datum/action/innate/ability/coiling/Activate() + // make sure they meet the mobility/check flags + if(IsAvailable()) + // check that the user has grabbed someone and they are not currently coiling someone + if(ishuman(owner.pulling) && !currently_coiling) + coil_mob(owner.pulling) + +/datum/action/innate/ability/coiling/proc/update_coil_offset(atom/source, old_dir, new_dir) + // update the coiling offset on the coiled user depending on the way the owner is facing + switch(new_dir) + if(NORTH) + currently_coiled.pixel_x = -12 + if(EAST) + currently_coiled.pixel_x = -12 + if(SOUTH) + currently_coiled.pixel_x = 12 + if(WEST) + currently_coiled.pixel_x = 12 + +/datum/action/innate/ability/coiling/proc/coil_mob(var/mob/living/carbon/human/H) + // begin the coiling action + H.visible_message("[owner] coils [H] with their tail!", \ + "[owner] coils you with their tail!") + currently_coiling = TRUE + currently_coiled = H + + H.layer -= 0.1 // LISTEN I HATE TOUCHING MOB LAYERS TOO BUT THIS IS JUST SO THEY RENDER UNDER THE OTHER PLAYER SDFHSDFHDSFHDSH + + // move user to same tile + H.forceMove(get_turf(owner)) + + // cancel the coiling action if certain things are done + RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/cancel_coil) + RegisterSignal(owner, COMSIG_LIVING_RESTING, .proc/cancel_coil) + RegisterSignal(owner, COMSIG_LIVING_STOPPED_PULLING, .proc/cancel_coil) + + // update the coil offset, update again if owner changes direction + RegisterSignal(owner, COMSIG_ATOM_DIR_CHANGE, .proc/update_coil_offset) + update_coil_offset(null, null, owner.dir) + + // set our overlay to new image + var/mob/living/carbon/human/user = owner + user.dna.species.mutant_bodyparts["taur"] = "Naga (coiled)" + user.dna.features["taur"] = "Naga (coiled)" + user.update_mutant_bodyparts() + +/datum/action/innate/ability/coiling/proc/cancel_coil() + var/mob/living/carbon/human/H = owner + + // cancel the coiling action by removing the overlay + currently_coiled.pixel_x = 0 + + currently_coiling = FALSE + currently_coiled = null + + // unregister signals + UnregisterSignal(owner, COMSIG_MOVABLE_MOVED) + UnregisterSignal(owner, COMSIG_LIVING_RESTING) + UnregisterSignal(owner, COMSIG_LIVING_STOPPED_PULLING) + UnregisterSignal(owner, COMSIG_ATOM_DIR_CHANGE) + + // change overlay back to original image + H.dna.species.mutant_bodyparts["taur"] = "Naga" + H.dna.features["taur"] = "Naga" + H.update_mutant_bodyparts() + + H.update_body() + + H.layer += 0.1 + + // remove the added overlay + owner.cut_overlay(tracked_overlay) + tracked_overlay = null + +/datum/action/innate/ability/coiling/Remove(mob/M) + cancel_coil() + ..(M) diff --git a/code/modules/mob/living/carbon/human/innate_abilities/customization.dm b/code/modules/mob/living/carbon/human/innate_abilities/customization.dm index 363f6ecbb2..463cdfde1e 100644 --- a/code/modules/mob/living/carbon/human/innate_abilities/customization.dm +++ b/code/modules/mob/living/carbon/human/innate_abilities/customization.dm @@ -135,6 +135,8 @@ var/datum/sprite_accessory/taur/instance = GLOB.taur_list[path] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance + if(S.ignore) + continue if((!S.ckeys_allowed) || (S.ckeys_allowed.Find(H.client.ckey))) snowflake_taur_list[S.name] = path var/new_taur diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index 199a6b44be..4c30a1d742 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -17,39 +17,39 @@ // Return the item currently in the slot ID /mob/living/carbon/human/get_item_by_slot(slot_id) switch(slot_id) - if(SLOT_BACK) + if(ITEM_SLOT_BACK) return back - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) return wear_mask - if(SLOT_NECK) + if(ITEM_SLOT_NECK) return wear_neck - if(SLOT_HANDCUFFED) + if(ITEM_SLOT_HANDCUFFED) return handcuffed - if(SLOT_LEGCUFFED) + if(ITEM_SLOT_LEGCUFFED) return legcuffed - if(SLOT_BELT) + if(ITEM_SLOT_BELT) return belt - if(SLOT_WEAR_ID) + if(ITEM_SLOT_ID) return wear_id - if(SLOT_EARS) + if(ITEM_SLOT_EARS) return ears - if(SLOT_GLASSES) + if(ITEM_SLOT_EYES) return glasses - if(SLOT_GLOVES) + if(ITEM_SLOT_GLOVES) return gloves - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) return head - if(SLOT_SHOES) + if(ITEM_SLOT_FEET) return shoes - if(SLOT_WEAR_SUIT) + if(ITEM_SLOT_OCLOTHING) return wear_suit - if(SLOT_W_UNIFORM) + if(ITEM_SLOT_ICLOTHING) return w_uniform - if(SLOT_L_STORE) + if(ITEM_SLOT_LPOCKET) return l_store - if(SLOT_R_STORE) + if(ITEM_SLOT_RPOCKET) return r_store - if(SLOT_S_STORE) + if(ITEM_SLOT_SUITSTORE) return s_store return null @@ -98,17 +98,17 @@ var/not_handled = FALSE //Added in case we make this type path deeper one day switch(slot) - if(SLOT_BELT) + if(ITEM_SLOT_BELT) belt = I update_inv_belt() - if(SLOT_WEAR_ID) + if(ITEM_SLOT_ID) wear_id = I sec_hud_set_ID() update_inv_wear_id() - if(SLOT_EARS) + if(ITEM_SLOT_EARS) ears = I update_inv_ears() - if(SLOT_GLASSES) + if(ITEM_SLOT_EYES) glasses = I var/obj/item/clothing/glasses/G = I if(G.glass_colour_type) @@ -121,13 +121,13 @@ if(G.vision_flags || G.darkness_view || G.invis_override || G.invis_view || !isnull(G.lighting_alpha)) update_sight() update_inv_glasses() - if(SLOT_GLOVES) + if(ITEM_SLOT_GLOVES) gloves = I update_inv_gloves() - if(SLOT_SHOES) + if(ITEM_SLOT_FEET) shoes = I update_inv_shoes() - if(SLOT_WEAR_SUIT) + if(ITEM_SLOT_OCLOTHING) wear_suit = I if(I.flags_inv & HIDEJUMPSUIT) update_inv_w_uniform() @@ -135,17 +135,17 @@ stop_pulling() //can't pull if restrained update_action_buttons_icon() //certain action buttons will no longer be usable. update_inv_wear_suit() - if(SLOT_W_UNIFORM) + if(ITEM_SLOT_ICLOTHING) w_uniform = I update_suit_sensors() update_inv_w_uniform() - if(SLOT_L_STORE) + if(ITEM_SLOT_LPOCKET) l_store = I update_inv_pockets() - if(SLOT_R_STORE) + if(ITEM_SLOT_RPOCKET) r_store = I update_inv_pockets() - if(SLOT_S_STORE) + if(ITEM_SLOT_SUITSTORE) s_store = I update_inv_s_store() else @@ -296,7 +296,7 @@ if(incapacitated()) return var/obj/item/thing = get_active_held_item() - var/obj/item/equipped_back = get_item_by_slot(SLOT_BACK) + var/obj/item/equipped_back = get_item_by_slot(ITEM_SLOT_BACK) if(!equipped_back) // We also let you equip a backpack like this if(!thing) to_chat(src, "You have no backpack to take something out of!") @@ -327,7 +327,7 @@ if(incapacitated()) return var/obj/item/thing = get_active_held_item() - var/obj/item/equipped_belt = get_item_by_slot(SLOT_BELT) + var/obj/item/equipped_belt = get_item_by_slot(ITEM_SLOT_BELT) if(!equipped_belt) // We also let you equip a belt like this if(!thing) to_chat(src, "You have no belt to take something out of!") diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index bbe2781403..ee98288c5d 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -612,7 +612,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(Q.type in blacklisted_quirks) removed_quirks += Q.type . += 1 - qdel(Q) + qdel(Q) else var/point_overhead = 0 for(var/datum/quirk/Q as anything in C.roundstart_quirks) @@ -906,6 +906,22 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/tauric = mutant_bodyparts["taur"] && H.dna.features["taur"] && H.dna.features["taur"] != "None" + // stuff for adding/removing the coiling ability if you have a taur part + // if another action is ever based on mutant parts we should probably make a system for it so it's all done in one proc with less overhead + var/datum/action/found_action + + for(var/datum/action/A in H.actions) + if(A.type == /datum/action/innate/ability/coiling) + found_action = A + + if(found_action && (!tauric || (H.dna.features["taur"] != "Naga" && H.dna.features["taur"] != "Naga (coiled)"))) + found_action.Remove(H) + + if(!found_action && tauric && H.dna.features["taur"] == "Naga") + found_action = new /datum/action/innate/ability/coiling() + found_action.Grant(H) + + for(var/mutant_part in mutant_bodyparts) var/reference_list = GLOB.mutant_reference_list[mutant_part] if(reference_list) @@ -1220,7 +1236,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!HAS_TRAIT(H, TRAIT_ROBOTIC_ORGANISM)) H.adjustBruteLoss(1) else - H.adjustFireLoss(1) //Robots melt instead of taking brute. + H.adjustFireLoss(1) //Robots melt instead of taking brute. /datum/species/proc/spec_death(gibbed, mob/living/carbon/human/H) if(H) @@ -1244,11 +1260,11 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/num_legs = H.get_num_legs(FALSE) switch(slot) - if(SLOT_HANDS) + if(ITEM_SLOT_HANDS) if(H.get_empty_held_indexes()) return TRUE return FALSE - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) if(H.wear_mask) return FALSE if(!(I.slot_flags & ITEM_SLOT_MASK)) @@ -1256,25 +1272,25 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!H.get_bodypart(BODY_ZONE_HEAD)) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_NECK) + if(ITEM_SLOT_NECK) if(H.wear_neck) return FALSE if( !(I.slot_flags & ITEM_SLOT_NECK) ) return FALSE return TRUE - if(SLOT_BACK) + if(ITEM_SLOT_BACK) if(H.back) return FALSE if( !(I.slot_flags & ITEM_SLOT_BACK) ) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_WEAR_SUIT) + if(ITEM_SLOT_OCLOTHING) if(H.wear_suit) return FALSE if( !(I.slot_flags & ITEM_SLOT_OCLOTHING) ) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_GLOVES) + if(ITEM_SLOT_GLOVES) if(H.gloves) return FALSE if( !(I.slot_flags & ITEM_SLOT_GLOVES) ) @@ -1282,7 +1298,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(num_arms < 2) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_SHOES) + if(ITEM_SLOT_FEET) if(H.shoes) return FALSE if( !(I.slot_flags & ITEM_SLOT_FEET) ) @@ -1295,7 +1311,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) else return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_BELT) + if(ITEM_SLOT_BELT) if(H.belt) return FALSE if(!(I.item_flags & NO_UNIFORM_REQUIRED)) @@ -1307,7 +1323,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!(I.slot_flags & ITEM_SLOT_BELT)) return return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_GLASSES) + if(ITEM_SLOT_EYES) if(H.glasses) return FALSE if(!(I.slot_flags & ITEM_SLOT_EYES)) @@ -1315,7 +1331,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!H.get_bodypart(BODY_ZONE_HEAD)) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) if(H.head) return FALSE if(!(I.slot_flags & ITEM_SLOT_HEAD)) @@ -1323,7 +1339,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!H.get_bodypart(BODY_ZONE_HEAD)) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_EARS) + if(ITEM_SLOT_EARS) if(H.ears) return FALSE if(!(I.slot_flags & ITEM_SLOT_EARS)) @@ -1331,13 +1347,13 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!H.get_bodypart(BODY_ZONE_HEAD)) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_W_UNIFORM) + if(ITEM_SLOT_ICLOTHING) if(H.w_uniform) return FALSE if( !(I.slot_flags & ITEM_SLOT_ICLOTHING) ) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_WEAR_ID) + if(ITEM_SLOT_ID) if(H.wear_id) return FALSE if(!(I.item_flags & NO_UNIFORM_REQUIRED)) @@ -1349,7 +1365,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if( !(I.slot_flags & ITEM_SLOT_ID) ) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) - if(SLOT_L_STORE) + if(ITEM_SLOT_LPOCKET) if(HAS_TRAIT(I, TRAIT_NODROP)) //Pockets aren't visible, so you can't move TRAIT_NODROP items into them. return FALSE if(H.l_store) @@ -1361,11 +1377,9 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(return_warning) return_warning[1] = "You need a jumpsuit before you can attach this [I.name]!" return FALSE - if(I.slot_flags & ITEM_SLOT_DENYPOCKET) - return FALSE - if( I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & ITEM_SLOT_POCKET) ) + if( I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & ITEM_SLOT_POCKETS) ) return TRUE - if(SLOT_R_STORE) + if(ITEM_SLOT_RPOCKET) if(HAS_TRAIT(I, TRAIT_NODROP)) return FALSE if(H.r_store) @@ -1377,12 +1391,10 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(return_warning) return_warning[1] = "You need a jumpsuit before you can attach this [I.name]!" return FALSE - if(I.slot_flags & ITEM_SLOT_DENYPOCKET) - return FALSE - if( I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & ITEM_SLOT_POCKET) ) + if( I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & ITEM_SLOT_POCKETS) ) return TRUE return FALSE - if(SLOT_S_STORE) + if(ITEM_SLOT_SUITSTORE) if(HAS_TRAIT(I, TRAIT_NODROP)) return FALSE if(H.s_store) @@ -1402,7 +1414,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if( istype(I, /obj/item/pda) || istype(I, /obj/item/pen) || is_type_in_list(I, H.wear_suit.allowed) ) return TRUE return FALSE - if(SLOT_HANDCUFFED) + if(ITEM_SLOT_HANDCUFFED) if(H.handcuffed) return FALSE if(!istype(I, /obj/item/restraints/handcuffs)) @@ -1410,7 +1422,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(num_arms < 2) return FALSE return TRUE - if(SLOT_LEGCUFFED) + if(ITEM_SLOT_LEGCUFFED) if(H.legcuffed) return FALSE if(!istype(I, /obj/item/restraints/legcuffs)) @@ -1418,7 +1430,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(num_legs < 2) return FALSE return TRUE - if(SLOT_IN_BACKPACK) + if(ITEM_SLOT_BACKPACK) if(H.back) if(SEND_SIGNAL(H.back, COMSIG_TRY_STORAGE_CAN_INSERT, I, H, TRUE)) return TRUE diff --git a/code/modules/mob/living/carbon/human/species_types/golems.dm b/code/modules/mob/living/carbon/human/species_types/golems.dm index ac25c9e021..f90199c8ee 100644 --- a/code/modules/mob/living/carbon/human/species_types/golems.dm +++ b/code/modules/mob/living/carbon/human/species_types/golems.dm @@ -12,7 +12,7 @@ punchdamagelow = 5 punchdamagehigh = 14 punchstunthreshold = 10 - no_equip = list(SLOT_WEAR_MASK, SLOT_WEAR_SUIT, SLOT_GLOVES, SLOT_SHOES, SLOT_W_UNIFORM, SLOT_S_STORE) + no_equip = list(ITEM_SLOT_MASK, ITEM_SLOT_OCLOTHING, ITEM_SLOT_GLOVES, ITEM_SLOT_FEET, ITEM_SLOT_ICLOTHING, ITEM_SLOT_SUITSTORE) nojumpsuit = 1 sexes = 1 damage_overlay_type = "" diff --git a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm index 0655b28197..afcec291e9 100644 --- a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm @@ -16,7 +16,7 @@ punchdamagehigh = 12 //still better than humans punchstunthreshold = 10 - no_equip = list(SLOT_WEAR_MASK, SLOT_WEAR_SUIT, SLOT_GLOVES, SLOT_SHOES, SLOT_W_UNIFORM) + no_equip = list(ITEM_SLOT_MASK, ITEM_SLOT_OCLOTHING, ITEM_SLOT_GLOVES, ITEM_SLOT_FEET, ITEM_SLOT_ICLOTHING) burnmod = 1.25 heatmod = 1.5 diff --git a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm index bfef310cdf..f412099831 100644 --- a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm @@ -37,7 +37,7 @@ limbs_id = SPECIES_SHADOW burnmod = 1.5 blacklisted = TRUE - no_equip = list(SLOT_WEAR_MASK, SLOT_WEAR_SUIT, SLOT_GLOVES, SLOT_SHOES, SLOT_W_UNIFORM, SLOT_S_STORE) + no_equip = list(ITEM_SLOT_MASK, ITEM_SLOT_OCLOTHING, ITEM_SLOT_GLOVES, ITEM_SLOT_FEET, ITEM_SLOT_ICLOTHING, ITEM_SLOT_SUITSTORE) species_traits = list(NOBLOOD,NO_UNDERWEAR,NO_DNA_COPY,NOTRANSSTING,NOEYES,NOGENITALS,NOAROUSAL) inherent_traits = list(TRAIT_RESISTCOLD,TRAIT_NOBREATH,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_CHUNKYFINGERS,TRAIT_RADIMMUNE,TRAIT_VIRUSIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER,TRAIT_NOHUNGER) mutanteyes = /obj/item/organ/eyes/night_vision/nightmare diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 52d736f9ce..cb2458e376 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -128,7 +128,7 @@ There are several things that need to be remembered: remove_overlay(UNIFORM_LAYER) if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_W_UNIFORM] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_ICLOTHING) + 1] inv.update_icon() if(istype(w_uniform, /obj/item/clothing/under)) @@ -180,7 +180,7 @@ There are several things that need to be remembered: remove_overlay(ID_LAYER) if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_WEAR_ID] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_ID) + 1] inv.update_icon() var/mutable_appearance/id_overlay = overlays_standing[ID_LAYER] @@ -204,8 +204,8 @@ There are several things that need to be remembered: if(!HAS_TRAIT(src, TRAIT_HUMAN_NO_RENDER)) remove_overlay(GLOVES_LAYER) - if(client && hud_used && hud_used.inv_slots[SLOT_GLOVES]) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_GLOVES] + if(client && hud_used && hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_GLOVES) + 1]) + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_GLOVES) + 1] inv.update_icon() if(!gloves && bloody_hands) @@ -242,7 +242,7 @@ There are several things that need to be remembered: return if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_GLASSES] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_EYES) + 1] inv.update_icon() if(glasses) @@ -269,7 +269,7 @@ There are several things that need to be remembered: return if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_EARS] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_EARS) + 1] inv.update_icon() if(ears) @@ -295,7 +295,7 @@ There are several things that need to be remembered: return if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_SHOES] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_FEET) + 1] inv.update_icon() if(dna.species.mutant_bodyparts["taur"]) @@ -330,7 +330,7 @@ There are several things that need to be remembered: remove_overlay(SUIT_STORE_LAYER) if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_S_STORE] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_SUITSTORE) + 1] inv.update_icon() if(s_store) @@ -357,7 +357,7 @@ There are several things that need to be remembered: return if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HEAD] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_HEAD) + 1] inv.update_icon() if(head) @@ -394,7 +394,7 @@ There are several things that need to be remembered: remove_overlay(BELT_LAYER) if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_BELT] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_BELT) + 1] inv.update_icon() if(belt) @@ -416,7 +416,7 @@ There are several things that need to be remembered: remove_overlay(SUIT_LAYER) if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_WEAR_SUIT] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_OCLOTHING) + 1] inv.update_icon() if(wear_suit) @@ -479,10 +479,10 @@ There are several things that need to be remembered: if(client && hud_used) var/atom/movable/screen/inventory/inv - inv = hud_used.inv_slots[SLOT_L_STORE] + inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_LPOCKET) + 1] inv.update_icon() - inv = hud_used.inv_slots[SLOT_R_STORE] + inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_RPOCKET) + 1] inv.update_icon() if(l_store) @@ -506,7 +506,7 @@ There are several things that need to be remembered: return if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_WEAR_MASK] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_MASK) + 1] inv.update_icon() if(wear_mask) diff --git a/code/modules/mob/living/carbon/inventory.dm b/code/modules/mob/living/carbon/inventory.dm index 13f811196e..2422528d21 100644 --- a/code/modules/mob/living/carbon/inventory.dm +++ b/code/modules/mob/living/carbon/inventory.dm @@ -1,16 +1,16 @@ /mob/living/carbon/get_item_by_slot(slot_id) switch(slot_id) - if(SLOT_BACK) + if(ITEM_SLOT_BACK) return back - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) return wear_mask - if(SLOT_NECK) + if(ITEM_SLOT_NECK) return wear_neck - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) return head - if(SLOT_HANDCUFFED) + if(ITEM_SLOT_HANDCUFFED) return handcuffed - if(SLOT_LEGCUFFED) + if(ITEM_SLOT_LEGCUFFED) return legcuffed return null @@ -20,17 +20,17 @@ return slot if(critical) //it is CRITICAL they get this item, no matter what //do they have a backpack? - var/obj/item/backpack = get_item_by_slot(SLOT_BACK) + var/obj/item/backpack = get_item_by_slot(ITEM_SLOT_BACK) if(!backpack) //nothing on their back backpack = new /obj/item/storage/backpack(get_turf(src)) - if(equip_to_slot(backpack, SLOT_BACK)) //worst-case-scenario, something that shouldnt wear a backpack gets one + if(equip_to_slot(backpack, ITEM_SLOT_BACK)) //worst-case-scenario, something that shouldnt wear a backpack gets one I.forceMove(backpack) - return SLOT_BACK + return ITEM_SLOT_BACK else if(istype(backpack) && SEND_SIGNAL(backpack, COMSIG_CONTAINS_STORAGE)) //place it in here, regardless of storage capacity I.forceMove(backpack) - return SLOT_BACK + return ITEM_SLOT_BACK else //this should NEVER happen, but if it does, report it with the appropriate information var/conclusion = qdel_on_fail ? "deleted" : "not moved, staying at current position [I.x], [I.y], [I.z]" @@ -69,28 +69,28 @@ I.appearance_flags |= NO_CLIENT_COLOR var/not_handled = FALSE switch(slot) - if(SLOT_BACK) + if(ITEM_SLOT_BACK) back = I update_inv_back() - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) wear_mask = I wear_mask_update(I, toggle_off = 0) - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) head = I head_update(I) - if(SLOT_NECK) + if(ITEM_SLOT_NECK) wear_neck = I update_inv_neck(I) - if(SLOT_HANDCUFFED) + if(ITEM_SLOT_HANDCUFFED) handcuffed = I update_handcuffed() - if(SLOT_LEGCUFFED) + if(ITEM_SLOT_LEGCUFFED) legcuffed = I update_inv_legcuffed() - if(SLOT_HANDS) + if(ITEM_SLOT_HANDS) put_in_hands(I) update_inv_hands() - if(SLOT_IN_BACKPACK) + if(ITEM_SLOT_BACKPACK) if(!back || !SEND_SIGNAL(back, COMSIG_TRY_STORAGE_INSERT, I, src, TRUE)) not_handled = TRUE else @@ -170,7 +170,7 @@ if(!offered_item) to_chat(src, "You're not holding anything to give!") return - + if(IS_DEAD_OR_INCAP(src)) to_chat(src, span_warning("You're unable to offer anything in your current state!")) return @@ -184,7 +184,7 @@ visible_message(span_notice("[src] is offering [offered_item]."), \ span_notice("You offer [offered_item]."), null, 2) - + apply_status_effect(STATUS_EFFECT_OFFERING, offered_item) /** diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index 182ae1afb8..27f795015e 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -676,7 +676,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put /mob/living/carbon/proc/get_cooling_efficiency() if(!HAS_TRAIT(src, TRAIT_ROBOTIC_ORGANISM)) return 1 - + var/integration_bonus = min(blood_volume * SYNTH_INTEGRATION_COOLANT_CAP, integrating_blood * SYNTH_INTEGRATION_COOLANT_PENALTY) //Integration blood somewhat helps, though only at 40% impact and to a cap of 25% of current blood level. var/blood_effective_volume = blood_volume + integration_bonus var/coolant_efficiency = min(blood_effective_volume / BLOOD_VOLUME_SAFE, 1) //Low coolant is only a negative, adding more than needed will not help you. @@ -706,13 +706,13 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put return total_environment_efficiency /mob/living/carbon/proc/check_suitlinking() - var/suit_item = get_item_by_slot(SLOT_WEAR_SUIT) - var/head_item = get_item_by_slot(SLOT_HEAD) + var/suit_item = get_item_by_slot(ITEM_SLOT_OCLOTHING) + var/head_item = get_item_by_slot(ITEM_SLOT_HEAD) var/turf/T = get_turf(src) - + if(istype(head_item, /obj/item/clothing/head/helmet/space) && istype(suit_item, /obj/item/clothing/suit/space)) return 1 - + if(T && is_mining_level(T.z) && istype(head_item, /obj/item/clothing/head/hooded/explorer) && istype(suit_item, /obj/item/clothing/suit/hooded/explorer)) return 1 diff --git a/code/modules/mob/living/carbon/monkey/combat.dm b/code/modules/mob/living/carbon/monkey/combat.dm index 13d234092c..0c9895c729 100644 --- a/code/modules/mob/living/carbon/monkey/combat.dm +++ b/code/modules/mob/living/carbon/monkey/combat.dm @@ -30,7 +30,7 @@ return 0 if(myPath.len <= 0) - myPath = get_path_to(src, get_turf(target), /turf/proc/Distance, MAX_RANGE_FIND + 1, 250,1) + myPath = get_path_to(src, target, 250, 1) if(myPath) if(myPath.len > 0) diff --git a/code/modules/mob/living/carbon/monkey/inventory.dm b/code/modules/mob/living/carbon/monkey/inventory.dm index 34599028f7..156eef9b6b 100644 --- a/code/modules/mob/living/carbon/monkey/inventory.dm +++ b/code/modules/mob/living/carbon/monkey/inventory.dm @@ -5,29 +5,29 @@ return FALSE switch(slot) - if(SLOT_HANDS) + if(ITEM_SLOT_HANDS) if(get_empty_held_indexes()) return TRUE return FALSE - if(SLOT_WEAR_MASK) + if(ITEM_SLOT_MASK) if(wear_mask) return FALSE if( !(I.slot_flags & ITEM_SLOT_MASK) ) return FALSE return TRUE - if(SLOT_NECK) + if(ITEM_SLOT_NECK) if(wear_neck) return FALSE if( !(I.slot_flags & ITEM_SLOT_NECK) ) return FALSE return TRUE - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) if(head) return FALSE if( !(I.slot_flags & ITEM_SLOT_HEAD) ) return FALSE return TRUE - if(SLOT_BACK) + if(ITEM_SLOT_BACK) if(back) return FALSE if( !(I.slot_flags & ITEM_SLOT_BACK) ) diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index f8ac8c6716..8a029613e2 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -184,5 +184,5 @@ GLOBAL_LIST_INIT(strippable_monkey_items, create_strippable_list(list( . = ..() if(prob(10)) var/obj/item/clothing/head/helmet/justice/escape/helmet = new(src) - equip_to_slot_or_del(helmet,SLOT_HEAD) + equip_to_slot_or_del(helmet,ITEM_SLOT_HEAD) INVOKE_ASYNC(helmet, /obj/item.proc/attack_self, src) // todo encapsulate toggle diff --git a/code/modules/mob/living/carbon/monkey/punpun.dm b/code/modules/mob/living/carbon/monkey/punpun.dm index c59218a8a3..d71a989c1d 100644 --- a/code/modules/mob/living/carbon/monkey/punpun.dm +++ b/code/modules/mob/living/carbon/monkey/punpun.dm @@ -29,9 +29,9 @@ if(ancestor_chain > 1) generate_fake_scars(rand(ancestor_chain, ancestor_chain * 4)) if(relic_hat) - equip_to_slot_or_del(new relic_hat, SLOT_HEAD) + equip_to_slot_or_del(new relic_hat, ITEM_SLOT_HEAD) if(relic_mask) - equip_to_slot_or_del(new relic_mask, SLOT_WEAR_MASK) + equip_to_slot_or_del(new relic_mask, ITEM_SLOT_MASK) /mob/living/carbon/monkey/punpun/BiologicalLife(seconds, times_fired) if(!(. = ..())) diff --git a/code/modules/mob/living/carbon/update_icons.dm b/code/modules/mob/living/carbon/update_icons.dm index 43e0db1f08..cd9cd5db4c 100644 --- a/code/modules/mob/living/carbon/update_icons.dm +++ b/code/modules/mob/living/carbon/update_icons.dm @@ -91,7 +91,7 @@ return if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_WEAR_MASK] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_MASK) + 1] inv?.update_icon() if(wear_mask) @@ -104,8 +104,8 @@ /mob/living/carbon/update_inv_neck() remove_overlay(NECK_LAYER) - if(client && hud_used && hud_used.inv_slots[SLOT_NECK]) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_NECK] + if(client && hud_used && hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_NECK) + 1]) + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_NECK) + 1] inv.update_icon() if(wear_neck) @@ -119,7 +119,7 @@ remove_overlay(BACK_LAYER) if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_BACK] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_BACK) + 1] inv?.update_icon() if(back) @@ -135,7 +135,7 @@ return if(client && hud_used) - var/atom/movable/screen/inventory/inv = hud_used.inv_slots[SLOT_HEAD] + var/atom/movable/screen/inventory/inv = hud_used.inv_slots[TOBITSHIFT(ITEM_SLOT_HEAD) + 1] inv?.update_icon() if(head) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 2070d07e14..bf3094cb08 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -395,6 +395,7 @@ ..() update_pull_movespeed() update_pull_hud_icon() + SEND_SIGNAL(src, COMSIG_LIVING_STOPPED_PULLING) /mob/living/verb/stop_pulling1() set name = "Stop Pulling" diff --git a/code/modules/mob/living/living_mobility.dm b/code/modules/mob/living/living_mobility.dm index af34fb54cf..6aed30ab83 100644 --- a/code/modules/mob/living/living_mobility.dm +++ b/code/modules/mob/living/living_mobility.dm @@ -9,6 +9,8 @@ resting = new_resting if(!silent) to_chat(src, "You are now [resting? "resting" : "getting up"].") + if(resting == 1) + SEND_SIGNAL(src, COMSIG_LIVING_RESTING) update_resting(updating) /mob/living/proc/update_resting(update_mobility = TRUE) diff --git a/code/modules/mob/living/login.dm b/code/modules/mob/living/login.dm index 2b1c2de17a..e9bf3c5d49 100644 --- a/code/modules/mob/living/login.dm +++ b/code/modules/mob/living/login.dm @@ -2,7 +2,10 @@ ..() //Mind updates sync_mind() - mind.show_memory(src, 0) +//ambition start + if(mind.memory || mind.antag_datums) + to_chat(src, "[mind.show_memory()]") +//ambition end //Round specific stuff if(SSticker.mode) diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index ca9ca75e6c..3aec65f6fb 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -551,7 +551,7 @@ Pass a positive integer as an argument to override a bot's default speed. var/datum/job/captain/All = new/datum/job/captain all_access.access = All.get_access() - set_path(get_path_to(src, waypoint, /turf/proc/Distance_cardinal, 0, 200, id=all_access)) + set_path(get_path_to(src, waypoint, 200, id=all_access)) calling_ai = caller //Link the AI to the bot! ai_waypoint = waypoint @@ -730,6 +730,7 @@ Pass a positive integer as an argument to override a bot's default speed. access_card.access = user_access + prev_access //Adds the user's access, if any. mode = BOT_SUMMON speak("Responding.", radio_channel) + calc_summon_path() if("ejectpai") @@ -765,12 +766,12 @@ Pass a positive integer as an argument to override a bot's default speed. // given an optional turf to avoid /mob/living/simple_animal/bot/proc/calc_path(turf/avoid) check_bot_access() - set_path(get_path_to(src, patrol_target, /turf/proc/Distance_cardinal, 0, 120, id=access_card, exclude=avoid)) + set_path(get_path_to(src, patrol_target, 120, id=access_card, exclude=avoid)) /mob/living/simple_animal/bot/proc/calc_summon_path(turf/avoid) check_bot_access() spawn() - set_path(get_path_to(src, summon_target, /turf/proc/Distance_cardinal, 0, 150, id=access_card, exclude=avoid)) + set_path(get_path_to(src, summon_target, 150, id=access_card, exclude=avoid)) if(!path.len) //Cannot reach target. Give up and announce the issue. speak("Summon command failed, destination unreachable.",radio_channel) bot_reset() diff --git a/code/modules/mob/living/simple_animal/bot/cleanbot.dm b/code/modules/mob/living/simple_animal/bot/cleanbot.dm index c683267a58..ed68d4d272 100644 --- a/code/modules/mob/living/simple_animal/bot/cleanbot.dm +++ b/code/modules/mob/living/simple_animal/bot/cleanbot.dm @@ -302,7 +302,7 @@ if(!path || path.len == 0) //No path, need a new one //Try to produce a path to the target, and ignore airlocks to which it has access. - path = get_path_to(src, target.loc, /turf/proc/Distance_cardinal, 0, 30, id=access_card) + path = get_path_to(src, target, 30, id=access_card) if(!bot_move(target)) add_to_ignore(target) target = null diff --git a/code/modules/mob/living/simple_animal/bot/firebot.dm b/code/modules/mob/living/simple_animal/bot/firebot.dm index 66d1955502..9eea7a85b1 100644 --- a/code/modules/mob/living/simple_animal/bot/firebot.dm +++ b/code/modules/mob/living/simple_animal/bot/firebot.dm @@ -223,7 +223,7 @@ if(target_fire && (get_dist(src, target_fire) > 2)) - path = get_path_to(src, get_turf(target_fire), /turf/proc/Distance_cardinal, 0, 30, 1, id=access_card) + path = get_path_to(src, target_fire, 30, 1, id=access_card) mode = BOT_MOVING if(!path.len) soft_reset() diff --git a/code/modules/mob/living/simple_animal/bot/floorbot.dm b/code/modules/mob/living/simple_animal/bot/floorbot.dm index 5f0075aaa2..c8b502f032 100644 --- a/code/modules/mob/living/simple_animal/bot/floorbot.dm +++ b/code/modules/mob/living/simple_animal/bot/floorbot.dm @@ -263,9 +263,9 @@ if(path.len == 0) if(!isturf(target)) var/turf/TL = get_turf(target) - path = get_path_to(src, TL, /turf/proc/Distance_cardinal, 0, 30, id=access_card,simulated_only = 0) + path = get_path_to(src, TL, 30, id=access_card,simulated_only = 0) else - path = get_path_to(src, target, /turf/proc/Distance_cardinal, 0, 30, id=access_card,simulated_only = 0) + path = get_path_to(src, target, 30, id=access_card,simulated_only = 0) if(!bot_move(target)) add_to_ignore(target) diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm index e00adfd8e8..0b21f4a825 100644 --- a/code/modules/mob/living/simple_animal/bot/medbot.dm +++ b/code/modules/mob/living/simple_animal/bot/medbot.dm @@ -492,10 +492,10 @@ return if(patient && path.len == 0 && (get_dist(src,patient) > 1)) - path = get_path_to(src, get_turf(patient), /turf/proc/Distance_cardinal, 0, 30,id=access_card) + path = get_path_to(src, patient, 30, id=access_card) mode = BOT_MOVING if(!path.len) //try to get closer if you can't reach the patient directly - path = get_path_to(src, get_turf(patient), /turf/proc/Distance_cardinal, 0, 30,1,id=access_card) + path = get_path_to(src, patient, 30, 1, id=access_card) if(!path.len) //Do not chase a patient we cannot reach. soft_reset() diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index dcb5e5f237..56e2f66feb 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -530,7 +530,7 @@ // calculates a path to the current destination // given an optional turf to avoid /mob/living/simple_animal/bot/mulebot/calc_path(turf/avoid = null) - path = get_path_to(src, target, /turf/proc/Distance_cardinal, 0, 250, id=access_card, exclude=avoid) + path = get_path_to(src, target, 250, id=access_card, exclude=avoid) // sets the current destination // signals all beacons matching the delivery code diff --git a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm index ecd5db3ccf..dfb00f2657 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -88,10 +88,10 @@ if(default_storage) var/obj/item/I = new default_storage(src) - equip_to_slot_or_del(I, SLOT_GENERC_DEXTROUS_STORAGE) + equip_to_slot_or_del(I, ITEM_SLOT_DEX_STORAGE) if(default_hatmask) var/obj/item/I = new default_hatmask(src) - equip_to_slot_or_del(I, SLOT_HEAD) + equip_to_slot_or_del(I, ITEM_SLOT_HEAD) ADD_TRAIT(access_card, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) diff --git a/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm b/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm index 948be53abc..df4d1e0673 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm @@ -61,7 +61,7 @@ if(!D.default_hatmask && seasonal_hats && possible_seasonal_hats.len) var/hat_type = pick(possible_seasonal_hats) var/obj/item/new_hat = new hat_type(D) - D.equip_to_slot_or_del(new_hat, SLOT_HEAD) + D.equip_to_slot_or_del(new_hat, ITEM_SLOT_HEAD) D.flags_1 |= (flags_1 & ADMIN_SPAWNED_1) user.transfer_ckey(D, FALSE) qdel(src) diff --git a/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm b/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm index 00be08bb1d..4c112858da 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm @@ -21,13 +21,13 @@ /mob/living/simple_animal/drone/can_equip(obj/item/I, slot, disable_warning = FALSE, bypass_equip_delay_self = FALSE, clothing_check = FALSE, list/return_warning) switch(slot) - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) if(head) return 0 if(!((I.slot_flags & ITEM_SLOT_HEAD) || (I.slot_flags & ITEM_SLOT_MASK))) return 0 return 1 - if(SLOT_GENERC_DEXTROUS_STORAGE) + if(ITEM_SLOT_DEX_STORAGE) if(internal_storage) return 0 return 1 @@ -36,9 +36,9 @@ /mob/living/simple_animal/drone/get_item_by_slot(slot_id) switch(slot_id) - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) return head - if(SLOT_GENERC_DEXTROUS_STORAGE) + if(ITEM_SLOT_DEX_STORAGE) return internal_storage return ..() @@ -63,10 +63,10 @@ I.plane = ABOVE_HUD_PLANE switch(slot) - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) head = I update_inv_head() - if(SLOT_GENERC_DEXTROUS_STORAGE) + if(ITEM_SLOT_DEX_STORAGE) internal_storage = I update_inv_internal_storage() else @@ -77,7 +77,7 @@ I.equipped(src, slot) /mob/living/simple_animal/drone/getBackSlot() - return SLOT_GENERC_DEXTROUS_STORAGE + return ITEM_SLOT_DEX_STORAGE /mob/living/simple_animal/drone/getBeltSlot() - return SLOT_GENERC_DEXTROUS_STORAGE + return ITEM_SLOT_DEX_STORAGE diff --git a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm b/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm index a079507a63..6d421d326e 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm @@ -52,7 +52,7 @@ /mob/living/simple_animal/hostile/guardian/dextrous/can_equip(obj/item/I, slot, disable_warning = FALSE, bypass_equip_delay_self = FALSE, clothing_check = FALSE, list/return_warning) switch(slot) - if(SLOT_GENERC_DEXTROUS_STORAGE) + if(ITEM_SLOT_DEX_STORAGE) if(internal_storage) return 0 return 1 @@ -63,17 +63,17 @@ return switch(slot) - if(SLOT_GENERC_DEXTROUS_STORAGE) + if(ITEM_SLOT_DEX_STORAGE) internal_storage = I update_inv_internal_storage() else to_chat(src, "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!") /mob/living/simple_animal/hostile/guardian/dextrous/getBackSlot() - return SLOT_GENERC_DEXTROUS_STORAGE + return ITEM_SLOT_DEX_STORAGE /mob/living/simple_animal/hostile/guardian/dextrous/getBeltSlot() - return SLOT_GENERC_DEXTROUS_STORAGE + return ITEM_SLOT_DEX_STORAGE /mob/living/simple_animal/hostile/guardian/dextrous/proc/update_inv_internal_storage() if(internal_storage && client && hud_used && hud_used.hud_shown) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm index fa67fd8e3b..6bd55d06ae 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm @@ -191,7 +191,7 @@ continue visible_message("[src] grabs hold of [L]!") var/mob/living/carbon/C = L - var/obj/item/clothing/S = C.get_item_by_slot(SLOT_WEAR_SUIT) + var/obj/item/clothing/S = C.get_item_by_slot(ITEM_SLOT_OCLOTHING) if(S && S.resistance_flags & GOLIATH_RESISTANCE) L.Stun(25) else if(S && S.resistance_flags & GOLIATH_WEAKNESS) diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index 7c7a684cf3..4cc66bc4bd 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -655,7 +655,7 @@ GLOBAL_LIST_INIT(strippable_parrot_items, create_strippable_list(list( item = I break if(item) - if(!AStar(src, get_turf(item), /turf/proc/Distance_cardinal)) + if(!get_path_to(src, item)) item = null continue return item diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 03c5e76e87..4b8fa75aee 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -439,7 +439,11 @@ set category = "IC" set desc = "View your character's notes memory." if(mind) - mind.show_memory(src) +//ambition start + var/datum/browser/popup = new(src, "memory", "Memory and Notes") + popup.set_content(mind.show_memory()) + popup.open() +//ambition end else to_chat(src, "You don't have a mind datum for some reason, so you can't look at your notes, if you had any.") diff --git a/code/modules/ninja/energy_katana.dm b/code/modules/ninja/energy_katana.dm index cf895924b0..f59a06dc69 100644 --- a/code/modules/ninja/energy_katana.dm +++ b/code/modules/ninja/energy_katana.dm @@ -111,7 +111,7 @@ if(user.put_in_hands(src)) msg = "Your Energy Katana teleports into your hand!" - else if(user.equip_to_slot_if_possible(src, SLOT_BELT, 0, 1, 1)) + else if(user.equip_to_slot_if_possible(src, ITEM_SLOT_BELT, 0, 1, 1)) msg = "Your Energy Katana teleports back to you, sheathing itself as it does so!" else msg = "Your Energy Katana teleports to your location!" diff --git a/code/modules/ninja/outfit.dm b/code/modules/ninja/outfit.dm index ca740d9ad7..f9ce438ed9 100644 --- a/code/modules/ninja/outfit.dm +++ b/code/modules/ninja/outfit.dm @@ -11,7 +11,7 @@ l_pocket = /obj/item/grenade/plastic/c4/ninja r_pocket = /obj/item/hypospray/mkii/CMO/combat suit_store = /obj/item/tank/internals/oxygen - internals_slot = SLOT_S_STORE + internals_slot = ITEM_SLOT_SUITSTORE belt = /obj/item/energy_katana implants = list(/obj/item/implant/explosive) diff --git a/code/modules/ninja/suit/shoes.dm b/code/modules/ninja/suit/shoes.dm index 6fba60a6ef..4f46a1bfc6 100644 --- a/code/modules/ninja/suit/shoes.dm +++ b/code/modules/ninja/suit/shoes.dm @@ -22,7 +22,7 @@ /obj/item/clothing/shoes/space_ninja/equipped(mob/user, slot) . = ..() - if(slot == SLOT_SHOES) + if(slot == ITEM_SLOT_FEET) ADD_TRAIT(user, TRAIT_SILENT_STEP, SHOES_TRAIT) /obj/item/clothing/shoes/space_ninja/dropped(mob/user) diff --git a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm index f07ad0bc39..8c26f40d8b 100644 --- a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm +++ b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm @@ -163,7 +163,7 @@ icon = 'icons/obj/ammo.dmi' icon_state = "shotgunclip" caliber = "shotgun" // slapped in to allow shell mix n match - slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_POCKET + slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_POCKETS w_class = WEIGHT_CLASS_NORMAL w_volume = ITEM_VOLUME_STRIPPER_CLIP ammo_type = /obj/item/ammo_casing/shotgun diff --git a/code/modules/projectiles/boxes_magazines/external/rechargable.dm b/code/modules/projectiles/boxes_magazines/external/rechargable.dm index 5b774b111a..76d8f217ab 100644 --- a/code/modules/projectiles/boxes_magazines/external/rechargable.dm +++ b/code/modules/projectiles/boxes_magazines/external/rechargable.dm @@ -54,7 +54,7 @@ desc = "A miniature battery for an energy weapon." icon = 'icons/obj/ammo.dmi' icon_state = "mws_batt" - slot_flags = SLOT_BELT | SLOT_EARS + slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_EARS throwforce = 1 caliber = "mws" diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index bbd77ad665..a1c7c312ab 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -619,7 +619,7 @@ . += knife_overlay /obj/item/gun/item_action_slot_check(slot, mob/user, datum/action/A) - if(istype(A, /datum/action/item_action/toggle_scope_zoom) && slot != SLOT_HANDS) + if(istype(A, /datum/action/item_action/toggle_scope_zoom) && slot != ITEM_SLOT_HANDS) return FALSE return ..() diff --git a/code/modules/projectiles/guns/ballistic/toy.dm b/code/modules/projectiles/guns/ballistic/toy.dm index e7f26670d4..1f0601ac77 100644 --- a/code/modules/projectiles/guns/ballistic/toy.dm +++ b/code/modules/projectiles/guns/ballistic/toy.dm @@ -140,6 +140,6 @@ recoil = 0.1 inaccuracy_modifier = 0.25 dualwield_spread_mult = 1.4 - slot_flags = SLOT_BELT + slot_flags = ITEM_SLOT_BELT w_class = WEIGHT_CLASS_NORMAL weapon_weight = WEAPON_MEDIUM diff --git a/code/modules/projectiles/guns/energy/laser_gatling.dm b/code/modules/projectiles/guns/energy/laser_gatling.dm index a0274d76d7..2bb1ece906 100644 --- a/code/modules/projectiles/guns/energy/laser_gatling.dm +++ b/code/modules/projectiles/guns/energy/laser_gatling.dm @@ -32,7 +32,7 @@ /obj/item/minigunpack/on_attack_hand(var/mob/living/carbon/user) if(src.loc == user) if(!armed) - if(user.get_item_by_slot(SLOT_BACK) == src) + if(user.get_item_by_slot(ITEM_SLOT_BACK) == src) armed = 1 if(!user.put_in_hands(gun)) armed = 0 diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 2899f0ca11..cdad332def 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -14,6 +14,7 @@ GLOB.chemical_reagents_list[path] = D /proc/build_chemical_reactions_list() + message_admins("STARTY START START!") //Chemical Reactions - Initialises all /datum/chemical_reaction into a list // It is filtered into multiple lists within a list. // For example: @@ -26,11 +27,20 @@ //Randomized need to go last since they need to check against conflicts with normal recipes var/paths = subtypesof(/datum/chemical_reaction) - typesof(/datum/chemical_reaction/randomized) + subtypesof(/datum/chemical_reaction/randomized) GLOB.chemical_reactions_list = list() + GLOB.normalized_chemical_reactions_list = list() // chemistry pda + GLOB.drink_reactions_list = list() // bartender pda for(var/path in paths) var/datum/chemical_reaction/D = new path() var/list/reaction_ids = list() + // store recipes separately for bartender/chemistry cartridges + if(D.id && !D.is_secret) // don't show things like secretcatchem or secret sauce + var/datum/reagent/r = D.id + if(ispath(D.id, /datum/reagent/consumable)) + GLOB.drink_reactions_list[initial(r.name)] = D + if(ispath(D.id, /datum/reagent)) + GLOB.normalized_chemical_reactions_list[initial(r.name)] = D if(D.required_reagents && D.required_reagents.len) for(var/reaction in D.required_reagents) @@ -43,6 +53,31 @@ GLOB.chemical_reactions_list[id] += D break // Don't bother adding ourselves to other reagent ids, it is redundant +/proc/recipe_search(mob/M, list/reaction_list) + var/option = input(M, "Enter keyword to return a recipe.") + if(option) + option = lowertext(option) + var/list/reagents_required + var/found_reagent_name + var/required_temp + for(var/reagent_name in reaction_list) + if(findtext(lowertext(reagent_name), option)) + var/datum/chemical_reaction/reaction = reaction_list[reagent_name] + found_reagent_name = reagent_name + reagents_required = reaction.required_reagents + required_temp = reaction.required_temp + break + if(length(reagents_required)) + to_chat(M, "Recipe found: [found_reagent_name][required_temp ? "
    Required Temperature: [required_temp]K" : ""]
    Required Reagents:") + var/reagents_required_string = "" + for(var/r in reagents_required) + var/datum/reagent/reagent = r + reagents_required_string += "
    [initial(reagent.name)]: [reagents_required[r]]" + to_chat(M, reagents_required_string) + return + else + to_chat(M, "Reagent with term: [option] could not be located!") + /////////////////////////////////////////////////////////////////////////////////// /datum/reagents diff --git a/code/modules/reagents/chemistry/recipes.dm b/code/modules/reagents/chemistry/recipes.dm index 41c0ed717e..aab46bc3e4 100644 --- a/code/modules/reagents/chemistry/recipes.dm +++ b/code/modules/reagents/chemistry/recipes.dm @@ -38,6 +38,8 @@ var/clear_conversion //bitflags for clear conversions; REACTION_CLEAR_IMPURE or REACTION_CLEAR_INVERSE var/PurityMin = 0.15 //If purity is below 0.15, it explodes too. Set to 0 to disable this. + var/is_secret = FALSE // If it should show in recipe searchers such as the bartender/chemistry PDA functions + /datum/chemical_reaction/proc/on_reaction(datum/reagents/holder, multiplier, specialreact) set waitfor = FALSE diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index fddff17a9d..03b0e1b715 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -581,7 +581,7 @@ if(istype(extract)) if(extract.Uses > 0) var/mob/lastheld = get_mob_by_key(holder.my_atom.fingerprintslast) - if(lastheld && !lastheld.equip_to_slot_if_possible(extract, SLOT_HANDS, disable_warning = TRUE)) + if(lastheld && !lastheld.equip_to_slot_if_possible(extract, ITEM_SLOT_HANDS, disable_warning = TRUE)) extract.forceMove(get_turf(lastheld)) use_slime_core(holder) diff --git a/code/modules/reagents/chemistry/recipes/special.dm b/code/modules/reagents/chemistry/recipes/special.dm index ad277ef4ff..4aab8e4046 100644 --- a/code/modules/reagents/chemistry/recipes/special.dm +++ b/code/modules/reagents/chemistry/recipes/special.dm @@ -54,6 +54,8 @@ GLOBAL_LIST_INIT(food_reagents, build_reagents_to_food()) //reagentid = related var/max_result_reagents = 1 var/list/possible_results = list() + is_secret = TRUE + /datum/chemical_reaction/randomized/proc/GenerateRecipe() created = world.time if(randomize_container) diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 6e1b753c32..cc7ff43bab 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -300,14 +300,14 @@ resistance_flags = NONE armor = list("melee" = 10, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 75, "acid" = 50) //Weak melee protection, because you can wear it on your head slot_equipment_priority = list( \ - SLOT_BACK, SLOT_WEAR_ID,\ - SLOT_W_UNIFORM, SLOT_WEAR_SUIT,\ - SLOT_WEAR_MASK, SLOT_HEAD, SLOT_NECK,\ - SLOT_SHOES, SLOT_GLOVES,\ - SLOT_EARS, SLOT_GLASSES,\ - SLOT_BELT, SLOT_S_STORE,\ - SLOT_L_STORE, SLOT_R_STORE,\ - SLOT_GENERC_DEXTROUS_STORAGE + ITEM_SLOT_BACK, ITEM_SLOT_ID,\ + ITEM_SLOT_ICLOTHING, ITEM_SLOT_OCLOTHING,\ + ITEM_SLOT_MASK, ITEM_SLOT_HEAD, ITEM_SLOT_NECK,\ + ITEM_SLOT_FEET, ITEM_SLOT_GLOVES,\ + ITEM_SLOT_EARS, ITEM_SLOT_EYES,\ + ITEM_SLOT_BELT, ITEM_SLOT_SUITSTORE,\ + ITEM_SLOT_LPOCKET, ITEM_SLOT_RPOCKET,\ + ITEM_SLOT_DEX_STORAGE ) container_flags = APTFT_ALTCLICK|APTFT_VERB container_HP = 1 @@ -330,11 +330,11 @@ /obj/item/reagent_containers/glass/bucket/equipped(mob/user, slot) ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) if(reagents.total_volume) to_chat(user, "[src]'s contents spill all over you!") var/R = reagents.log_list() - log_reagent("SPLASH: [user] splashed [src] on their head via bucket/equipped(self, SLOT_HEAD) - [R]") + log_reagent("SPLASH: [user] splashed [src] on their head via bucket/equipped(self, ITEM_SLOT_HEAD) - [R]") reagents.reaction(user, TOUCH) reagents.clear_reagents() reagent_flags = NONE @@ -345,10 +345,10 @@ /obj/item/reagent_containers/glass/bucket/equip_to_best_slot(var/mob/M) if(reagents.total_volume) //If there is water in a bucket, don't quick equip it to the head - var/index = slot_equipment_priority.Find(SLOT_HEAD) - slot_equipment_priority.Remove(SLOT_HEAD) + var/index = slot_equipment_priority.Find(ITEM_SLOT_HEAD) + slot_equipment_priority.Remove(ITEM_SLOT_HEAD) . = ..() - slot_equipment_priority.Insert(index, SLOT_HEAD) + slot_equipment_priority.Insert(index, ITEM_SLOT_HEAD) return return ..() diff --git a/code/modules/reagents/reagent_containers/rags.dm b/code/modules/reagents/reagent_containers/rags.dm index c26ed4db31..78cb9d43ea 100644 --- a/code/modules/reagents/reagent_containers/rags.dm +++ b/code/modules/reagents/reagent_containers/rags.dm @@ -150,11 +150,11 @@ /obj/item/reagent_containers/rag/towel/equipped(mob/living/user, slot) . = ..() switch(slot) - if(SLOT_BELT) + if(ITEM_SLOT_BELT) body_parts_covered = GROIN|LEGS - if(SLOT_WEAR_SUIT) + if(ITEM_SLOT_OCLOTHING) body_parts_covered = CHEST|GROIN|LEGS - if(SLOT_HEAD) + if(ITEM_SLOT_HEAD) body_parts_covered = HEAD flags_inv = HIDEHAIR diff --git a/code/modules/research/designs/limbgrower_designs.dm b/code/modules/research/designs/limbgrower_designs.dm index 8da18c453c..e30cdfb5ef 100644 --- a/code/modules/research/designs/limbgrower_designs.dm +++ b/code/modules/research/designs/limbgrower_designs.dm @@ -2,6 +2,18 @@ //////////Limb Grower Designs /////// ///////////////////////////////////// + +/datum/design/chestmob + name = "Synthetic Humanoid Framework Chest" + id = "chestmob" + // Mobs don't make very good roundstart icons + research_icon = 'icons/mob/human_parts.dmi' + research_icon_state = "default_human_chest" + build_type = LIMBGROWER + reagents_list = list(/datum/reagent/medicine/synthflesh = 100, /datum/reagent/blood = BLOOD_VOLUME_SURVIVE) + build_path = /mob/living/carbon/human/chestonly + category = list("initial","human","lizard","fly","insect","plasmaman","mammal","xeno") + /datum/design/leftarm name = "Left Arm" id = "leftarm" diff --git a/code/modules/research/xenobiology/crossbreeding/_clothing.dm b/code/modules/research/xenobiology/crossbreeding/_clothing.dm index 1ac09652b5..b30a53c27d 100644 --- a/code/modules/research/xenobiology/crossbreeding/_clothing.dm +++ b/code/modules/research/xenobiology/crossbreeding/_clothing.dm @@ -19,7 +19,7 @@ Slimecrossing Armor /obj/item/clothing/mask/nobreath/equipped(mob/living/carbon/human/user, slot) . = ..() - if(slot == SLOT_WEAR_MASK) + if(slot == ITEM_SLOT_MASK) ADD_TRAIT(user, TRAIT_NOBREATH, "breathmask_[REF(src)]") user.failed_last_breath = FALSE user.clear_alert("not_enough_oxy") @@ -39,7 +39,7 @@ Slimecrossing Armor var/glasses_color = "#FFFFFF" /obj/item/clothing/glasses/prism_glasses/item_action_slot_check(slot) - if(slot == SLOT_GLASSES) + if(slot == ITEM_SLOT_EYES) return TRUE /obj/structure/light_prism @@ -111,7 +111,7 @@ Slimecrossing Armor /obj/item/clothing/head/peaceflower/equipped(mob/living/carbon/human/user, slot) . = ..() - if(slot == SLOT_HEAD) + if(slot == ITEM_SLOT_HEAD) ADD_TRAIT(user, TRAIT_PACIFISM, "peaceflower_[REF(src)]") /obj/item/clothing/head/peaceflower/dropped(mob/living/carbon/human/user) diff --git a/code/modules/research/xenobiology/crossbreeding/regenerative.dm b/code/modules/research/xenobiology/crossbreeding/regenerative.dm index dee7b1cf45..f871cac778 100644 --- a/code/modules/research/xenobiology/crossbreeding/regenerative.dm +++ b/code/modules/research/xenobiology/crossbreeding/regenerative.dm @@ -127,10 +127,10 @@ Regenerative extracts: /obj/item/slimecross/regenerative/darkpurple/core_effect(mob/living/target, mob/user) var/equipped = 0 - equipped += target.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/purple(null), SLOT_SHOES) - equipped += target.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(null), SLOT_W_UNIFORM) - equipped += target.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/purple(null), SLOT_GLOVES) - equipped += target.equip_to_slot_or_del(new /obj/item/clothing/head/soft/purple(null), SLOT_HEAD) + equipped += target.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/purple(null), ITEM_SLOT_FEET) + equipped += target.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(null), ITEM_SLOT_ICLOTHING) + equipped += target.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/purple(null), ITEM_SLOT_GLOVES) + equipped += target.equip_to_slot_or_del(new /obj/item/clothing/head/soft/purple(null), ITEM_SLOT_HEAD) if(equipped > 0) target.visible_message("The milky goo congeals into clothing!") @@ -142,13 +142,13 @@ Regenerative extracts: return var/mob/living/carbon/human/H = target var/fireproofed = FALSE - if(H.get_item_by_slot(SLOT_WEAR_SUIT)) + if(H.get_item_by_slot(ITEM_SLOT_OCLOTHING)) fireproofed = TRUE - var/obj/item/clothing/C = H.get_item_by_slot(SLOT_WEAR_SUIT) + var/obj/item/clothing/C = H.get_item_by_slot(ITEM_SLOT_OCLOTHING) fireproof(C) - if(H.get_item_by_slot(SLOT_HEAD)) + if(H.get_item_by_slot(ITEM_SLOT_HEAD)) fireproofed = TRUE - var/obj/item/clothing/C = H.get_item_by_slot(SLOT_HEAD) + var/obj/item/clothing/C = H.get_item_by_slot(ITEM_SLOT_HEAD) fireproof(C) if(fireproofed) target.visible_message("Some of [target]'s clothing gets coated in the goo, and turns blue!") diff --git a/code/modules/spells/spell_types/lichdom.dm b/code/modules/spells/spell_types/lichdom.dm index fbe7a0ea40..bf6051c87c 100644 --- a/code/modules/spells/spell_types/lichdom.dm +++ b/code/modules/spells/spell_types/lichdom.dm @@ -63,9 +63,9 @@ H.dropItemToGround(H.w_uniform) H.dropItemToGround(H.wear_suit) H.dropItemToGround(H.head) - H.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/black(H), SLOT_WEAR_SUIT) - H.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/black(H), SLOT_HEAD) - H.equip_to_slot_or_del(new /obj/item/clothing/under/color/black(H), SLOT_W_UNIFORM) + H.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/black(H), ITEM_SLOT_OCLOTHING) + H.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/black(H), ITEM_SLOT_HEAD) + H.equip_to_slot_or_del(new /obj/item/clothing/under/color/black(H), ITEM_SLOT_ICLOTHING) // you only get one phylactery. M.mind.RemoveSpell(src) @@ -132,10 +132,10 @@ var/mob/old_body = mind.current var/mob/living/carbon/human/lich = new(item_turf) - lich.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(lich), SLOT_SHOES) - lich.equip_to_slot_or_del(new /obj/item/clothing/under/color/black(lich), SLOT_W_UNIFORM) - lich.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/black(lich), SLOT_WEAR_SUIT) - lich.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/black(lich), SLOT_HEAD) + lich.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(lich), ITEM_SLOT_FEET) + lich.equip_to_slot_or_del(new /obj/item/clothing/under/color/black(lich), ITEM_SLOT_ICLOTHING) + lich.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/black(lich), ITEM_SLOT_OCLOTHING) + lich.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/black(lich), ITEM_SLOT_HEAD) lich.real_name = mind.name mind.transfer_to(lich) diff --git a/code/modules/vehicles/scooter.dm b/code/modules/vehicles/scooter.dm index 3e0e71446d..d4a87a0f1e 100644 --- a/code/modules/vehicles/scooter.dm +++ b/code/modules/vehicles/scooter.dm @@ -102,7 +102,7 @@ var/atom/throw_target = get_edge_target_turf(H, pick(GLOB.cardinals)) unbuckle_mob(H) H.throw_at(throw_target, 3, 2) - var/head_slot = H.get_item_by_slot(SLOT_HEAD) + var/head_slot = H.get_item_by_slot(ITEM_SLOT_HEAD) if(!head_slot || !(istype(head_slot,/obj/item/clothing/head/helmet) || istype(head_slot,/obj/item/clothing/head/hardhat))) H.adjustOrganLoss(ORGAN_SLOT_BRAIN, 5) H.updatehealth() @@ -281,7 +281,7 @@ H.throw_at(throw_target, 4, 3) H.DefaultCombatKnockdown(30) H.adjustStaminaLoss(30) - var/head_slot = H.get_item_by_slot(SLOT_HEAD) + var/head_slot = H.get_item_by_slot(ITEM_SLOT_HEAD) if(!head_slot || !(istype(head_slot,/obj/item/clothing/head/helmet) || istype(head_slot,/obj/item/clothing/head/hardhat))) H.adjustOrganLoss(ORGAN_SLOT_BRAIN, 1) H.updatehealth() diff --git a/dependencies.sh b/dependencies.sh index 4474cc8736..0a27dd623f 100644 --- a/dependencies.sh +++ b/dependencies.sh @@ -18,7 +18,7 @@ export NODE_VERSION_PRECISE=12.22.4 export SPACEMAN_DMM_VERSION=suite-1.7 # Python version for mapmerge and other tools -export PYTHON_VERSION=3.6.8 +export PYTHON_VERSION=3.7.9 # Auxmos git tag export AUXMOS_VERSION=v0.3.0 diff --git a/html/changelogs/archive/2022-02.yml b/html/changelogs/archive/2022-02.yml index 8ae10a7f5c..12ad63274c 100644 --- a/html/changelogs/archive/2022-02.yml +++ b/html/changelogs/archive/2022-02.yml @@ -128,3 +128,49 @@ - bugfix: '[Omega] Toxins Mix Chamber no longer starts bolted' - bugfix: '[Omega] Missing pipe above Security leading into Perma' - bugfix: '[Omega] Secure Tech Storage now properly has an area' +2022-02-23: + SandPoot: + - bugfix: You know the training targets? You can grab them again now with your own + hands, instead of using telekinesis. + TripleShades: + - rscadd: '[Omega] Trash chute to space in Virology' + - rscadd: '[Omega] Trash chute to space in Xenobiology' + - rscadd: '[Omega] Airlock leading out to Supermatter cooling pipeline' + - rscadd: '[Omega] Two more air pumps to Toxins' + - rscadd: '[Omega] Robotics circuitry printer' + - rscadd: '[Omega] Windoor to Cargo delivery flaps' + - rscdel: '[Omega] Backdoor to Gravity Generator' + - rscdel: '[Omega] Bunched up cameras tweak: [Omega] Pipes leading to the Incinerator + burn chamber are now black tweak: [Omega] Gravity Generator airlocks are now + accessible by engineers tweak: [Omega] Chapel mass driver and mass driver bulkhead + are now controlled by one button instead of two' + - bugfix: '[Omega] Lawyer''s carpet is no longer airless' +2022-02-25: + TripleShades: + - rscadd: '[Omega] Additional Solar Panels to both existing arrays' + - rscadd: '[Omega] Floor tile underneath library maint airlock' + - rscadd: '[Omega] Contraband locker to Armoury' + - bugfix: '[Omega] Solar Array SMES Units actually connect to the grid properly + now' + timothyteakettle: + - rscadd: adds snake coiling +2022-02-26: + Putnam3145: + - balance: Now slightly easier to get 50,000 points with toxins (50,000 point baseline + changed from 200 light range to 175) +2022-02-28: + Arturlang: + - rscadd: The limbgrower can make human chest parts that you can build onto into + a person. + Putnam3145: + - rscadd: Configurable weekly high-chaos days + SandPoot: + - refactor: Kills off SLOT_ in favor of ITEM_SLOT_ + SandPoot and Crowbar764: + - rscadd: TGUI for the player playtimes menu. + bunny232: + - rscadd: Cold weather gear can now provide insulation against temperatures of up + to 57C (330K) + timothyteakettle: + - rscadd: adds a cartridge for the bartender's PDA that lets them search drink recipes + - rscadd: updates chemist cartridge to be able to search all chemical recipes diff --git a/html/statbrowser.html b/html/statbrowser.html index 1cb089a189..ecb47c419c 100644 --- a/html/statbrowser.html +++ b/html/statbrowser.html @@ -12,16 +12,27 @@ font-size: 12px !important; margin: 0 !important; padding: 0 !important; + overflow-x: hidden; + overflow-y: scroll; } + body.dark { background-color: #131313; - color: #abc6ec; + color: #b2c4dd; + scrollbar-base-color: #1c1c1c; + scrollbar-face-color: #3b3b3b; + scrollbar-3dlight-color: #252525; + scrollbar-highlight-color: #252525; + scrollbar-track-color: #1c1c1c; + scrollbar-arrow-color: #929292; + scrollbar-shadow-color: #3b3b3b; } #menu { background-color: #F0F0F0; position: fixed; width: 100%; + z-index: 100; } .dark #menu { @@ -38,7 +49,7 @@ } .dark a { - color: #abc6ec; + color: #b2c4dd; } a:hover, .dark a:hover { @@ -80,73 +91,115 @@ .button { background-color: #dfdfdf; - border-color: #cecece; - border-width: 1px; - border-style: solid; + border: 1px solid #cecece; + border-bottom-width: 2px; color: rgba(0, 0, 0, 0.7); - padding: 6px 4px; + padding: 6px 4px 4px; text-align: center; text-decoration: none; font-size: 12px; margin: 0; cursor: pointer; - transition-duration: 0.25s; + transition-duration: 100ms; order: 3; min-width: 40px; } .dark button { - background-color: #444444; + background-color: #222222; border-color: #343434; - color: rgba(255, 255, 255, 0.7); + color: rgba(255, 255, 255, 0.5); } .button:hover { background-color: #ececec; + transition-duration: 0; } .dark button:hover { - background-color: #4d4d4d; + background-color: #2e2e2e; } .button:active, .button.active { background-color: #ffffff; color: black; - border-top: 1px solid #cecece; - border-left: 1px solid #cecece; - border-right: 1px solid #cecece; - border-bottom: 1px solid #ffffff; + border-top-color: #cecece; + border-left-color: #cecece; + border-right-color: #cecece; + border-bottom-color: #ffffff; } .dark .button:active, .dark .button.active { - background-color: #131313; + background-color: #444444; color: white; - border-top: 1px solid #343434; - border-left: 1px solid #343434; - border-right: 1px solid #343434; - border-bottom: 1px solid #131313; + border-top-color: #343434; + border-left-color: #343434; + border-right-color: #343434; + border-bottom-color: #ffffff; } .grid-container { - display: inline-flex; - flex-wrap: wrap; - justify-content: flex-start; - align-items: flex-start; - min-width: 0; - min-height: 0; - white-space: pre-wrap; + margin: -2px; + margin-right: -15px; } .grid-item { - color: black; - width: 150px; - font-size: 11px; - line-height: 24px; - text-align: left; - min-width: 0; - min-height: 0; - white-space: pre-wrap; - padding-right: 12px; /* A little more than two spaces, to look good in IE8 where flex-justify does nothing */ + position: relative; + display: inline-block; + width: 100%; + box-sizing: border-box; + overflow: visible; + padding: 3px 2px; + text-decoration: none; + } + + @media only screen and (min-width: 300px) { + .grid-item { + width: 50%; + } + } + + @media only screen and (min-width: 430px) { + .grid-item { + width: 33%; + } + } + + @media only screen and (min-width: 560px) { + .grid-item { + width: 25%; + } + } + + @media only screen and (min-width: 770px) { + .grid-item { + width: 20%; + } + } + + .grid-item:hover { + z-index: 1; + } + + .grid-item:hover .grid-item-text { + width: auto; + text-decoration: underline; + } + + .grid-item-text { + display: inline-block; + width: 100%; + background-color: #ffffff; + margin: 0 -6px; + padding: 0 6px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + pointer-events: none; + } + + .dark .grid-item-text { + background-color: #131313; } .link { @@ -173,6 +226,10 @@ -ms-interpolation-mode: nearest-neighbor; image-rendering: pixelated; } + + .interview_panel_controls, .interview_panel_stats { + margin-bottom: 10px; + } @@ -242,53 +299,6 @@ if (!String.prototype.trim) { }, 0, 'test'); }()) -// Browser passthrough code --------------------------------------------------- -if (window.location) { - var anti_spam = []; // wow I wish I could use e.repeat but IE is dumb and doesn't have it. - document[addEventListenerKey]("keydown", function(e) { - if(e.target && (e.target.localName == "input" || e.target.localName == "textarea")) - return; - if(e.defaultPrevented) - return; // do e.preventDefault() to prevent this behavior. - if(e.which) { - if(!anti_spam[e.which]) { - anti_spam[e.which] = true; - var key = String.fromCharCode(e.which); - var x = event.x || event.clientX; - var y = event.y || event.clientY; - if(x || y ) // if either of these exist this is happening after a click - return; - window.location.href = "byond://winset?command=keyDown " + e.key; - } - } - }); - document[addEventListenerKey]("keyup", function(e) { - if(e.target && (e.target.localName == "input" || e.target.localName == "textarea")) - return; - if(e.defaultPrevented) - return; - if(e.which) { - anti_spam[e.which] = false; - var key = String.fromCharCode(e.which); - var x = event.x || event.clientX; - var y = event.y || event.clientY; - if( x || y ) // if either of these exist this is happening after a click - return; - - window.location.href = "byond://winset?command=keyUp " + e.key; - } - }); -} -/* document.addEventListener("mousedown", function(e){ - var shiftPressed=0; - var evt = e?e:window.event; - shiftPressed=evt.shiftKey; - if (shiftPressed) { - return false; - } - return true; -}); */ - // Status panel implementation ------------------------------------------------ var status_tab_parts = ["Loading..."]; var current_tab = null; @@ -300,20 +310,80 @@ var spell_tabs = []; var verb_tabs = []; var verbs = [["", ""]]; // list with a list inside var tickets = []; +var interviewManager = {status: "", interviews: []}; var sdql2 = []; var permanent_tabs = []; // tabs that won't be cleared by wipes var turfcontents = []; var turfname = ""; var imageRetryDelay = 500; var imageRetryLimit = 50; -var menu = document.querySelector('#menu'); -var under_menu = document.querySelector('#under_menu'); -var statcontentdiv = document.querySelector('#statcontent'); +var menu = document.getElementById('menu'); +var under_menu = document.getElementById('under_menu'); +var statcontentdiv = document.getElementById('statcontent'); var storedimages = []; +var split_admin_tabs = false; + +var connected = false; +var commandQueue = []; + +// Any BYOND verb call must go through this, as if a verb is sent during reconnect then +// it will cause the reconnect to fail. +// This function will either call immediately, or queue until +// BYOND confirms we are connected. +function send_byond_command(command) { + var href = "byond://winset?command=" + command; + + if (connected) { + window.location.href = href; + } else { + commandQueue.push(href); + } +} + +// Any BYOND commands that could result in the client's focus changing go through this +// to ensure that when we relinquish our focus, we don't do it after the result of +// a command has already taken focus for itself. +function run_after_focus(callback) { + setTimeout(callback, 0); +} + +function connected_to_server() { + if (connected) { + return; + } + + connected = true; + + for (var index = 0; index < commandQueue.length; index++) { + // This is just setting it a lot, is this not going to cancel? + window.location.href = commandQueue[index]; + } + + commandQueue = []; +} + +function update_split_admin_tabs(status) { + status = (status == true); + + if (split_admin_tabs !== status) { + if (split_admin_tabs === true) { + removeStatusTab("Events"); + removeStatusTab("Fun"); + removeStatusTab("Game"); + } + update_verbs(); + } + split_admin_tabs = status; +} function createStatusTab(name) { - if (name.indexOf(".") != -1) - name = name.split(".")[0]; + if (name.indexOf(".") != -1) { + var splitName = name.split("."); + if (split_admin_tabs && splitName[0] === "Admin") + name = splitName[1]; + else + name = splitName[0]; + } if(document.getElementById(name) || name.trim() == "") return; if(!verb_tabs.includes(name) && !permanent_tabs.includes(name)) @@ -386,6 +456,7 @@ function checkStatusTab() { if(!verb_tabs.includes(menu.children[i].id) && !permanent_tabs.includes(menu.children[i].id)) menu.removeChild(menu.children[i]); } + function remove_verb(v) { var verb_to_remove = v; // to_remove = [verb:category, verb:name] for(var i = verbs.length - 1; i >= 0; i--){ @@ -403,7 +474,14 @@ function check_verbs() { } function verbs_cat_check(cat) { - var tabCat = cat.indexOf(".") != -1 ? cat.split(".")[0] : cat; + var tabCat = cat; + if (cat.indexOf(".") != -1) { + var splitName = cat.split("."); + if (split_admin_tabs && splitName[0] === "Admin") + tabCat = splitName[1]; + else + tabCat = splitName[0]; + } var verbs_in_cat = 0; var verbcat = ""; if(!verb_tabs.includes(tabCat)){ @@ -412,7 +490,14 @@ function verbs_cat_check(cat) { } for(var v = 0; v < verbs.length; v++){ var part = verbs[v]; - verbcat = part[0].indexOf(".") != -1 ? part[0].split(".")[0] : part[0]; + verbcat = part[0]; + if (verbcat.indexOf(".") != -1) { + var splitName = verbcat.split("."); + if (split_admin_tabs && splitName[0] === "Admin") + verbcat = splitName[1]; + else + verbcat = splitName[0]; + } if(verbcat != tabCat || verbcat.trim() == ""){ continue; } @@ -441,6 +526,11 @@ function wipe_verbs() { checkStatusTab(); // remove all empty verb tabs } +function update_verbs() { + wipe_verbs(); + send_byond_command("Update-Verbs"); +} + function add_verb_list(v) { var to_add = JSON.parse(v); // list of a list with category and verb inside it to_add.sort(); // sort what we're adding @@ -448,7 +538,14 @@ function add_verb_list(v) { var part = to_add[i]; if(!part[0]) continue; - var category = part[0].indexOf(".") == -1 ? part[0] : part[0].split(".")[0]; + var category = part[0]; + if (category.indexOf(".") != -1) { + var splitName = category.split("."); + if (split_admin_tabs && splitName[0] === "Admin") + category = splitName[1]; + else + category = splitName[0]; + } if(findVerbindex(part[1], verbs)) continue; if(verb_tabs.includes(category)){ @@ -478,6 +575,7 @@ function remove_verb_list(v) { // passes a 2D list of (verbcategory, verbname) creates tabs and adds verbs to respective list // example (IC, Say) function init_verbs(c, v) { + connected_to_server(); wipe_verbs(); // remove all verb categories so we can replace them checkStatusTab(); // remove all status tabs verb_tabs = JSON.parse(c); @@ -510,12 +608,12 @@ function SendTabsToByond(){ } function SendTabToByond(tab) { - window.location.href = "byond://winset?command=Send-Tabs " + tab; + send_byond_command("Send-Tabs " + tab); } //Byond can't have this tab anymore since we're removing it function TakeTabFromByond(tab) { - window.location.href = "byond://winset?command=Remove-Tabs " + tab; + send_byond_command("Remove-Tabs " + tab); } function update(global_data, ping_entry, other_entries) { @@ -625,6 +723,7 @@ function tab_change(tab) { draw_debug(); } else if(tab == "Tickets") { draw_tickets(); +// draw_interviews(); } else if(tab == "SDQL2") { draw_sdql2(); }else if(tab == turfname) { @@ -636,8 +735,9 @@ function tab_change(tab) { } function set_byond_tab(tab){ - window.location.href = "byond://winset?command=Set-Tab " + tab; + send_byond_command("Set-Tab " + tab); } + function draw_debug() { statcontentdiv[textContentKey] = ""; var wipeverbstabs = document.createElement("div"); @@ -646,12 +746,26 @@ function draw_debug() { link[textContentKey] = "Wipe All Verbs"; wipeverbstabs.appendChild(link); document.getElementById("statcontent").appendChild(wipeverbstabs); + var wipeUpdateVerbsTabs = document.createElement("div"); + var updateLink = document.createElement("a"); + updateLink.onclick = function() {update_verbs()}; + updateLink[textContentKey] = "Wipe and Update All Verbs"; + wipeUpdateVerbsTabs.appendChild(updateLink); + document.getElementById("statcontent").appendChild(wipeUpdateVerbsTabs); var text = document.createElement("div"); text[textContentKey] = "Verb Tabs:"; document.getElementById("statcontent").appendChild(text); var table1 = document.createElement("table"); for(var i=0; i < verb_tabs.length ; i++) { var part = verb_tabs[i]; + // Hide subgroups except admin subgroups if they are split + if (verb_tabs[i].lastIndexOf(".") != -1) { + var splitName = verb_tabs[i].split("."); + if (split_admin_tabs && splitName[0] === "Admin") + part = splitName[1]; + else + continue; + } var tr = document.createElement("tr"); var td1 = document.createElement("td"); td1[textContentKey] = part; @@ -740,7 +854,7 @@ function draw_status() { } if(verb_tabs.length == 0 || !verbs) { - window.location.href = "byond://winset?command=Fix-Stat-Panel"; + send_byond_command("Fix-Stat-Panel"); } } @@ -776,6 +890,11 @@ function update_tickets(T){ if(current_tab == "Tickets") draw_tickets(); } +function update_interviews(I){ + interviewManager = JSON.parse(I); + if(current_tab == "Tickets") + draw_interviews(); +} function update_sdql2(S) { sdql2 = JSON.parse(S); if(sdql2.length > 0 && !verb_tabs.includes("SDQL2")) { @@ -805,12 +924,21 @@ function remove_tickets() { } checkStatusTab(); } + +function remove_interviews() { + if(tickets) { + tickets = []; + } + checkStatusTab(); +} + // removes MC, Tickets and MC tabs. function remove_admin_tabs() { href_token = null; remove_mc(); remove_tickets(); remove_sdql2(); +// remove_interviews(); } function add_admin_tabs(ht) { @@ -875,7 +1003,17 @@ function draw_listedturf() { // rather than every onmousedown getting the "part" of the last entry. return function(e) { e.preventDefault(); - clickcatcher = "?src=_statpanel_;statpanel_item_target=" + part[1] + ";statpanel_item_click=1"; + clickcatcher = "?src=_statpanel_;statpanel_item_target=" + part[1]; + switch(e.button){ + case 1: + clickcatcher += ";statpanel_item_click=middle" + break; + case 2: + clickcatcher += ";statpanel_item_click=right" + break; + default: + clickcatcher += ";statpanel_item_click=left" + } if(e.shiftKey){ clickcatcher += ";statpanel_item_shiftclick=1"; } @@ -912,7 +1050,7 @@ function draw_sdql2(){ var td2 = document.createElement("td"); if(part[2]) { var a = document.createElement("a"); - a.href = "?src=" + "_statpanel_" + ";statpanel_item_target=" + part[2] + ";statpanel_item_click=1"; + a.href = "?src=" + "_statpanel_" + ";statpanel_item_target=" + part[2] + ";statpanel_item_click=left"; a[textContentKey] = part[1]; td2.appendChild(a); } else { @@ -938,12 +1076,12 @@ function draw_tickets() { var td2 = document.createElement("td"); if(part[2]) { var a = document.createElement("a"); - a.href = "?_src_=holder;admin_token=" + href_token + ";ahelp=" + part[2] + ";ahelp_action=ticket;statpanel_item_click=1;action=ticket" ; + a.href = "?_src_=holder;admin_token=" + href_token + ";ahelp=" + part[2] + ";ahelp_action=ticket;statpanel_item_click=left;action=ticket" ; a[textContentKey] = part[1]; td2.appendChild(a); } else if(part[3]){ var a = document.createElement("a"); - a.href = "?src=_statpanel_" + ";statpanel_item_target=" + part[3] + ";statpanel_item_click=1"; + a.href = "?src=_statpanel_" + ";statpanel_item_target=" + part[3] + ";statpanel_item_click=left"; a[textContentKey] = part[1]; td2.appendChild(a); } else { @@ -956,6 +1094,55 @@ function draw_tickets() { document.getElementById("statcontent").appendChild(table); } +function draw_interviews() { + var body = document.createElement("div"); + var header = document.createElement("h3"); + header[textContentKey] = "Interviews"; + body.appendChild(header); + var manDiv = document.createElement("div"); + manDiv.className = "interview_panel_controls" + var manLink = document.createElement("a"); + manLink[textContentKey] = "Open Interview Manager Panel"; + manLink.href = "?_src_=holder;admin_token=" + href_token + ";interview_man=1;statpanel_item_click=left"; + manDiv.appendChild(manLink); + body.appendChild(manDiv); + + // List interview stats + var statsDiv = document.createElement("table"); + statsDiv.className="interview_panel_stats"; + for (var key in interviewManager.status) { + var d = document.createElement("div"); + var tr = document.createElement("tr"); + var stat_name = document.createElement("td"); + var stat_text = document.createElement("td"); + stat_name[textContentKey] = key; + stat_text[textContentKey] = interviewManager.status[key]; + tr.appendChild(stat_name); + tr.appendChild(stat_text); + statsDiv.appendChild(tr); + } + body.appendChild(statsDiv); + document.getElementById("statcontent").appendChild(body); + + // List interviews if any are open + var table = document.createElement("table"); + table.className = "interview_panel_table"; + if(!interviewManager) + return; + for(var i = 0; i < interviewManager.interviews.length; i++) { + var part = interviewManager.interviews[i]; + var tr = document.createElement("tr"); + var td = document.createElement("td"); + var a = document.createElement("a"); + a[textContentKey] = part["status"]; + a.href = "?_src_=holder;admin_token=" + href_token + ";interview=" + part["ref"] + ";statpanel_item_click=left"; + td.appendChild(a); + tr.appendChild(td); + table.appendChild(tr); + } + document.getElementById("statcontent").appendChild(table); +} + function draw_spells(cat) { statcontentdiv[textContentKey] = ""; var table = document.createElement("table"); @@ -968,7 +1155,7 @@ function draw_spells(cat) { var td2 = document.createElement("td"); if(part[3]) { var a = document.createElement("a"); - a.href = "?src=" + part[3] + ";statpanel_item_click=1"; + a.href = "?src=" + part[3] + ";statpanel_item_click=left"; a[textContentKey] = part[2]; td2.appendChild(a); } else { @@ -981,16 +1168,34 @@ function draw_spells(cat) { document.getElementById("statcontent").appendChild(table); } +function make_verb_onclick(command) { + return function() { + run_after_focus(function() { + send_byond_command(command); + }); + }; +} + function draw_verbs(cat){ statcontentdiv[textContentKey] = ""; var table = document.createElement("div"); var additions = {}; // additional sub-categories to be rendered table.className = "grid-container"; sortVerbs(); + if (split_admin_tabs && cat.lastIndexOf(".") != -1) { + var splitName = cat.split("."); + if (splitName[0] === "Admin") + cat = splitName[1]; + } verbs.reverse(); // sort verbs backwards before we draw for (var i = 0; i < verbs.length; ++i) { var part = verbs[i]; var name = part[0]; + if (split_admin_tabs && name.lastIndexOf(".") != -1) { + var splitName = name.split("."); + if (splitName[0] === "Admin") + name = splitName[1]; + } var command = part[1]; if (command && name.lastIndexOf(cat, 0) != -1 && (name.length == cat.length || name.charAt(cat.length) == ".")) { @@ -1002,9 +1207,13 @@ function draw_verbs(cat){ } var a = document.createElement("a"); - a.href = "byond://winset?command=" + command.replace(/\s/g, "-"); - a[textContentKey] = command; + a.href = "#" + a.onclick = make_verb_onclick(command.replace(/\s/g, "-")); a.className = "grid-item"; + var t = document.createElement("span"); + t[textContentKey] = command; + t.className = "grid-item-text"; + a.appendChild(t); (subCat ? additions[subCat] : table).appendChild(a); } } @@ -1029,7 +1238,7 @@ function set_theme(which) { if (which == "light") { document.body.className = ""; set_style_sheet("browserOutput_white"); - } else if (which == "dark" || which == "default") { + } else if (which == "dark") { document.body.className = "dark"; set_style_sheet("browserOutput"); } @@ -1040,7 +1249,7 @@ function set_style_sheet(sheet) { var currentSheet = document.getElementById("goonStyle"); currentSheet.parentElement.removeChild(currentSheet); } - var head = document.getElementsByTagName('head')[0]; + var head = document.getElementsByTagName('head')[0]; var sheetElement = document.createElement("link"); sheetElement.id = "goonStyle"; sheetElement.rel = "stylesheet"; @@ -1050,9 +1259,14 @@ function set_style_sheet(sheet) { head.appendChild(sheetElement); } -document[addEventListenerKey]("click", function(e) { - window.location.href = "byond://winset?map.focus=true"; -}); +function restoreFocus() { + run_after_focus(function() { + window.location.href = "byond://winset?map.focus=true"; + }); +} + +document[addEventListenerKey]("mouseup", restoreFocus); +document[addEventListenerKey]("keyup", restoreFocus); if(!current_tab) { addPermanentTab("Status"); @@ -1061,7 +1275,7 @@ if(!current_tab) { window.onload = function() { NotifyByondOnload(); - }; +}; function NotifyByondOnload() { window.location.href = "byond://winset?command=Panel-Ready"; diff --git a/icons/mob/actions/actions_snake.dmi b/icons/mob/actions/actions_snake.dmi new file mode 100644 index 0000000000..6856171b0d Binary files /dev/null and b/icons/mob/actions/actions_snake.dmi differ diff --git a/icons/obj/pda.dmi b/icons/obj/pda.dmi index 8992f4a4a1..f968d15860 100644 Binary files a/icons/obj/pda.dmi and b/icons/obj/pda.dmi differ diff --git a/interface/skin.dmf b/interface/skin.dmf index ccfcd76571..82a35160e6 100644 --- a/interface/skin.dmf +++ b/interface/skin.dmf @@ -2,21 +2,21 @@ macro "default" menu "menu" - elem + elem name = "&File" command = "" saved-params = "is-checked" - elem + elem name = "&Quick screenshot\tF2" command = ".screenshot auto" category = "&File" saved-params = "is-checked" - elem + elem name = "&Save screenshot as...\tShift+F2" command = ".screenshot" category = "&File" saved-params = "is-checked" - elem + elem name = "" command = "" category = "&File" @@ -26,21 +26,21 @@ menu "menu" command = ".reconnect" category = "&File" saved-params = "is-checked" - elem + elem name = "&Quit\tAlt-F4" command = ".quit" category = "&File" saved-params = "is-checked" - elem + elem name = "&Help" command = "" saved-params = "is-checked" - elem + elem name = "&Admin Help\tF1" command = "adminhelp" category = "&Help" saved-params = "is-checked" - elem + elem name = "&Hotkeys" command = "hotkeys-help" category = "&Help" @@ -56,6 +56,7 @@ window "mainwindow" anchor2 = none is-default = true saved-params = "pos;size;is-minimized;is-maximized" + statusbar = false icon = 'icons\\ss13_64.png' macro = "default" menu = "menu" @@ -95,6 +96,7 @@ window "mapwindow" anchor2 = none saved-params = "pos;size;is-minimized;is-maximized" is-pane = true + on-status = ".winset \"status_bar.text=[[*]]\" " elem "map" type = MAP pos = 0,0 @@ -107,6 +109,16 @@ window "mapwindow" is-default = true saved-params = "zoom;letterbox;zoom-mode" style = ".center { text-align: center; } .maptext { font-family: 'Small Fonts'; font-size: 7px; -dm-text-outline: 1px black; color: white; line-height: 1.1; } .command_headset { font-weight: bold;\tfont-size: 8px; } .small { font-size: 6px; } .big { font-size: 8px; } .reallybig { font-size: 8px; } .extremelybig { font-size: 8px; } .greentext { color: #00FF00; font-size: 7px; } .redtext { color: #FF0000; font-size: 7px; } .clown { color: #FF69Bf; font-size: 7px; font-weight: bold; } .his_grace { color: #15D512; } .hypnophrase { color: #0d0d0d; font-weight: bold; } .yell { font-weight: bold; } .italics { font-size: 6px; }" + elem "status_bar" + type = LABEL + pos = 0,1008 + size = 280x16 + anchor1 = 0,100 + text = "" + align = left + background-color = #222222 + text-color = #ffffff + border = line window "infowindow" elem "infowindow" diff --git a/modular_citadel/code/datums/components/souldeath.dm b/modular_citadel/code/datums/components/souldeath.dm index ab45210a46..01e6acb795 100644 --- a/modular_citadel/code/datums/components/souldeath.dm +++ b/modular_citadel/code/datums/components/souldeath.dm @@ -32,4 +32,4 @@ playsound(wearer, 'sound/misc/souldeath.ogg', 100, FALSE) /datum/component/souldeath/neck - equip_slot = SLOT_NECK + equip_slot = ITEM_SLOT_NECK diff --git a/modular_citadel/code/modules/client/loadout/__donator.dm b/modular_citadel/code/modules/client/loadout/__donator.dm index f2c7b398cf..fe53574470 100644 --- a/modular_citadel/code/modules/client/loadout/__donator.dm +++ b/modular_citadel/code/modules/client/loadout/__donator.dm @@ -2,289 +2,289 @@ /datum/gear/donator name = "IF YOU SEE THIS, PING A CODER RIGHT NOW!" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/bikehorn/golden category = LOADOUT_CATEGORY_DONATOR ckeywhitelist = list("This entry should never appear with this variable set.") //If it does, then that means somebody fucked up the whitelist system pretty hard /datum/gear/donator/pet name = "Pet Beacon" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/choice_beacon/pet ckeywhitelist = list() donator_group_id = DONATOR_GROUP_TIER_1 // can be accessed by all donators /datum/gear/donator/carpet name = "Carpet Beacon" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/choice_beacon/box/carpet ckeywhitelist = list() donator_group_id = DONATOR_GROUP_TIER_1 /datum/gear/donator/chameleon_bedsheet name = "Chameleon Bedsheet" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/bedsheet/chameleon ckeywhitelist = list() donator_group_id = DONATOR_GROUP_TIER_1 /datum/gear/donator/donortestingbikehorn name = "Donor item testing bikehorn" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/bikehorn geargroupID = list("DONORTEST") //This is a list mainly for the sake of testing, but geargroupID works just fine with ordinary strings /datum/gear/donator/kevhorn name = "Airhorn" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/bikehorn/airhorn ckeywhitelist = list("kevinz000") /datum/gear/donator/kiaracloak name = "Kiara's cloak" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/cloak/inferno ckeywhitelist = list("inferno707") /datum/gear/donator/kiaracollar name = "Kiara's collar" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/petcollar/inferno ckeywhitelist = list("inferno707") /datum/gear/donator/kiaramedal name = "Insignia of Steele" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/accessory/medal/steele ckeywhitelist = list("inferno707") /datum/gear/donator/hheart name = "The Hollow Heart" - slot = SLOT_WEAR_MASK + slot = ITEM_SLOT_MASK path = /obj/item/clothing/mask/hheart ckeywhitelist = list("inferno707") /datum/gear/donator/engravedzippo name = "Engraved zippo" - slot = SLOT_HANDS + slot = ITEM_SLOT_HANDS path = /obj/item/lighter/gold ckeywhitelist = list("dirtyoldharry") /datum/gear/donator/geisha name = "Geisha suit" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/costume/geisha ckeywhitelist = list("atiefling") /datum/gear/donator/specialscarf name = "Special scarf" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/scarf/zomb ckeywhitelist = list("zombierobin") /datum/gear/donator/redmadcoat name = "The Mad's labcoat" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/toggle/labcoat/mad/red ckeywhitelist = list("zombierobin") /datum/gear/donator/santahat name = "Santa hat" - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD path = /obj/item/clothing/head/santa/fluff ckeywhitelist = list("illotafv") /datum/gear/donator/reindeerhat name = "Reindeer hat" - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD path = /obj/item/clothing/head/hardhat/reindeer/fluff ckeywhitelist = list("illotafv") /datum/gear/donator/treeplushie name = "Christmas tree plushie" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/plush/tree ckeywhitelist = list("illotafv") /datum/gear/donator/santaoutfit name = "Santa costume" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/space/santa/fluff ckeywhitelist = list("illotafv") /datum/gear/donator/treecloak name = "Christmas tree cloak" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/cloak/festive ckeywhitelist = list("illotafv") /datum/gear/donator/carrotplush name = "Carrot plushie" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/plush/carrot ckeywhitelist = list("improvedname") /datum/gear/donator/carrotcloak name = "Carrot cloak" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/cloak/carrot ckeywhitelist = list("improvedname") /datum/gear/donator/albortorosamask name = "Alborto Rosa mask" - slot = SLOT_WEAR_MASK + slot = ITEM_SLOT_MASK path = /obj/item/clothing/mask/luchador/zigfie ckeywhitelist = list("zigfie") /datum/gear/donator/mankini name = "Mankini" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/misc/stripper/mankini ckeywhitelist = list("zigfie") /datum/gear/donator/pinkshoes name = "Pink shoes" - slot = SLOT_SHOES + slot = ITEM_SLOT_FEET path = /obj/item/clothing/shoes/sneakers/pink ckeywhitelist = list("zigfie") /datum/gear/donator/reecesgreatcoat name = "Reece's Great Coat" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/trenchcoat/green ckeywhitelist = list("geemiesif") /datum/gear/donator/russianflask name = "Russian flask" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/reagent_containers/food/drinks/flask/russian cost = 2 ckeywhitelist = list("slomka") /datum/gear/donator/stalkermask name = "S.T.A.L.K.E.R. mask" - slot = SLOT_WEAR_MASK + slot = ITEM_SLOT_MASK path = /obj/item/clothing/mask/gas/stalker ckeywhitelist = list("slomka") /datum/gear/donator/stripedcollar name = "Striped collar" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/petcollar/stripe ckeywhitelist = list("jademanique") /datum/gear/donator/performersoutfit name = "Bluish performer's outfit" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/costume/singer/yellow/custom ckeywhitelist = list("killer402402") /datum/gear/donator/vermillion name = "Vermillion clothing" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/suit/vermillion ckeywhitelist = list("fractious") /datum/gear/donator/AM4B name = "Foam Force AM4-B" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/gun/ballistic/automatic/AM4B ckeywhitelist = list("zeronetalpha") /datum/gear/donator/carrotsatchel name = "Carrot Satchel" - slot = SLOT_HANDS + slot = ITEM_SLOT_HANDS path = /obj/item/storage/backpack/satchel/carrot ckeywhitelist = list("improvedname") /datum/gear/donator/naomisweater name = "worn black sweater" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/sweater/black/naomi ckeywhitelist = list("technicalmagi") /datum/gear/donator/naomicollar name = "worn pet collar" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/petcollar/naomi ckeywhitelist = list("technicalmagi") /datum/gear/donator/gladiator name = "Gladiator Armor" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/under/costume/gladiator ckeywhitelist = list("aroche") /datum/gear/donator/bloodredtie name = "Blood Red Tie" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/tie/bloodred ckeywhitelist = list("kyutness") /datum/gear/donator/puffydress name = "Puffy Dress" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/puffydress ckeywhitelist = list("stallingratt") /datum/gear/donator/labredblack name = "Black and Red Coat" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/toggle/labcoat/labredblack ckeywhitelist = list("blakeryan", "durandalphor") /datum/gear/donator/torisword name = "Rainbow Zweihander" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/dualsaber/hypereutactic/toy/rainbow ckeywhitelist = list("annoymous35") /datum/gear/donator/darksabre name = "Dark Sabre" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/darksabre ckeywhitelist = list("inferno707") /datum/gear/donator/darksabresheath name = "Dark Sabre Sheath" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/storage/belt/sabre/darksabre ckeywhitelist = list("inferno707") /datum/gear/donator/toriball name = "Rainbow Tennis Ball" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/fluff/tennis_poly/tri/squeak/rainbow ckeywhitelist = list("annoymous35") /datum/gear/donator/izzyball name = "Katlin's Ball" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/fluff/tennis_poly/tri/squeak/izzy ckeywhitelist = list("izzyinbox") /datum/gear/donator/cloak name = "Green Cloak" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/cloak/green ckeywhitelist = list("killer402402") /datum/gear/donator/steelflask name = "Steel Flask" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/reagent_containers/food/drinks/flask/steel cost = 2 ckeywhitelist = list("nik707") /datum/gear/donator/paperhat name = "Paper Hat" - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD path = /obj/item/clothing/head/paperhat ckeywhitelist = list("kered2") /datum/gear/donator/cloakce name = "Polychromic CE Cloak" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/neck/cloak/polychromic/polyce ckeywhitelist = list("worksbythesea", "blakeryan") loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC @@ -292,290 +292,290 @@ /datum/gear/donator/ssk name = "Stun Sword Kit" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/ssword_kit ckeywhitelist = list("phillip458") /datum/gear/donator/techcoat name = "Techomancers Labcoat" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/suit/toggle/labcoat/mad/techcoat ckeywhitelist = list("wilchen") /datum/gear/donator/leechjar name = "Jar of Leeches" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/custom/leechjar ckeywhitelist = list("sgtryder") /datum/gear/donator/darkarmor name = "Dark Armor" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/suit/armor/vest/darkcarapace ckeywhitelist = list("inferno707") /datum/gear/donator/devilwings name = "Strange Wings" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/devilwings ckeywhitelist = list("kitsun") /datum/gear/donator/flagcape name = "US Flag Cape" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/neck/flagcape ckeywhitelist = list("darnchacha") /datum/gear/donator/luckyjack name = "Lucky Jackboots" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/shoes/lucky ckeywhitelist = list("donaldtrumpthecommunist") /datum/gear/donator/raiqbawks name = "Miami Boombox" - slot = SLOT_HANDS + slot = ITEM_SLOT_HANDS cost = 2 path = /obj/item/boombox/raiq ckeywhitelist = list("chefferz") /datum/gear/donator/m41 name = "Toy M41" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/gun/m41 ckeywhitelist = list("thalverscholen") /datum/gear/donator/Divine_robes name = "Divine robes" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/custom/lunasune ckeywhitelist = list("invader4352") /datum/gear/donator/gothcoat name = "Goth Coat" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/gothcoat ckeywhitelist = list("norko") /datum/gear/donator/corgisuit name = "Corgi Suit" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/hooded/ian_costume ckeywhitelist = list("cathodetherobot") /datum/gear/donator/sharkcloth name = "Leon's Skimpy Outfit" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/under/custom/leoskimpy ckeywhitelist = list("spectrosis") /datum/gear/donator/mimemask name = "Mime Mask" - slot = SLOT_WEAR_MASK + slot = ITEM_SLOT_MASK path = /obj/item/clothing/mask/gas/mime ckeywhitelist = list("pireamaineach") /datum/gear/donator/mimeoveralls name = "Mime's Overalls" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/under/custom/mimeoveralls ckeywhitelist = list("pireamaineach") /datum/gear/donator/soulneck name = "Soul Necklace" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/undertale ckeywhitelist = list("twilightic") /datum/gear/donator/frenchberet name = "French Beret" - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD path = /obj/item/clothing/head/frenchberet ckeywhitelist = list("notazoltan") /datum/gear/donator/zuliecloak name = "Project: Zul-E" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/hooded/cloak/zuliecloak ckeywhitelist = list("asky") /datum/gear/donator/blackredgold name = "Black, Red, and Gold Coat" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/blackredgold ckeywhitelist = list("ttbnc") /datum/gear/donator/fritzplush name = "Fritz Plushie" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/plush/mammal/dog/fritz ckeywhitelist = list("analwerewolf") /datum/gear/donator/kimono name = "Kimono" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/kimono ckeywhitelist = list("sfox63") /datum/gear/donator/commjacket name = "Dusty Commisar's Cloak" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/commjacket ckeywhitelist = list("sadisticbatter") /datum/gear/donator/mw2_russian_para name = "Russian Paratrooper Jumper" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/custom/mw2_russian_para ckeywhitelist = list("investigator77") /datum/gear/donator/longblackgloves name = "Luna's Gauntlets" - slot = SLOT_GLOVES + slot = ITEM_SLOT_GLOVES path = /obj/item/clothing/gloves/longblackgloves ckeywhitelist = list("bigmanclancy") /datum/gear/donator/trendy_fit name = "Trendy Fit" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/custom/trendy_fit ckeywhitelist = list("midgetdragon") /datum/gear/donator/singery name = "Yellow Performer Outfit" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/costume/singer/yellow ckeywhitelist = list("maxlynchy") /datum/gear/donator/csheet name = "NT Bedsheet" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/bedsheet/captain ckeywhitelist = list("tikibomb") /datum/gear/donator/borgplush name = "Robot Plush" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/toy/plush/borgplushie ckeywhitelist = list("nicholaiavenicci") /datum/gear/donator/donorberet name = "Atmos Beret" - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD path = /obj/item/clothing/head/blueberet ckeywhitelist = list("foxystalin") /datum/gear/donator/donorgoggles name = "Flight Goggles" - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD path = /obj/item/clothing/head/flight ckeywhitelist = list("maxlynchy") /datum/gear/donator/onionneck name = "Onion Necklace" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/necklace/onion ckeywhitelist = list("cdrcross") /datum/gear/donator/mikubikini name = "starlight singer bikini" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/custom/mikubikini ckeywhitelist = list("grandvegeta") /datum/gear/donator/mikujacket name = "starlight singer jacket" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/mikujacket ckeywhitelist = list("grandvegeta") /datum/gear/donator/mikuhair name = "starlight singer hair" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/head/mikuhair ckeywhitelist = list("grandvegeta") /datum/gear/donator/mikugloves name = "starlight singer gloves" - slot = SLOT_GLOVES + slot = ITEM_SLOT_GLOVES path = /obj/item/clothing/gloves/mikugloves ckeywhitelist = list("grandvegeta") /datum/gear/donator/mikuleggings name = "starlight singer leggings" - slot = SLOT_SHOES + slot = ITEM_SLOT_FEET path = /obj/item/clothing/shoes/sneakers/mikuleggings ckeywhitelist = list("grandvegeta") /datum/gear/donator/cosmos name = "cosmic space bedsheet" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/bedsheet/cosmos ckeywhitelist = list("grunnyyy") /datum/gear/donator/customskirt name = "custom atmos skirt" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/under/custom/customskirt ckeywhitelist = list("thakyz") /datum/gear/donator/hisakaki name = "halo" - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD path = /obj/item/clothing/head/halo ckeywhitelist = list("hisakaki") /datum/gear/donator/vest name = "vest and shirt" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/custom/vest ckeywhitelist = list("maylowfox") /datum/gear/donator/exo name = "exo frame" - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/custom/exo ckeywhitelist = list("jesterz7") /datum/gear/donator/choker name = "NT Choker" - slot = SLOT_NECK + slot = ITEM_SLOT_NECK path = /obj/item/clothing/neck/petcollar/donorchoker ckeywhitelist = list("trigillass") /datum/gear/donator/strangemask name = "Strange Metal Mask" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/mask/breath/mmask ckeywhitelist = list("sneka") /datum/gear/donator/smaiden name = "shrine maiden outfit" - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/smaiden ckeywhitelist = list("ultimarifox") /datum/gear/donator/mgasmask name = "Military Gas Mask" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/clothing/mask/gas/military ckeywhitelist = list("unclebourbon") /datum/gear/donator/clownmask name = "Clown Mask" - path = SLOT_WEAR_MASK + path = ITEM_SLOT_MASK path = /obj/item/clothing/mask/gas/clown_hat ckeywhitelist = list("djkouta") /datum/gear/donator/spacehoodie name = "Space Hoodie" - path = SLOT_WEAR_SUIT + path = ITEM_SLOT_OCLOTHING path = /obj/item/clothing/suit/spacehoodie ckeywhitelist = list("bidlink2") /datum/gear/donator/pokerchips name = "pokerchip set" - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK path = /obj/item/storage/box/pockerchips ckeywhitelist = list("greed2323") diff --git a/modular_citadel/code/modules/client/loadout/backpack.dm b/modular_citadel/code/modules/client/loadout/backpack.dm index 466ee50474..3824993009 100644 --- a/modular_citadel/code/modules/client/loadout/backpack.dm +++ b/modular_citadel/code/modules/client/loadout/backpack.dm @@ -1,7 +1,7 @@ /datum/gear/backpack category = LOADOUT_CATEGORY_BACKPACK subcategory = LOADOUT_SUBCATEGORY_BACKPACK_GENERAL - slot = SLOT_IN_BACKPACK + slot = ITEM_SLOT_BACKPACK /datum/gear/backpack/plushbox name = "Plushie Choice Box" diff --git a/modular_citadel/code/modules/client/loadout/glasses.dm b/modular_citadel/code/modules/client/loadout/glasses.dm index f3b07657f4..fe44abc3de 100644 --- a/modular_citadel/code/modules/client/loadout/glasses.dm +++ b/modular_citadel/code/modules/client/loadout/glasses.dm @@ -1,6 +1,6 @@ /datum/gear/glasses category = LOADOUT_CATEGORY_GLASSES - slot = SLOT_GLASSES + slot = ITEM_SLOT_EYES /datum/gear/glasses/blindfold name = "Blindfold" diff --git a/modular_citadel/code/modules/client/loadout/gloves.dm b/modular_citadel/code/modules/client/loadout/gloves.dm index 09694ddec7..2a80d43bb1 100644 --- a/modular_citadel/code/modules/client/loadout/gloves.dm +++ b/modular_citadel/code/modules/client/loadout/gloves.dm @@ -1,6 +1,6 @@ /datum/gear/gloves category = LOADOUT_CATEGORY_GLOVES - slot = SLOT_GLOVES + slot = ITEM_SLOT_GLOVES /datum/gear/gloves/fingerless name = "Fingerless Gloves" @@ -9,7 +9,7 @@ /datum/gear/gloves/evening name = "Evening gloves" path = /obj/item/clothing/gloves/evening - + /datum/gear/gloves/midnight name = "Midnight gloves" path = /obj/item/clothing/gloves/evening/black diff --git a/modular_citadel/code/modules/client/loadout/hands.dm b/modular_citadel/code/modules/client/loadout/hands.dm index eb496ed78c..5dbe8b33dd 100644 --- a/modular_citadel/code/modules/client/loadout/hands.dm +++ b/modular_citadel/code/modules/client/loadout/hands.dm @@ -1,6 +1,6 @@ /datum/gear/hands category = LOADOUT_CATEGORY_HANDS - slot = SLOT_HANDS + slot = ITEM_SLOT_HANDS /datum/gear/hands/cane name = "Cane" diff --git a/modular_citadel/code/modules/client/loadout/head.dm b/modular_citadel/code/modules/client/loadout/head.dm index 6d6c803ef1..f2a7ead5be 100644 --- a/modular_citadel/code/modules/client/loadout/head.dm +++ b/modular_citadel/code/modules/client/loadout/head.dm @@ -1,7 +1,7 @@ /datum/gear/head category = LOADOUT_CATEGORY_HEAD subcategory = LOADOUT_SUBCATEGORY_HEAD_GENERAL - slot = SLOT_HEAD + slot = ITEM_SLOT_HEAD /datum/gear/head/baseball name = "Ballcap" @@ -156,12 +156,12 @@ /*Commenting out Until next Christmas or made automatic /datum/gear/santahatr name = "Red Santa Hat" - category = SLOT_HEAD + category = ITEM_SLOT_HEAD path = /obj/item/clothing/head/christmashat /datum/gear/santahatg name = "Green Santa Hat" - category = SLOT_HEAD + category = ITEM_SLOT_HEAD path = /obj/item/clothing/head/christmashatg */ diff --git a/modular_citadel/code/modules/client/loadout/mask.dm b/modular_citadel/code/modules/client/loadout/mask.dm index 52e79884c2..16b47e60e7 100644 --- a/modular_citadel/code/modules/client/loadout/mask.dm +++ b/modular_citadel/code/modules/client/loadout/mask.dm @@ -1,6 +1,6 @@ /datum/gear/mask category = LOADOUT_CATEGORY_MASK - slot = SLOT_WEAR_MASK + slot = ITEM_SLOT_MASK /datum/gear/mask/balaclava name = "Balaclava" diff --git a/modular_citadel/code/modules/client/loadout/neck.dm b/modular_citadel/code/modules/client/loadout/neck.dm index 128285628a..b07ddf98db 100644 --- a/modular_citadel/code/modules/client/loadout/neck.dm +++ b/modular_citadel/code/modules/client/loadout/neck.dm @@ -1,7 +1,7 @@ /datum/gear/neck category = LOADOUT_CATEGORY_NECK subcategory = LOADOUT_SUBCATEGORY_NECK_GENERAL - slot = SLOT_NECK + slot = ITEM_SLOT_NECK /datum/gear/neck/bluetie name = "Blue tie" diff --git a/modular_citadel/code/modules/client/loadout/shoes.dm b/modular_citadel/code/modules/client/loadout/shoes.dm index e2b3916ae0..394c957f36 100644 --- a/modular_citadel/code/modules/client/loadout/shoes.dm +++ b/modular_citadel/code/modules/client/loadout/shoes.dm @@ -1,6 +1,6 @@ /datum/gear/shoes category = LOADOUT_CATEGORY_SHOES - slot = SLOT_SHOES + slot = ITEM_SLOT_FEET /datum/gear/shoes/laceup name = "Laceup shoes" diff --git a/modular_citadel/code/modules/client/loadout/suit.dm b/modular_citadel/code/modules/client/loadout/suit.dm index 066bcf14c7..1d4a29ef3e 100644 --- a/modular_citadel/code/modules/client/loadout/suit.dm +++ b/modular_citadel/code/modules/client/loadout/suit.dm @@ -1,7 +1,7 @@ /datum/gear/suit category = LOADOUT_CATEGORY_SUIT subcategory = LOADOUT_SUBCATEGORY_SUIT_GENERAL - slot = SLOT_WEAR_SUIT + slot = ITEM_SLOT_OCLOTHING /datum/gear/suit/poncho name = "Poncho" diff --git a/modular_citadel/code/modules/client/loadout/uniform.dm b/modular_citadel/code/modules/client/loadout/uniform.dm index c16aa5ea55..2b2f3b53e4 100644 --- a/modular_citadel/code/modules/client/loadout/uniform.dm +++ b/modular_citadel/code/modules/client/loadout/uniform.dm @@ -1,7 +1,7 @@ /datum/gear/uniform category = LOADOUT_CATEGORY_UNIFORM subcategory = LOADOUT_SUBCATEGORY_UNIFORM_GENERAL - slot = SLOT_W_UNIFORM + slot = ITEM_SLOT_ICLOTHING /datum/gear/uniform/suit name = "Black suit" @@ -636,27 +636,27 @@ /*Commenting out Until next Christmas or made automatic /datum/gear/uniform/christmasmaler name = "Red Masculine Christmas Suit" - category = SLOT_W_UNIFORM + category = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/costume/christmas /datum/gear/uniform/christmasmaleg name = "Green Masculine Christmas Suit" - category = SLOT_W_UNIFORM + category = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/costume/christmas/green /datum/gear/uniform/christmasfemaler name = "Red Feminine Christmas Suit" - category = SLOT_W_UNIFORM + category = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/costume/christmas/croptop /datum/gear/uniform/christmasfemaleg name = "Green Feminine Christmas Suit" - category = SLOT_W_UNIFORM + category = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/costume/christmas/croptop/green /datum/gear/uniform/pinkstripper name = "Pink stripper outfit" - category = SLOT_W_UNIFORM + category = ITEM_SLOT_ICLOTHING path = /obj/item/clothing/under/misc/stripper cost = 3 */ diff --git a/modular_citadel/code/modules/client/loadout/unlockable.dm b/modular_citadel/code/modules/client/loadout/unlockable.dm index 67e0c06d8c..9db05a66e9 100644 --- a/modular_citadel/code/modules/client/loadout/unlockable.dm +++ b/modular_citadel/code/modules/client/loadout/unlockable.dm @@ -1,6 +1,6 @@ /datum/gear/unlockable category = LOADOUT_CATEGORY_UNLOCKABLE - slot = SLOT_NECK + slot = ITEM_SLOT_NECK var/progress_required //what does our progress need to be to unlock it var/progress_key //what is the key used to retrieve existing progress for this unlockable diff --git a/modular_citadel/code/modules/custom_loadout/custom_items.dm b/modular_citadel/code/modules/custom_loadout/custom_items.dm index cb1b9728af..b8ee221e73 100644 --- a/modular_citadel/code/modules/custom_loadout/custom_items.dm +++ b/modular_citadel/code/modules/custom_loadout/custom_items.dm @@ -77,7 +77,7 @@ item_state = "gold_zippo" w_class = WEIGHT_CLASS_TINY flags_1 = CONDUCT_1 - slot_flags = SLOT_BELT + slot_flags = ITEM_SLOT_BELT heat = 1500 resistance_flags = FIRE_PROOF light_color = LIGHT_COLOR_FIRE @@ -404,7 +404,7 @@ mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi' hoodtype = /obj/item/clothing/head/hooded/cloakhood/zuliecloak body_parts_covered = CHEST|GROIN|ARMS - slot_flags = SLOT_WEAR_SUIT | ITEM_SLOT_NECK //it's a cloak. it's cosmetic. so why the hell not? what could possibly go wrong? + slot_flags = ITEM_SLOT_OCLOTHING | ITEM_SLOT_NECK //it's a cloak. it's cosmetic. so why the hell not? what could possibly go wrong? mutantrace_variation = NONE /obj/item/clothing/head/hooded/cloakhood/zuliecloak diff --git a/modular_citadel/code/modules/custom_loadout/load_to_mob.dm b/modular_citadel/code/modules/custom_loadout/load_to_mob.dm index 79f17afc74..1d28c7320c 100644 --- a/modular_citadel/code/modules/custom_loadout/load_to_mob.dm +++ b/modular_citadel/code/modules/custom_loadout/load_to_mob.dm @@ -52,7 +52,7 @@ loaded_atom.forceMove(T) continue var/obj/item/loaded = loaded_atom - var/obj/item/storage/S = H.get_item_by_slot(SLOT_BACK) + var/obj/item/storage/S = H.get_item_by_slot(ITEM_SLOT_BACK) if(istype(S)) SEND_SIGNAL(S, COMSIG_TRY_STORAGE_INSERT,loaded, TRUE, H) //Force it into their backpack continue diff --git a/modular_citadel/code/modules/eventmaps/Spookystation/JTGSZwork.dm b/modular_citadel/code/modules/eventmaps/Spookystation/JTGSZwork.dm index dbf5ad0648..85bbf109bf 100644 --- a/modular_citadel/code/modules/eventmaps/Spookystation/JTGSZwork.dm +++ b/modular_citadel/code/modules/eventmaps/Spookystation/JTGSZwork.dm @@ -1024,7 +1024,7 @@ GLOBAL_LIST_EMPTY(rain_sounds) lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' righthand_file = 'icons/mob/inhands/items_righthand.dmi' icon_state = "umbrella_closed" - slot_flags = SLOT_BELT + slot_flags = ITEM_SLOT_BELT force = 5 throwforce = 5 w_class = WEIGHT_CLASS_SMALL diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm index 537eb76a66..bc598e81e3 100644 --- a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm +++ b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm @@ -48,7 +48,7 @@ var/obj/item/W = M.head M.dropItemToGround(W, TRUE) var/hat = new /obj/item/clothing/head/hattip() - M.equip_to_slot(hat, SLOT_HEAD, 1, 1) + M.equip_to_slot(hat, ITEM_SLOT_HEAD, 1, 1) /datum/reagent/fermi/hatmium/on_mob_life(mob/living/carbon/human/M) diff --git a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm index a78092988e..ce27433c07 100644 --- a/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm +++ b/modular_citadel/code/modules/reagents/chemistry/recipes/fermi.dm @@ -548,6 +548,8 @@ FermiExplode = FALSE PurityMin = 0.2 + is_secret = TRUE + /datum/chemical_reaction/fermi/secretcatchem/New() //rand doesn't seem to work with n^-e OptimalTempMin += rand(-100, 100) diff --git a/modular_citadel/code/modules/reagents/objects/clothes.dm b/modular_citadel/code/modules/reagents/objects/clothes.dm index ab4d49c56f..b6391ba82d 100644 --- a/modular_citadel/code/modules/reagents/objects/clothes.dm +++ b/modular_citadel/code/modules/reagents/objects/clothes.dm @@ -37,7 +37,7 @@ /obj/item/clothing/head/hattip/equipped(mob/M, slot) . = ..() - if (slot == SLOT_HEAD) + if (slot == ITEM_SLOT_HEAD) RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/modular_citadel/icons/mob/mam_taur.dmi b/modular_citadel/icons/mob/mam_taur.dmi index cf332019af..cc4bc0446c 100644 Binary files a/modular_citadel/icons/mob/mam_taur.dmi and b/modular_citadel/icons/mob/mam_taur.dmi differ diff --git a/tgstation.dme b/tgstation.dme index cd5a1eb823..de8e9ccddc 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -171,7 +171,6 @@ #include "code\__HELPERS\_string_lists.dm" #include "code\__HELPERS\angles.dm" #include "code\__HELPERS\areas.dm" -#include "code\__HELPERS\AStar.dm" #include "code\__HELPERS\chat.dm" #include "code\__HELPERS\cmp.dm" #include "code\__HELPERS\config.dm" @@ -193,6 +192,7 @@ #include "code\__HELPERS\mobs.dm" #include "code\__HELPERS\mouse_control.dm" #include "code\__HELPERS\names.dm" +#include "code\__HELPERS\path.dm" #include "code\__HELPERS\priority_announce.dm" #include "code\__HELPERS\pronouns.dm" #include "code\__HELPERS\qdel.dm" @@ -288,6 +288,7 @@ #include "code\_onclick\hud\revenanthud.dm" #include "code\_onclick\hud\robot.dm" #include "code\_onclick\hud\screen_objects.dm" +#include "code\_onclick\hud\screentip.dm" #include "code\_onclick\hud\simple_animal.dm" #include "code\_onclick\hud\swarmer.dm" #include "code\_onclick\hud\screen_objects\clickdelay.dm" @@ -1472,6 +1473,7 @@ #include "code\modules\admin\outfits.dm" #include "code\modules\admin\permissionedit.dm" #include "code\modules\admin\player_panel.dm" +#include "code\modules\admin\playtimes.dm" #include "code\modules\admin\sound_emitter.dm" #include "code\modules\admin\sql_message_system.dm" #include "code\modules\admin\stickyban.dm" @@ -2263,6 +2265,7 @@ #include "code\modules\food_and_drinks\recipes\tablecraft\recipes_spaghetti.dm" #include "code\modules\games\cas.dm" #include "code\modules\games\unum.dm" +#include "code\modules\holiday\dynamic.dm" #include "code\modules\holiday\easter.dm" #include "code\modules\holiday\holidays.dm" #include "code\modules\holiday\halloween\bartholomew.dm" @@ -2699,6 +2702,7 @@ #include "code\modules\mob\living\carbon\human\typing_indicator.dm" #include "code\modules\mob\living\carbon\human\update_icons.dm" #include "code\modules\mob\living\carbon\human\innate_abilities\blobform.dm" +#include "code\modules\mob\living\carbon\human\innate_abilities\coiling.dm" #include "code\modules\mob\living\carbon\human\innate_abilities\customization.dm" #include "code\modules\mob\living\carbon\human\innate_abilities\limb_regeneration.dm" #include "code\modules\mob\living\carbon\human\species_types\abductor.dm" diff --git a/tgui/packages/tgui/interfaces/Limbgrower.js b/tgui/packages/tgui/interfaces/Limbgrower.js index b91c7e4b45..e7e04d4f51 100644 --- a/tgui/packages/tgui/interfaces/Limbgrower.js +++ b/tgui/packages/tgui/interfaces/Limbgrower.js @@ -1,5 +1,5 @@ import { useBackend, useSharedState } from '../backend'; -import { Box, Button, Dimmer, Icon, LabeledList, Section, Tabs } from '../components'; +import { Box, Button, Dimmer, Icon, LabeledList, Section, Tabs, ProgressBar } from '../components'; import { Window } from '../layouts'; export const Limbgrower = (props, context) => { @@ -22,7 +22,7 @@ export const Limbgrower = (props, context) => { + height={760}> {!!busy && ( @@ -42,12 +42,19 @@ export const Limbgrower = (props, context) => {
    Containing data for {disk['name']},
    Attempting to create genitalia will use the disk's data. + Any Synthetic Frameworks created will + overwrite the race category selected.
    ) : disk['disk'] ? "No data." : "No disk."}
    - {total_reagents} / {max_reagents} reagent capacity used. + {/* Total_reagents could be null or undefined, so let's be safe */ + `Total Reagents/Maximum Reagents: + ${total_reagents ? total_reagents : 0}/${max_reagents}` + } + {reagents.map(reagent => ( @@ -56,13 +63,15 @@ export const Limbgrower = (props, context) => { label={reagent.reagent_name} buttons={( act('empty_reagent', { - reagent_type: reagent.reagent_type, - })} /> + onClick={() => { + act('empty_reagent', { reagent_type: reagent.reagent_type }); + + }} /> )}> {reagent.reagent_amount}u diff --git a/tgui/packages/tgui/interfaces/PlayerPlaytimes.js b/tgui/packages/tgui/interfaces/PlayerPlaytimes.js new file mode 100644 index 0000000000..0996b0ba04 --- /dev/null +++ b/tgui/packages/tgui/interfaces/PlayerPlaytimes.js @@ -0,0 +1,119 @@ +import { useBackend } from '../backend'; +import { Button, Icon, Section, Table, Tooltip } from '../components'; +import { Window } from '../layouts'; + +export const PlayerPlaytimes = (props, context) => { + const { act, data } = useBackend(context); + const { + clients, + } = data; + return ( + + +
    + + + +
    + +
    +
    + +
    + Ckey +
    +
    + +
    + Real Name +
    +
    + +
    + Actions +
    +
    +
    + {clients.map(client => ( + + +
    +
    +
    + +
    + {!!client.new_account + && ( + + + + )} {client.ckey} +
    +
    + +
    + {!client.ingame ? (At lobby) + : (!!client.observer + && ( + + + ))} {client.name} +
    +
    + +
    +
    +
    +
    +
    + ))} +
    +
    +
    +
    + ); +}; diff --git a/tgui/packages/tgui/interfaces/common/AtmosControls.js b/tgui/packages/tgui/interfaces/common/AtmosControls.js index 76348a956f..fcca00188a 100644 --- a/tgui/packages/tgui/interfaces/common/AtmosControls.js +++ b/tgui/packages/tgui/interfaces/common/AtmosControls.js @@ -37,7 +37,7 @@ export const Vent = (props, context) => {