diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index ac3db534e7ed..7dd9172b4f8a 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -20,6 +20,7 @@ /html/templates/ @yogstation13/head-coders /sound/ @yogstation13/head-coders /yogstation/sound/ @yogstation13/head-coders +/yogstation/code/game/world.dm @yogstation13/head-coders #Teams diff --git a/_maps/RandomRuins/StationRuins/maint/5x3/5x3_smallfish.dmm b/_maps/RandomRuins/StationRuins/maint/5x3/5x3_smallfish.dmm new file mode 100644 index 000000000000..696f6233e14b --- /dev/null +++ b/_maps/RandomRuins/StationRuins/maint/5x3/5x3_smallfish.dmm @@ -0,0 +1,124 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"b" = ( +/turf/open/floor/wood, +/area/template_noop) +"d" = ( +/turf/open/water/safe, +/area/template_noop) +"e" = ( +/obj/machinery/vending/fishing, +/turf/open/floor/wood, +/area/template_noop) +"g" = ( +/obj/effect/turf_decal/pool/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/template_noop) +"h" = ( +/obj/effect/turf_decal/pool, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/template_noop) +"k" = ( +/obj/effect/turf_decal/pool/corner{ + dir = 8 + }, +/turf/open/floor/wood, +/area/template_noop) +"l" = ( +/obj/effect/turf_decal/pool{ + dir = 4 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/wood, +/area/template_noop) +"p" = ( +/obj/effect/turf_decal/pool, +/turf/open/floor/wood, +/area/template_noop) +"q" = ( +/obj/effect/turf_decal/pool/corner, +/obj/effect/spawner/lootdrop/trashbin{ + pixel_x = -2; + pixel_y = -7 + }, +/turf/open/floor/wood, +/area/template_noop) +"I" = ( +/obj/effect/turf_decal/pool{ + dir = 1 + }, +/turf/open/floor/wood, +/area/template_noop) +"J" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/vomit/old, +/turf/open/floor/wood, +/area/template_noop) +"N" = ( +/obj/effect/turf_decal/pool{ + dir = 8 + }, +/obj/structure/chair/stool/bamboo, +/obj/item/twohanded/fishingrod{ + pixel_x = -6; + pixel_y = 7 + }, +/obj/item/reagent_containers/food/snacks/fish/goldfish{ + bitecount = 0; + length = 1; + pixel_x = 7; + pixel_y = 9; + weight = 2 + }, +/turf/open/floor/wood, +/area/template_noop) +"R" = ( +/obj/effect/turf_decal/pool{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance{ + pixel_x = -7; + pixel_y = -7 + }, +/turf/open/floor/wood, +/area/template_noop) +"Y" = ( +/obj/effect/turf_decal/pool/corner{ + dir = 4 + }, +/turf/open/floor/wood, +/area/template_noop) + +(1,1,1) = {" +q +l +g +"} +(2,1,1) = {" +h +d +I +"} +(3,1,1) = {" +p +d +R +"} +(4,1,1) = {" +Y +N +k +"} +(5,1,1) = {" +e +J +b +"} diff --git a/_maps/map_files/GaxStation/GaxStation.dmm b/_maps/map_files/GaxStation/GaxStation.dmm index cad1c1025762..01af15bb33a3 100644 --- a/_maps/map_files/GaxStation/GaxStation.dmm +++ b/_maps/map_files/GaxStation/GaxStation.dmm @@ -39,15 +39,6 @@ }, /turf/open/floor/plating, /area/engine/atmos_distro) -"aba" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/hallway/primary/starboard) "abv" = ( /obj/structure/window/reinforced{ dir = 8 @@ -239,16 +230,6 @@ }, /turf/open/space/basic, /area/space/nearstation) -"ael" = ( -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 1 - }, -/obj/structure/sign/departments/minsky/medical/medical2{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/white, -/area/hallway/primary/starboard) "aeL" = ( /obj/effect/turf_decal/trimline/white/filled/line{ dir = 1 @@ -1842,16 +1823,6 @@ }, /turf/open/floor/plating, /area/security/main) -"aVF" = ( -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 4 - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) "aVK" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 4 @@ -2982,14 +2953,6 @@ /obj/machinery/dna_scannernew, /turf/open/floor/plasteel/white, /area/medical/genetics) -"bzL" = ( -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 4 - }, -/obj/effect/turf_decal/trimline/blue/filled/corner, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) "bzM" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/effect/turf_decal/stripes/line{ @@ -3111,6 +3074,25 @@ /obj/machinery/atmospherics/pipe/simple/yellow/visible, /turf/open/floor/plasteel/dark, /area/engine/atmos_distro) +"bEM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 8 + }, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/lobby) "bEN" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 6 @@ -3406,36 +3388,6 @@ }, /turf/open/floor/plasteel/dark, /area/engine/atmos_distro) -"bOL" = ( -/obj/machinery/door/airlock/virology{ - name = "Virology Access"; - req_access_txt = "39" - }, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/green/filled/line, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_target{ - dirx = -2; - diry = -2 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) "bPi" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 @@ -5036,15 +4988,6 @@ }, /turf/open/floor/carpet/purple, /area/crew_quarters/heads/hor) -"cDe" = ( -/obj/effect/turf_decal/trimline/blue/filled/corner, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) "cDo" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -5383,25 +5326,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"cMM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) "cMP" = ( /obj/structure/lattice, /turf/open/space/basic, @@ -5660,6 +5584,25 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) +"cVh" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) "cVy" = ( /obj/structure/flora/ausbushes/brflowers, /obj/structure/window/reinforced{ @@ -5676,15 +5619,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/medical/storage) -"cVH" = ( -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/hallway/primary/starboard) "cWe" = ( /obj/structure/plasticflaps, /obj/machinery/conveyor{ @@ -6250,20 +6184,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) -"doL" = ( -/obj/structure/closet/l3closet/virology, -/obj/item/tank/internals/emergency_oxygen, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 6 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) "dpf" = ( /turf/closed/wall/r_wall, /area/ai_monitored/secondarydatacore) @@ -6339,6 +6259,27 @@ }, /turf/open/floor/plasteel/white, /area/medical/storage) +"dql" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/trimline/green/filled/corner{ + dir = 1 + }, +/obj/machinery/doorButtons/access_button{ + idDoor = "virology_airlock_exterior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Button"; + pixel_x = 22; + pixel_y = 1; + req_access_txt = "39" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) "dqD" = ( /obj/machinery/power/apc{ areastring = "/area/crew_quarters/kitchen"; @@ -6558,6 +6499,35 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, /turf/open/floor/plasteel/white, /area/medical/chemistry) +"dxD" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_target{ + dirx = 2; + diry = 2 + }, +/obj/machinery/door/airlock/virology{ + autoclose = 0; + frequency = 1449; + id_tag = "virology_airlock_exterior"; + name = "Virology Exterior Airlock"; + req_access_txt = "39" + }, +/obj/effect/mapping_helpers/airlock/locked, +/turf/open/floor/plasteel/white, +/area/medical/virology) "dyu" = ( /obj/structure/window/reinforced{ dir = 8 @@ -6866,13 +6836,24 @@ /obj/machinery/vending/wardrobe/sec_wardrobe, /turf/open/floor/plasteel, /area/security/checkpoint/supply) -"dIQ" = ( -/obj/effect/turf_decal/trimline/neutral/filled/line{ - dir = 5 +"dJe" = ( +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 8 }, -/obj/structure/chair, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) "dJf" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 4 @@ -6986,6 +6967,15 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"dNv" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/hallway/primary/central) "dNy" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 5 @@ -7021,6 +7011,25 @@ }, /turf/open/floor/plasteel, /area/storage/primary) +"dNZ" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm2"; + name = "Dorm 2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/dorms) "dOs" = ( /obj/machinery/nanite_chamber, /obj/effect/turf_decal/bot, @@ -7200,28 +7209,6 @@ }, /turf/open/floor/plasteel, /area/engine/atmos_distro) -"dVU" = ( -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/airlock/medical/glass{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/obj/effect/turf_decal/trimline/blue/filled/line, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/lobby) "dVZ" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -7259,6 +7246,13 @@ }, /turf/open/floor/plasteel, /area/engine/foyer) +"dWp" = ( +/obj/effect/turf_decal/trimline/neutral/filled/line{ + dir = 5 + }, +/obj/machinery/computer/arcade/minesweeper, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) "dWF" = ( /obj/effect/landmark/blobstart, /turf/open/floor/plating, @@ -8953,21 +8947,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) -"eOk" = ( -/obj/machinery/button/door{ - id = "Dorm4"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = -25; - specialfunctions = 4 - }, -/obj/structure/bed, -/obj/item/bedsheet/dorms, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/dorms) "eOq" = ( /obj/structure/cable{ icon_state = "1-2" @@ -9343,6 +9322,16 @@ }, /turf/open/floor/plasteel, /area/engine/atmos) +"eYP" = ( +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) "eZx" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 10 @@ -11009,6 +10998,15 @@ }, /turf/open/floor/plasteel, /area/security/processing) +"fOh" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/hallway/primary/central) "fPh" = ( /obj/machinery/light{ dir = 4 @@ -11153,31 +11151,6 @@ }, /turf/open/space/basic, /area/space/nearstation) -"fTX" = ( -/obj/machinery/door/airlock/virology{ - name = "Virology Access"; - req_access_txt = "39" - }, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/firedoor/border_only{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_target{ - dirx = 2; - diry = 2 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) "fTY" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -11324,6 +11297,18 @@ }, /turf/open/floor/plasteel, /area/security/prison) +"fWw" = ( +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/cryopods"; + dir = 8; + name = "Cryogenic Crew Storage APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopods) "fWC" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 9 @@ -11471,6 +11456,15 @@ /obj/structure/kitchenspike, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) +"gav" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/hallway/primary/central) "gaG" = ( /obj/structure/chair/stool/bar, /turf/open/floor/plasteel/cafeteria{ @@ -11825,15 +11819,6 @@ }, /turf/open/floor/plating, /area/chapel/office) -"gln" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/hallway/primary/starboard) "glL" = ( /obj/machinery/portable_atmospherics/canister/water_vapor, /obj/effect/turf_decal/bot, @@ -12272,18 +12257,6 @@ /obj/structure/closet/crate, /turf/open/floor/plasteel, /area/teleporter) -"gxI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/neutral/filled/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) "gxV" = ( /obj/structure/table, /obj/machinery/light/small{ @@ -12687,6 +12660,17 @@ /obj/structure/lattice/catwalk, /turf/closed/wall/r_wall, /area/science/xenobiology) +"gKv" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 26 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/carpet, +/area/crew_quarters/cryopods) "gLy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, @@ -13242,17 +13226,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/storage/eva) -"hcE" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = 26 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/carpet, -/area/crew_quarters/cryopods) "hcR" = ( /obj/structure/cable{ icon_state = "4-8" @@ -13322,6 +13295,35 @@ }, /turf/open/floor/plasteel, /area/engine/atmos_distro) +"hfa" = ( +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/airlock/medical/glass{ + name = "Medbay Treatment"; + req_access_txt = "5" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) "hff" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 9 @@ -13775,24 +13777,6 @@ /obj/structure/grille, /turf/closed/wall/r_wall, /area/engine/atmos_distro) -"hoZ" = ( -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 4 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) "hpd" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ dir = 10 @@ -14723,25 +14707,6 @@ /obj/structure/lattice/catwalk, /turf/open/space/basic, /area/solar/starboard/fore) -"hML" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm2"; - name = "Dorm 2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/dorms) "hMQ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ @@ -14902,18 +14867,6 @@ /obj/item/storage/toolbox/emergency, /turf/open/floor/plasteel/dark, /area/bridge) -"hQa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 5 - }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopods) "hQr" = ( /turf/closed/wall, /area/maintenance/solars/starboard/aft) @@ -15092,6 +15045,15 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"hUa" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/hallway/primary/central) "hUL" = ( /obj/structure/fans/tiny, /obj/machinery/door/poddoor{ @@ -15413,6 +15375,36 @@ }, /turf/open/floor/plasteel/white, /area/medical/chemistry) +"iiR" = ( +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/airlock/medical/glass{ + id_tag = "MedbayFoyer"; + name = "Medbay"; + req_access_txt = "5" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/lobby) "ijb" = ( /obj/structure/window/reinforced, /obj/structure/closet/secure_closet/physician, @@ -15660,25 +15652,6 @@ }, /turf/open/space/basic, /area/solar/starboard/aft) -"isA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) "ith" = ( /obj/machinery/door/poddoor{ id = "QMLoaddoor"; @@ -15945,39 +15918,6 @@ /obj/structure/closet/secure_closet/security/cargo, /turf/open/floor/plasteel, /area/security/checkpoint/supply) -"iyK" = ( -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/airlock/medical/glass{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/lobby) "izb" = ( /obj/structure/sign/warning/securearea{ pixel_x = -32 @@ -16543,6 +16483,36 @@ }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) +"iRb" = ( +/obj/structure/closet/l3closet/virology, +/obj/item/tank/internals/emergency_oxygen, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 6 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/machinery/doorButtons/access_button{ + idDoor = "virology_airlock_exterior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Button"; + pixel_x = -10; + pixel_y = -22; + req_access_txt = "39" + }, +/obj/machinery/doorButtons/access_button{ + idDoor = "virology_airlock_interior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Button"; + pixel_x = 22; + pixel_y = 10; + req_access_txt = "39" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) "iRc" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 1 @@ -17010,12 +16980,6 @@ "jeA" = ( /turf/open/indestructible/sound/pool, /area/crew_quarters/fitness) -"jeW" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/hallway/primary/starboard) "jfa" = ( /obj/structure/closet/secure_closet/personal/cabinet, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ @@ -18119,6 +18083,27 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) +"jNX" = ( +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/airlock/medical/glass{ + id_tag = "MedbayFoyer"; + name = "Medbay"; + req_access_txt = "5" + }, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/lobby) "jOc" = ( /obj/structure/lattice, /obj/structure/lattice, @@ -19368,6 +19353,26 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) +"kxu" = ( +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/airlock/medical/glass{ + name = "Medbay Treatment"; + req_access_txt = "5" + }, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) "kxF" = ( /turf/open/floor/plasteel, /area/hallway/secondary/exit) @@ -19829,10 +19834,6 @@ }, /turf/open/floor/plasteel, /area/teleporter) -"kJx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/turf/open/floor/carpet, -/area/crew_quarters/cryopods) "kJZ" = ( /obj/machinery/light/small, /obj/machinery/portable_atmospherics/pump, @@ -20636,18 +20637,6 @@ }, /turf/open/floor/plasteel, /area/science/robotics/lab) -"lfO" = ( -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/cryopods"; - dir = 8; - name = "Cryogenic Crew Storage APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopods) "lfS" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -22285,38 +22274,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/storage) -"lVq" = ( -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/airlock/medical/glass{ - name = "Medbay Treatment"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) "lVD" = ( /obj/effect/turf_decal/stripes/corner, /obj/machinery/atmospherics/pipe/simple/green/visible{ @@ -23085,6 +23042,16 @@ /obj/item/canvas/twentythreeXtwentythree, /turf/open/floor/wood, /area/library) +"mvi" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/obj/structure/sign/departments/minsky/medical/medical2{ + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plasteel/white, +/area/hallway/primary/central) "mvl" = ( /obj/effect/spawner/structure/solars/solar_96, /obj/structure/cable, @@ -24300,6 +24267,25 @@ /obj/structure/lattice, /turf/open/space/basic, /area/engine/atmos_distro) +"ndT" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) "ndY" = ( /obj/machinery/door/poddoor/shutters/preopen{ id = "cmo"; @@ -24469,13 +24455,6 @@ /obj/structure/reagent_dispensers/beerkeg, /turf/open/floor/wood, /area/crew_quarters/bar) -"nhO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopods) "nig" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 9 @@ -25417,6 +25396,33 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) +"nJy" = ( +/obj/effect/turf_decal/trimline/green/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/green/filled/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/obj/machinery/doorButtons/airlock_controller{ + idExterior = "virology_airlock_exterior"; + idInterior = "virology_airlock_interior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Console"; + pixel_x = -23; + pixel_y = 24; + req_access_txt = "39" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) "nJE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /turf/open/floor/plasteel, @@ -25913,14 +25919,6 @@ /obj/machinery/rnd/production/circuit_imprinter, /turf/open/floor/plasteel, /area/engine/foyer) -"nXZ" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/blue/filled/line, -/obj/effect/landmark/start/yogs/psychiatrist, -/turf/open/floor/plasteel/white, -/area/medical/medbay/lobby) "nYv" = ( /obj/machinery/door/window/eastleft{ dir = 8; @@ -26603,6 +26601,21 @@ }, /turf/closed/wall, /area/engine/atmos_distro) +"opt" = ( +/obj/structure/bed, +/obj/machinery/button/door{ + id = "Dorm1"; + name = "Dorm Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + specialfunctions = 4 + }, +/obj/item/bedsheet/dorms, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/dorms) "opw" = ( /obj/machinery/conveyor_switch/oneway{ dir = 4; @@ -27561,25 +27574,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) -"oVS" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm4"; - name = "Dorm 4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/dorms) "oVU" = ( /obj/machinery/door/poddoor{ id = "QMLoaddoor2"; @@ -30717,6 +30711,21 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) +"qKg" = ( +/obj/machinery/button/door{ + id = "Dorm2"; + name = "Dorm Bolt Control"; + normaldoorcontrol = 1; + pixel_x = -25; + specialfunctions = 4 + }, +/obj/structure/bed, +/obj/item/bedsheet/dorms, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/dorms) "qKl" = ( /obj/effect/spawner/structure/window/reinforced/shutter, /obj/structure/disposalpipe/segment{ @@ -31991,6 +32000,18 @@ }, /turf/open/floor/plating, /area/maintenance/aft) +"rxz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopods) "rxG" = ( /obj/machinery/ai_slipper{ uses = 10 @@ -32113,6 +32134,13 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"rAS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopods) "rBc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -32165,6 +32193,25 @@ }, /turf/open/floor/plasteel, /area/quartermaster/qm) +"rCt" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm1"; + name = "Dorm 1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/dorms) "rCV" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -32435,6 +32482,17 @@ /obj/structure/rack, /turf/open/floor/plating, /area/maintenance/central/secondary) +"rNG" = ( +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) "rOc" = ( /obj/effect/landmark/start/atmospheric_technician, /turf/open/floor/plasteel, @@ -32566,27 +32624,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"rTv" = ( -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/airlock/medical/glass{ - name = "Medbay Treatment"; - req_access_txt = "5" - }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 4 - }, -/obj/effect/turf_decal/trimline/blue/filled/line, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) "rUd" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -33586,25 +33623,6 @@ /obj/effect/landmark/start/janitor, /turf/open/floor/plasteel, /area/janitor) -"swc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 1 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/lobby) "swg" = ( /obj/docking_port/stationary{ dwidth = 1; @@ -33960,6 +33978,40 @@ }, /turf/open/floor/plasteel, /area/engine/atmos_distro) +"sHf" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/green/filled/line, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_target{ + dirx = -2; + diry = -2 + }, +/obj/machinery/door/airlock/virology{ + autoclose = 0; + frequency = 1449; + id_tag = "virology_airlock_interior"; + name = "Virology Interior Airlock"; + req_access_txt = "39" + }, +/obj/effect/mapping_helpers/airlock/locked, +/turf/open/floor/plasteel/white, +/area/medical/virology) "sHi" = ( /obj/structure/cable{ icon_state = "1-2" @@ -36620,6 +36672,16 @@ }, /turf/open/floor/plasteel, /area/science/xenobiology) +"ulG" = ( +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) "umt" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -38751,6 +38813,21 @@ /obj/machinery/photocopier, /turf/open/floor/plasteel, /area/quartermaster/office) +"voi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/neutral/filled/line{ + dir = 4 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) "vov" = ( /obj/machinery/atmospherics/pipe/manifold/cyan/visible{ dir = 4 @@ -39637,6 +39714,13 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"vKB" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/line, +/turf/open/floor/plasteel/white, +/area/medical/medbay/lobby) "vKC" = ( /obj/machinery/vending/snack/random, /turf/open/floor/plasteel/dark, @@ -41064,15 +41148,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"wBE" = ( -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/hallway/primary/starboard) "wBJ" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 6 @@ -41262,24 +41337,6 @@ /obj/structure/flora/ausbushes/ppflowers, /turf/open/floor/grass, /area/medical/genetics) -"wHn" = ( -/obj/effect/turf_decal/trimline/green/filled/corner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/green/filled/corner{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) "wHH" = ( /obj/structure/filingcabinet, /obj/machinery/light_switch{ @@ -41486,6 +41543,12 @@ }, /turf/open/space/basic, /area/solar/port/aft) +"wLf" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/hallway/primary/central) "wLj" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 6 @@ -41636,16 +41699,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"wPk" = ( -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 8 - }, -/obj/effect/turf_decal/arrows/white{ - color = "#99ccff"; - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/lobby) "wPm" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 1 @@ -41940,21 +41993,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) -"wVR" = ( -/obj/structure/bed, -/obj/machinery/button/door{ - id = "Dorm2"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - specialfunctions = 4 - }, -/obj/item/bedsheet/dorms, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/dorms) "wVS" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 4 @@ -42817,6 +42855,16 @@ }, /turf/open/floor/plasteel/white, /area/science/research) +"xyy" = ( +/obj/effect/turf_decal/arrows/white{ + color = "#99ccff"; + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/lobby) "xyL" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/firedoor/border_only, @@ -43582,6 +43630,10 @@ dir = 1 }, /area/chapel/main) +"xPX" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/carpet, +/area/crew_quarters/cryopods) "xQb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, @@ -43985,19 +44037,6 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"ybc" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/trimline/green/filled/corner{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) "ybl" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 6 @@ -70507,8 +70546,8 @@ vRP vRP vRP wkE -dIQ -gxI +dWp +voi xBz iXq drq @@ -73390,7 +73429,7 @@ fBu bpO hGn xyL -gln +hUa tkh ewA maX @@ -73647,7 +73686,7 @@ dxB qlQ fjn wOo -jeW +wLf kmr ewA sKm @@ -73904,7 +73943,7 @@ iEC dpC eAL rOG -aba +fOh kmr ewA fbN @@ -74418,7 +74457,7 @@ uDg svr dOw eVi -wBE +dNv kmr ewA kmr @@ -74675,7 +74714,7 @@ wIq ocY hFP nXR -ael +mvi kmr kJb wjL @@ -74686,7 +74725,7 @@ bJd eRu fXQ atJ -lfO +fWw qhp qhp qhp @@ -74932,7 +74971,7 @@ bef leg eoN qfj -cVH +gav ljA ewA hDH @@ -74943,10 +74982,10 @@ jPa oyD fXQ kGF -nhO -hQa -kJx -hcE +rAS +rxz +xPX +gKv fXQ hBZ vNF @@ -75178,8 +75217,8 @@ blC ndY aLB xcG -isA -bzL +cVh +ulG xcG cYB gaJ @@ -75197,7 +75236,7 @@ wTB vrF wTB oci -wVR +opt fXQ fXQ rle @@ -75435,8 +75474,8 @@ dwm dog nXR dOA -lVq -rTv +hfa +kxu dOA nXR fqH @@ -75453,7 +75492,7 @@ jKx wTB oyD wTB -hML +rCt wTB wTB xGG @@ -75692,8 +75731,8 @@ ndY dog oGQ vlx -cMM -aVF +ndT +eYP wSu aCJ lfC @@ -76197,8 +76236,8 @@ jcz xjy jmD ilc -fTX -ybc +dxD +dql xCr ckK ckK @@ -76206,8 +76245,8 @@ aNJ raB qkc qkc -hoZ -cDe +dJe +rNG tva aSd lfC @@ -76453,7 +76492,7 @@ dAf jcz haX rYy -doL +iRb jcz jcz jcz @@ -76463,8 +76502,8 @@ jcz wmH bez pyL -iyK -dVU +iiR +jNX hks ftr xdK @@ -76709,7 +76748,7 @@ wvU pQK jcz jcz -bOL +sHf jcz jcz wot @@ -76720,8 +76759,8 @@ jcz etE wZX pkT -swc -wPk +bEM +xyy jxk ftr aHw @@ -76966,7 +77005,7 @@ bYi fbD lZF str -wHn +nJy mDO aub nqs @@ -77250,11 +77289,11 @@ tmP ewA uRz wTB +dNZ +wTB +wTB jSg wTB -wTB -oVS -wTB jSO jSO jSO @@ -77493,7 +77532,7 @@ mFx fyU erK rmT -nXZ +vKB ftr bzk lPo @@ -77508,10 +77547,10 @@ bal mwP wTB sZH -bAg +qKg wTB sZH -eOk +bAg jSO qOt qOt diff --git a/_maps/shuttles/whiteship_miner.dmm b/_maps/shuttles/whiteship_miner.dmm index 81bb1d9c8178..45fb9699d673 100644 --- a/_maps/shuttles/whiteship_miner.dmm +++ b/_maps/shuttles/whiteship_miner.dmm @@ -1,7 +1,7 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE "aa" = ( -/turf/open/space, -/area/space) +/turf/template_noop, +/area/template_noop) "ab" = ( /obj/machinery/door/airlock/shuttle{ name = "cargo bay"; @@ -92,6 +92,9 @@ "al" = ( /obj/structure/closet/emcloset, /obj/effect/decal/cleanable/dirt, +/obj/item/pen, +/obj/item/pen, +/obj/item/pen, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "am" = ( @@ -309,7 +312,9 @@ /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "aN" = ( -/obj/machinery/computer/camera_advanced/shuttle_docker/whiteship/miner, +/obj/machinery/computer/camera_advanced/shuttle_docker/whiteship/miner{ + dir = 8 + }, /turf/open/floor/mineral/titanium/white, /area/shuttle/abandoned) "aO" = ( @@ -679,6 +684,12 @@ "fw" = ( /obj/structure/table, /obj/item/storage/photo_album, +/obj/item/paper/crumpled{ + inertia_dir = 0; + info = "It was bugging me that we didn't have pens, so I looted a ruin for some more. They're in the emergency closet. -E"; + pixel_x = 1; + pixel_y = 6 + }, /turf/open/floor/mineral/titanium/white, /area/shuttle/abandoned) "gv" = ( @@ -886,7 +897,7 @@ height = 15; id = "whiteship"; launch_status = 0; - movement_force = list("KNOCKDOWN" = 0, "THROW" = 0); + movement_force = list("KNOCKDOWN"=0,"THROW"=0); name = "Free Miner Ship"; port_direction = 8; preferred_direction = 4; @@ -905,7 +916,9 @@ /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "pP" = ( -/obj/machinery/computer/shuttle/white_ship/miner, +/obj/machinery/computer/shuttle/white_ship/miner{ + dir = 8 + }, /turf/open/floor/mineral/titanium/white, /area/shuttle/abandoned) "qA" = ( @@ -1055,6 +1068,7 @@ pixel_x = -1; pixel_y = 2 }, +/obj/item/pen/fountain, /turf/open/floor/mineral/titanium/white, /area/shuttle/abandoned) "Fj" = ( diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index b1bcfa348df8..d152d714da17 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -44,10 +44,10 @@ return ..() || ((obj_flags & CAN_BE_HIT) && I.attack_obj(src, user)) /mob/living/attackby(obj/item/I, mob/living/user, params) + var/dist = get_dist(src,user) if(..()) return TRUE - var/dist = get_dist(src,user) - user.changeNext_move(CLICK_CD_MELEE * I.weapon_stats[SWING_SPEED] * (I.range_cooldown_mod ? (dist > 0 ? dist * I.range_cooldown_mod : I.range_cooldown_mod) : 1)) //range increases attack cooldown by swing speed + user.changeNext_move(CLICK_CD_MELEE * I.weapon_stats[SWING_SPEED] * (I.range_cooldown_mod ? (dist > 0 ? min(dist, I.weapon_stats[REACH]) * I.range_cooldown_mod : I.range_cooldown_mod) : 1)) //range increases attack cooldown by swing speed user.weapon_slow(I) if(user.a_intent == INTENT_HARM && stat == DEAD && (butcher_results || guaranteed_butcher_results)) //can we butcher it? var/datum/component/butchering/butchering = I.GetComponent(/datum/component/butchering) @@ -110,7 +110,7 @@ if(item_flags & NOBLUDGEON) return var/dist = get_dist(O,user) - user.changeNext_move(CLICK_CD_MELEE * weapon_stats[SWING_SPEED] * (range_cooldown_mod ? (dist > 0 ? dist * range_cooldown_mod : range_cooldown_mod) : 1)) //range increases attack cooldown by swing speed + user.changeNext_move(CLICK_CD_MELEE * weapon_stats[SWING_SPEED] * (range_cooldown_mod ? (dist > 0 ? min(dist, weapon_stats[REACH]) * range_cooldown_mod : range_cooldown_mod) : 1)) //range increases attack cooldown by swing speed user.do_attack_animation(O) O.attacked_by(src, user) user.weapon_slow(src) diff --git a/code/controllers/subsystem/demo.dm b/code/controllers/subsystem/demo.dm index b19cc8e6f9c7..2396b5ea7467 100644 --- a/code/controllers/subsystem/demo.dm +++ b/code/controllers/subsystem/demo.dm @@ -66,7 +66,7 @@ SUBSYSTEM_DEF(demo) /datum/controller/subsystem/demo/Initialize() WRITE_LOG_NO_FORMAT(GLOB.demo_log, "demo version 1\n") // increment this if you change the format if(GLOB.revdata) - WRITE_LOG_NO_FORMAT(GLOB.demo_log, "commit [GLOB.revdata.originmastercommit || GLOB.revdata.commit]\n") + WRITE_LOG_NO_FORMAT(GLOB.demo_log, "commit [GLOB.revdata.commit || GLOB.revdata.originmastercommit]\n") // write a "snapshot" of the world at this point. // start with turfs diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index cd6c70f3ef56..82f9f113a6c4 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -58,15 +58,15 @@ var/time_required = 0 // Framework for future setting of required time for antag roles -/datum/game_mode/proc/announce() //Shows the gamemode's name and a fast description. +/// Shows the gamemode's name and a fast description. +/datum/game_mode/proc/announce() to_chat(world, "The gamemode is: [name]!") to_chat(world, "[announce_text]") /datum/game_mode/proc/admin_panel() return - -///Checks to see if the game can be setup and ran with the current number of players or whatnot. +/// Checks to see if the game can be setup and ran with the current number of players or whatnot. /datum/game_mode/proc/can_start() var/playerC = 0 var/unreadiedPlayers = 0 @@ -90,9 +90,9 @@ return TRUE -///Attempts to select players for special roles the mode might have. +/// Attempts to select players for special roles the mode might have. /datum/game_mode/proc/pre_setup() - return 1 + return TRUE ///Everyone should now be on the station and have their normal gear. This is the place to give the special roles extra things /datum/game_mode/proc/post_setup(report) //Gamemodes can override the intercept report. Passing TRUE as the argument will force a report. @@ -131,17 +131,17 @@ addtimer(CALLBACK(src, .proc/send_intercept, 0), rand(waittime_l, waittime_h)) generate_station_goals() gamemode_ready = TRUE - return 1 + return TRUE -///Handles late-join antag assignments +/// Handles late-join antag assignments /datum/game_mode/proc/make_antag_chance(mob/living/carbon/human/character) if(replacementmode && round_converted == 2) replacementmode.make_antag_chance(character) return -///Allows rounds to basically be "rerolled" should the initial premise fall through. Also known as mulligan antags. +/// Allows rounds to basically be "rerolled" should the initial premise fall through. Also known as mulligan antags. /datum/game_mode/proc/convert_roundtype() set waitfor = FALSE var/list/living_crew = list() @@ -170,10 +170,10 @@ switch(SSshuttle.emergency.mode) //Rounds on the verge of ending don't get new antags, they just run out if(SHUTTLE_STRANDED, SHUTTLE_ESCAPE) - return 1 + return TRUE if(SHUTTLE_CALL) if(SSshuttle.emergency.timeLeft(1) < initial(SSshuttle.emergencyCallTime)*0.5) - return 1 + return TRUE var/matc = CONFIG_GET(number/midround_antag_time_check) if(world.time >= (matc * 600)) @@ -210,7 +210,7 @@ //somewhere between 1 and 3 minutes from now if(!CONFIG_GET(keyed_list/midround_antag)[SSticker.mode.config_tag]) round_converted = 0 - return 1 + return TRUE for(var/mob/living/carbon/human/H in antag_candidates) if(H.client) replacementmode.make_antag_chance(H) @@ -219,16 +219,17 @@ message_admins("-- IMPORTANT: The roundtype has been converted to [replacementmode.name], antagonists may have been created! --") -///Called by the gameSSticker +/// Called by the SSticker fires every second /datum/game_mode/process() - return 0 + return FALSE -//For things that do not die easily +/// For things that do not die easily /datum/game_mode/proc/are_special_antags_dead() return TRUE -/datum/game_mode/proc/check_finished(force_ending) //to be called by SSticker +/// Determines if a gamemode should end the round +/datum/game_mode/proc/check_finished(force_ending) if(!SSticker.setup_done || !gamemode_ready) return FALSE if(replacementmode && round_converted == 2) @@ -245,45 +246,45 @@ if(Player.mind) if(Player.mind.special_role || LAZYLEN(Player.mind.antag_datums)) continuous_sanity_checked = 1 - return 0 + return FALSE if(!continuous_sanity_checked) message_admins("The roundtype ([config_tag]) has no antagonists, continuous round has been defaulted to on and midround_antag has been defaulted to off.") continuous[config_tag] = TRUE midround_antag[config_tag] = FALSE SSshuttle.clearHostileEnvironment(src) - return 0 + return FALSE if(living_antag_player && living_antag_player.mind && isliving(living_antag_player) && living_antag_player.stat != DEAD && !isnewplayer(living_antag_player) &&!isbrain(living_antag_player) && (living_antag_player.mind.special_role || LAZYLEN(living_antag_player.mind.antag_datums))) - return 0 //A resource saver: once we find someone who has to die for all antags to be dead, we can just keep checking them, cycling over everyone only when we lose our mark. + return FALSE //A resource saver: once we find someone who has to die for all antags to be dead, we can just keep checking them, cycling over everyone only when we lose our mark. for(var/mob/Player in GLOB.alive_mob_list) if(Player.mind && Player.stat != DEAD && !isnewplayer(Player) &&!isbrain(Player) && Player.client && (Player.mind.special_role || LAZYLEN(Player.mind.antag_datums))) //Someone's still antagging but is their antagonist datum important enough to skip mulligan? for(var/datum/antagonist/antag_types in Player.mind.antag_datums) if(antag_types.prevent_roundtype_conversion) living_antag_player = Player //they were an important antag, they're our new mark - return 0 + return FALSE if(!are_special_antags_dead()) return FALSE if(!continuous[config_tag] || force_ending) - return 1 + return TRUE else round_converted = convert_roundtype() if(!round_converted) if(round_ends_with_antag_death) - return 1 + return TRUE else midround_antag[config_tag] = 0 - return 0 + return FALSE - return 0 + return FALSE - -/datum/game_mode/proc/check_win() //universal trigger to be called at mob death, nuke explosion, etc. To be called from everywhere. - return 0 +// Checks if the antags have won +/datum/game_mode/proc/check_win() + return FALSE /datum/game_mode/proc/send_intercept() var/intercepttext = "Central Command Status Summary
" @@ -338,18 +339,19 @@ . += "[station_trait.get_report()]\n" return -// This is a frequency selection system. You may imagine it like a raffle where each player can have some number of tickets. The more tickets you have the more likely you are to -// "win". The default is 100 tickets. If no players use any extra tickets (earned with the antagonist rep system) calling this function should be equivalent to calling the normal -// pick() function. By default you may use up to 100 extra tickets per roll, meaning at maximum a player may double their chances compared to a player who has no extra tickets. -// -// The odds of being picked are simply (your_tickets / total_tickets). Suppose you have one player using fifty (50) extra tickets, and one who uses no extra: -// Player A: 150 tickets -// Player B: 100 tickets -// Total: 250 tickets -// -// The odds become: -// Player A: 150 / 250 = 0.6 = 60% -// Player B: 100 / 250 = 0.4 = 40% +/* This is a frequency selection system. You may imagine it like a raffle where each player can have some number of tickets. The more tickets you have the more likely you are to + * "win". The default is 100 tickets. If no players use any extra tickets (earned with the antagonist rep system) calling this function should be equivalent to calling the normal + * pick() function. By default you may use up to 100 extra tickets per roll, meaning at maximum a player may double their chances compared to a player who has no extra tickets. + * + * The odds of being picked are simply (your_tickets / total_tickets). Suppose you have one player using fifty (50) extra tickets, and one who uses no extra: + * Player A: 150 tickets + * Player B: 100 tickets + * Total: 250 tickets + * + * The odds become: + * Player A: 150 / 250 = 0.6 = 60% + * Player B: 100 / 250 = 0.4 = 40% + */ /datum/game_mode/proc/antag_pick(list/datum/candidates) if(GLOB.antag_token_users.len >= 1) //Antag token users get first priority, no matter their preferences var/client/C = pick_n_take(GLOB.antag_token_users) @@ -520,30 +522,30 @@ print_command_report(suicide_command_report, "Central Command Personnel Update") -/datum/game_mode/proc/get_living_by_department(var/department) + +/// Gets all living crewmembers for a department +/datum/game_mode/proc/get_living_by_department(department) . = list() for(var/mob/living/carbon/human/player in GLOB.mob_list) if(player.stat != DEAD && player.mind && (player.mind.assigned_role in department)) . |= player.mind -/datum/game_mode/proc/get_all_by_department(var/department) +/// Gets all crewmembers for a department including dead ones +/datum/game_mode/proc/get_all_by_department(department) . = list() for(var/mob/player in GLOB.mob_list) if(player.mind && (player.mind.assigned_role in department)) . |= player.mind -///////////////////////////////////////////// -//Keeps track of all living silicon members// -///////////////////////////////////////////// + +/// Gets all living silicon members /datum/game_mode/proc/get_living_silicon() . = list() for(var/mob/living/silicon/player in GLOB.mob_list) if(player.stat != DEAD && player.mind && (player.mind.assigned_role in GLOB.nonhuman_positions)) . |= player.mind -/////////////////////////////////////// -//Keeps track of all silicon members // -/////////////////////////////////////// +/// Gets all silicon members including dead ones /datum/game_mode/proc/get_all_silicon() . = list() for(var/mob/living/silicon/player in GLOB.mob_list) @@ -611,13 +613,14 @@ for (var/C in GLOB.admins) to_chat(C, msg.Join()) log_admin(msg.Join()) -//If the configuration option is set to require players to be logged as old enough to play certain jobs, then this proc checks that they are, otherwise it just returns 1 + +/// If the configuration option is set to require players to be logged as old enough to play certain jobs, then this proc checks that they are, otherwise it just returns 1 /datum/game_mode/proc/age_check(client/C) if(get_remaining_days(C) == 0) - return 1 //Available in 0 days = available right now = player is old enough to play. - return 0 - + return TRUE //Available in 0 days = available right now = player is old enough to play. + return FALSE +/// Returns the numbers of days before the player can access a specific role /datum/game_mode/proc/get_remaining_days(client/C) if(!C) return 0 @@ -630,6 +633,7 @@ return max(0, enemy_minimum_age - C.player_age) +/// Used to remove antag status on borging for some gamemodes /datum/game_mode/proc/remove_antag_for_borging(datum/mind/newborgie) SSticker.mode.remove_cultist(newborgie, 0, 0) var/datum/antagonist/rev/rev = newborgie.has_antag_datum(/datum/antagonist/rev) @@ -656,7 +660,7 @@ /datum/game_mode/proc/special_report() return -//Set result and news report here +/// Set the round results /datum/game_mode/proc/set_round_result() SSticker.mode_result = "undefined" if(station_was_nuked) diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index fdb30bf146fc..020dd8331db5 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -86,6 +86,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM cig.attackby(src, user) else cig.light(span_notice("[user] holds [src] out for [M], and lights [cig].")) + playsound(src, 'sound/items/lighter/light.ogg', 50, 2) else ..() @@ -289,6 +290,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM cig.attackby(src, user) else cig.light(span_notice("[user] holds the [name] out for [M], and lights [M.p_their()] [cig.name].")) + playsound(src, 'sound/items/lighter/light.ogg', 50, 2) else return ..() @@ -583,6 +585,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/lighter/ignition_effect(atom/A, mob/user) if(is_hot()) . = span_rose("With a single flick of [user.p_their()] wrist, [user] smoothly lights [A] with [src]. Damn [user.p_theyre()] cool.") + playsound(src, 'sound/items/lighter/light.ogg', 50, 2) /obj/item/lighter/proc/set_lit(new_lit) lit = new_lit @@ -610,6 +613,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM set_lit(TRUE) if(fancy) user.visible_message("Without even breaking stride, [user] flips open and lights [src] in one smooth movement.", span_notice("Without even breaking stride, you flip open and light [src] in one smooth movement.")) + playsound(src, 'sound/items/lighter/strike.ogg', 50, 2) else var/prot = FALSE var/mob/living/carbon/human/H = user @@ -623,6 +627,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(prot || prob(75)) user.visible_message("After a few attempts, [user] manages to light [src].", span_notice("After a few attempts, you manage to light [src].")) + playsound(src, 'sound/items/lighter/plastic_strike.ogg', 40, 2) else var/hitzone = user.held_index_to_dir(user.active_hand_index) == "r" ? BODY_ZONE_PRECISE_R_HAND : BODY_ZONE_PRECISE_L_HAND user.apply_damage(5, BURN, hitzone) @@ -633,8 +638,10 @@ CIGARETTE PACKETS ARE IN FANCY.DM set_lit(FALSE) if(fancy) user.visible_message("You hear a quiet click, as [user] shuts off [src] without even looking at what [user.p_theyre()] doing. Wow.", span_notice("You quietly shut off [src] without even looking at what you're doing. Wow.")) + playsound(src, 'sound/items/lighter/close.ogg', 50, 1) else user.visible_message("[user] quietly shuts off [src].", span_notice("You quietly shut off [src].")) + playsound(src, 'sound/items/lighter/plastic_close.ogg', 40, 2) else . = ..() @@ -651,8 +658,10 @@ CIGARETTE PACKETS ARE IN FANCY.DM else if(fancy) cig.light(span_rose("[user] whips the [name] out and holds it for [M]. [user.p_their(TRUE)] arm is as steady as the unflickering flame [user.p_they()] light[user.p_s()] \the [cig] with.")) + playsound(src, 'sound/items/lighter/light.ogg', 50, 2) else cig.light(span_notice("[user] holds the [name] out for [M], and lights [M.p_their()] [cig.name].")) + playsound(src, 'sound/items/lighter/light.ogg', 50, 2) else ..() @@ -710,6 +719,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/lighter/greyscale/ignition_effect(atom/A, mob/user) if(is_hot()) . = span_notice("After some fiddling, [user] manages to light [A] with [src].") + playsound(src, 'sound/items/lighter/light.ogg', 50, 2) /obj/item/lighter/slime diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm index fa21897b4699..f7143171c420 100644 --- a/code/game/objects/structures/mirror.dm +++ b/code/game/objects/structures/mirror.dm @@ -167,25 +167,22 @@ if(H.dna.species.use_skintones) var/new_s_tone = input(user, "Choose your skin tone:", "Race change") as null|anything in GLOB.skin_tones - if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) - return - - if(new_s_tone) - H.skin_tone = new_s_tone - H.dna.update_ui_block(DNA_SKIN_TONE_BLOCK) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(new_s_tone) + H.skin_tone = new_s_tone + H.dna.update_ui_block(DNA_SKIN_TONE_BLOCK) if((MUTCOLORS in H.dna.species.species_traits) && !(NOCOLORCHANGE in H.dna.species.species_traits)) var/new_mutantcolor = input(user, "Choose your skin color:", "Race change","#"+H.dna.features["mcolor"]) as color|null - if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) - return - if(new_mutantcolor) - var/temp_hsv = RGBtoHSV(new_mutantcolor) + if(user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + if(new_mutantcolor) + var/temp_hsv = RGBtoHSV(new_mutantcolor) - if(ReadHSV(temp_hsv)[3] >= ReadHSV("#7F7F7F")[3]) // mutantcolors must be bright - H.dna.features["mcolor"] = sanitize_hexcolor(new_mutantcolor) + if(ReadHSV(temp_hsv)[3] >= ReadHSV("#7F7F7F")[3]) // mutantcolors must be bright + H.dna.features["mcolor"] = sanitize_hexcolor(new_mutantcolor) - else - to_chat(H, span_notice("Invalid color. Your color is not bright enough.")) + else + to_chat(H, span_notice("Invalid color. Your color is not bright enough.")) H.update_body() H.update_hair() diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index a7b6a915de2f..961d46b97c39 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -188,10 +188,9 @@ else if(recipient.holder) if(holder) - to_chat(recipient, - type = MESSAGE_TYPE_ADMINPM, - html = span_danger("Admin PM from-[key_name(src, recipient, 1)]: [span_linkify("[keywordparsedmsg]")]"), - confidential = TRUE) + to_chat(recipient, "-- Administrator private message --", confidential=TRUE) + to_chat(recipient, span_adminsay("Admin PM from-[key_name(src, recipient, 0)]: [span_linkify("[msg]")]"), confidential=TRUE) + to_chat(recipient, span_adminsay("Click on the administrator's name to reply."), confidential=TRUE) to_chat(src, type = MESSAGE_TYPE_ADMINPM, html = span_notice("Admin PM to-[key_name(recipient, src, 1)]: [span_linkify("[keywordparsedmsg]")]"), diff --git a/code/modules/antagonists/blob/blob_mobs.dm b/code/modules/antagonists/blob/blob_mobs.dm index 0f1f4e0bc40b..9eab08bf7995 100644 --- a/code/modules/antagonists/blob/blob_mobs.dm +++ b/code/modules/antagonists/blob/blob_mobs.dm @@ -306,6 +306,8 @@ if(factory) factory.naut = null //remove this naut from its factory factory.max_integrity = initial(factory.max_integrity) + if(overmind) + to_chat(overmind, "[src] has died in [get_area(src)]!") flick("blobbernaut_death", src) /mob/living/simple_animal/hostile/blob/blobbernaut/independent diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 0e978e4eb681..f81e1d148fa1 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -133,7 +133,7 @@ Contains: /obj/item/clothing/suit/space/pirate name = "syndicate pirate coat" - desc = "Argh! The standard armor of freelance forces contracted by the Syndicate to terrorize and disrupt commercial operations." + desc = "Arrrgh! The standard armor of freelance forces contracted by the Syndicate to terrorize and disrupt commercial operations." icon_state = "pirate" item_state = "pirate" w_class = WEIGHT_CLASS_NORMAL @@ -146,7 +146,7 @@ Contains: /obj/item/clothing/suit/space/pirate/captain name = "syndicate pirate captain coat" - desc = "Argh! Adorned with immeasurable protection, this coat serves the most fearsome Syndicate pirates in their neverending quest of loot." + desc = "Arrrgh! Adorned with immeasurable protection, this coat serves the most fearsome Syndicate pirates in their neverending quest of loot." armor = list(MELEE = 40, BULLET = 60, LASER = 40, ENERGY = 25, BOMB = 50, BIO = 30, RAD = 30, FIRE = 100, ACID = 100, WOUND = 10) resistance_flags = FIRE_PROOF | ACID_PROOF icon_state = "hgpirate" diff --git a/code/modules/food_and_drinks/food/snacks/meat.dm b/code/modules/food_and_drinks/food/snacks/meat.dm index 15c73412feb7..6c63acdbe593 100644 --- a/code/modules/food_and_drinks/food/snacks/meat.dm +++ b/code/modules/food_and_drinks/food/snacks/meat.dm @@ -365,30 +365,38 @@ filling_color = "#B22222" foodtype = MEAT tastes = list("meat" = 1) + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet + slices_num = 3 juice_results = list(/datum/reagent/consumable/drippings = 15) burns_on_grill = TRUE /obj/item/reagent_containers/food/snacks/meat/steak/plain - foodtype = MEAT + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/plain + foodtype = MEAT /obj/item/reagent_containers/food/snacks/meat/steak/plain/human + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/plain/human tastes = list("tender meat" = 1) foodtype = MEAT | GROSS /obj/item/reagent_containers/food/snacks/meat/steak/killertomato + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/killertomato name = "killer tomato steak" tastes = list("tomato" = 1) foodtype = FRUIT /obj/item/reagent_containers/food/snacks/meat/steak/bear + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/bear name = "bear steak" tastes = list("meat" = 1, "salmon" = 1) /obj/item/reagent_containers/food/snacks/meat/steak/xeno + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/xeno name = "xeno steak" tastes = list("meat" = 1, "acid" = 1) /obj/item/reagent_containers/food/snacks/meat/steak/spider + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/spider name = "spider steak" tastes = list("cobwebs" = 1) @@ -402,15 +410,18 @@ foodtype = MEAT /obj/item/reagent_containers/food/snacks/meat/steak/gondola + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/gondola name = "gondola steak" tastes = list("meat" = 1, "tranquility" = 1) /obj/item/reagent_containers/food/snacks/meat/steak/penguin + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet/penguin name = "penguin steak" icon_state = "birdsteak" tastes = list("beef" = 1, "cod fish" = 1) /obj/item/reagent_containers/food/snacks/meat/steak/plain/human/lizard + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet name = "lizard steak" icon_state = "birdsteak" tastes = list("juicy chicken" = 3, "scales" = 1) @@ -422,6 +433,7 @@ tastes = list("enhanced char" = 2, "suspicious tenderness" = 2, "natural & artificial dyes" = 2, "emulsifying agents" = 1) /obj/item/reagent_containers/food/snacks/meat/steak/synth + slice_path = /obj/item/reagent_containers/food/snacks/meat/cutlet name = "synthsteak" desc = "A synthetic meat steak. It doesn't look quite right, now does it?" icon_state = "meatsteak_old" diff --git a/code/modules/mob/living/carbon/alien/humanoid/death.dm b/code/modules/mob/living/carbon/alien/humanoid/death.dm index fb995d8fb509..1f3fc87cc6c8 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/death.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/death.dm @@ -7,6 +7,10 @@ update_icons() status_flags |= CANPUSH + for(var/mob/S in GLOB.player_list) + if(!S.stat && S.hivecheck()) + to_chat(S, span_alien("You sense through your hivemind that [src] has died.")) + //When the alien queen dies, all others must pay the price for letting her die. /mob/living/carbon/alien/humanoid/royal/queen/death(gibbed) if(stat == DEAD) diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index 7dea7dc31ed4..46f4b81d254a 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -1,3 +1,5 @@ +GLOBAL_VAR_INIT(permadeath, FALSE) + /mob/living/gib(no_brain, no_organs, no_bodyparts) var/prev_lying = lying if(stat != DEAD) @@ -88,5 +90,8 @@ for(var/s in sharedSoullinks) var/datum/soullink/S = s S.sharerDies(gibbed) + + if(GLOB.permadeath) + ghostize(FALSE) return TRUE diff --git a/code/modules/mob/living/simple_animal/hostile/regalrat.dm b/code/modules/mob/living/simple_animal/hostile/regalrat.dm index b25fb6832f3f..244360e39123 100644 --- a/code/modules/mob/living/simple_animal/hostile/regalrat.dm +++ b/code/modules/mob/living/simple_animal/hostile/regalrat.dm @@ -102,6 +102,8 @@ if(!.) return var/turf/T = get_turf(owner) + if(!T) + return var/loot = rand(1,100) switch(loot) if(1 to 5) @@ -147,6 +149,9 @@ . = ..() if(!.) return + if(!isopenturf(owner.loc)) + to_chat(owner,"You can't use raise soldiers while in an object!") + return var/cap = CONFIG_GET(number/ratcap) var/something_from_nothing = FALSE for(var/mob/living/simple_animal/mouse/M in oview(owner, 5)) @@ -188,6 +193,8 @@ /datum/action/cooldown/domain/proc/domain() var/turf/T = get_turf(owner) + if(!T) + return T.atmos_spawn_air("miasma=4;TEMP=[T20C]") switch (rand(1,10)) if (8) diff --git a/code/modules/projectiles/ammunition/energy/plasma.dm b/code/modules/projectiles/ammunition/energy/plasma.dm index 455321ac2893..925907d37cef 100644 --- a/code/modules/projectiles/ammunition/energy/plasma.dm +++ b/code/modules/projectiles/ammunition/energy/plasma.dm @@ -16,9 +16,9 @@ /obj/item/ammo_casing/energy/plasma/scatter projectile_type = /obj/item/projectile/plasma/scatter delay = 15 - e_cost = 70 - pellets = 5 - variance = 25 + e_cost = 35 + pellets = 6 + variance = 30 /obj/item/ammo_casing/energy/plasma/scatter/adv projectile_type = /obj/item/projectile/plasma/scatter/adv diff --git a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm index ec3283c2b941..fbc71f7b2e65 100644 --- a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm +++ b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm @@ -1,6 +1,6 @@ /obj/item/ammo_box/a357 name = "speed loader (.357)" - desc = "Designed to quickly reload revolvers." + desc = "A seven-shot speed loader designed for .357 revolvers." icon_state = "357" ammo_type = /obj/item/ammo_casing/a357 max_ammo = 7 @@ -8,7 +8,7 @@ /obj/item/ammo_box/c38 name = "speed loader (.38)" - desc = "Designed to quickly reload revolvers." + desc = "A six-shot speed loader designed for .38 revolvers." icon_state = "38" ammo_type = /obj/item/ammo_casing/c38 max_ammo = 6 @@ -17,17 +17,20 @@ /obj/item/ammo_box/c38/trac name = "speed loader (.38 TRAC)" - desc = "Designed to quickly reload revolvers. TRAC bullets embed a tracking implant within the target's body." + desc = "A six-shot speed loader designed for .38 revolvers. \ + These rounds deal lessened damage and stopping power, but inject a tracking implant upon burrowing into a target's body. Implant lifespan is fifteen minutes." ammo_type = /obj/item/ammo_casing/c38/trac /obj/item/ammo_box/c38/hotshot name = "speed loader (.38 Hot Shot)" - desc = "Designed to quickly reload revolvers. Hot Shot bullets contain an incendiary payload." + desc = "A six-shot speed loader designed for .38 revolvers. \ + These rounds trade exhaustive properties for an incendiary payload which sets targets ablaze." ammo_type = /obj/item/ammo_casing/c38/hotshot /obj/item/ammo_box/c38/iceblox name = "speed loader (.38 Iceblox)" - desc = "Designed to quickly reload revolvers. Iceblox bullets contain a cryogenic payload." + desc = "A six-shot speed loader designed for .38 revolvers. \ + These rounds trade exhaustive properties for a cryogenic payload which significantly reduces the body temperature of targets hit." ammo_type = /obj/item/ammo_casing/c38/iceblox /obj/item/ammo_box/c9mm diff --git a/code/modules/projectiles/projectile/bullets/revolver.dm b/code/modules/projectiles/projectile/bullets/revolver.dm index 72a1333d64b4..45ca9bc68e91 100644 --- a/code/modules/projectiles/projectile/bullets/revolver.dm +++ b/code/modules/projectiles/projectile/bullets/revolver.dm @@ -37,18 +37,20 @@ /obj/item/projectile/bullet/c38/hotshot //similar to incendiary bullets, but do not leave a flaming trail name = ".38 Hot Shot bullet" - damage = 20 + damage = 15 + stamina = 0 /obj/item/projectile/bullet/c38/hotshot/on_hit(atom/target, blocked = FALSE) . = ..() if(iscarbon(target)) var/mob/living/carbon/M = target - M.adjust_fire_stacks(6) + M.adjust_fire_stacks(2) M.IgniteMob() /obj/item/projectile/bullet/c38/iceblox //see /obj/item/projectile/temp for the original code name = ".38 Iceblox bullet" - damage = 20 + damage = 15 + stamina = 0 var/temperature = 100 /obj/item/projectile/bullet/c38/iceblox/on_hit(atom/target, blocked = FALSE) diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 96b4c8bdf225..a80bafe11cc3 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -1254,7 +1254,7 @@ All effects don't start immediately, but rather get worse over time; the rate is color = rgb(51, 19, 3) //Sickly brown boozepwr = 300 //I warned you taste_description = "a wall of bricks" - glass_icon_state = "glass_brown2" + glass_icon_state = "bacchus" glass_name = "Bacchus' Blessing" glass_desc = "You didn't think it was possible for a liquid to be so utterly revolting. Are you sure about this...?" diff --git a/config/maps.txt b/config/maps.txt index 35af99512507..77d61e937081 100644 --- a/config/maps.txt +++ b/config/maps.txt @@ -34,11 +34,12 @@ endmap map kilostation maxplayers 40 - votable + disabled endmap map gaxstation maxplayers 30 + votable endmap map icebox diff --git a/html/changelog.html b/html/changelog.html index 692214655e42..d6c7322c6fc3 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -58,6 +58,72 @@ -->
+

05 July 2022

+

VaelophisNyx updated:

+ + +

04 July 2022

+

SomeguyManperson updated:

+ + +

02 July 2022

+

SuperSlayer updated:

+ +

Addust updated:

+ +

AlvCyktor updated:

+ +

JamieD1 updated:

+ +

Skrem7 updated:

+ +

SomeguyManperson updated:

+ +

SuperSlayer updated:

+ +

ToasterBiome updated:

+ +

adamsong updated:

+ +

redmoogle updated:

+ +

01 July 2022

Mqiib updated:

- -

04 April 2022

-

SomeguyManperson updated:

- -

TheGamerdk updated:

- - -

03 April 2022

-

code by Chubbygummibear, sprites by Sheets updated:

- -

ynot01, maxion12345 updated:

- -

00ze-cyclone updated:

- -

LazennG updated:

- -

SapphicOverload updated:

- -

Sniblet updated:

- -

SomeguyManperson updated:

- -

ToasterBiome updated:

- -

adamsong updated:

- -

capsaicinz, Xoxeyos, arcturus-prime updated:

- - -

02 April 2022

-

TheGamerdk updated:

- -

ToasterBiome updated:

- -

adamsong updated:

- -

maxion12345 updated:

-
GoonStation 13 Development Team diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 039720f34cb4..e623d3f4b89c 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -32396,3 +32396,46 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. - tweak: Bone sword now huge, less block chance - tweak: All claymores in ruins are now unique items in code, have updated description, also damage/blockchance nerfed +2022-07-02: + ' SuperSlayer': + - bugfix: Regalrat now cannot use abilities while in a tube + Addust: + - rscadd: Free Miners now have pens. + - tweak: Free Miner ship console orientation is no longer braindead and the map + file has passthroughs on the exterior. + AlvCyktor: + - rscadd: Sound FX + - tweak: sliceable steaks + JamieD1: + - rscadd: Replaces Kilo with GaxStation + Skrem7: + - bugfix: Syndicate pirate coat descriptions are now 36% more piratey. + - tweak: Makes it so experimental .38 does the same brute damage as standard .38, + removes stamina damage + - tweak: Hotshot firestack application to 2 from 6 + SomeguyManperson: + - bugfix: pride's mirror may no longer just not curse people who use it + SuperSlayer: + - rscadd: Blob gets a message when a blobbernaut dies + - rscadd: Alliens get a message when a humanoid alien dies + ToasterBiome: + - rscdel: kills psych on gaxstation + - bugfix: fixes bad areas on gaxstation + - tweak: adds more floor trim to gaxstation + - tweak: give virology airlock style airlocks on gaxstation + adamsong: + - bugfix: fixed replays not showing test merged icons + - bugfix: fixed mhelps asking for your number + redmoogle: + - imageadd: Bacchus Blessing has a sprite now + - tweak: Plasma Shotgun uses 1/2 energy + - tweak: Increase bullet count by 1 and increase variance slightly +2022-07-04: + SomeguyManperson: + - bugfix: your attack cooldown will no longer be set to actual real life minutes + sometimes + - bugfix: melee weapons that theoretically have range will not theoretically always + use their maximum range cooldown when attacking qdel on death mobs +2022-07-05: + VaelophisNyx: + - rscadd: Added a new 5x3 maint ruin theme'd around fishing diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi index d5071fefda9f..0df7d04ced2f 100644 Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ diff --git a/sound/items/lighter/close.ogg b/sound/items/lighter/close.ogg new file mode 100644 index 000000000000..d9194118941b Binary files /dev/null and b/sound/items/lighter/close.ogg differ diff --git a/sound/items/lighter/light.ogg b/sound/items/lighter/light.ogg new file mode 100644 index 000000000000..d4d6c671270e Binary files /dev/null and b/sound/items/lighter/light.ogg differ diff --git a/sound/items/lighter/plastic_close.ogg b/sound/items/lighter/plastic_close.ogg new file mode 100644 index 000000000000..0ae62cd2a815 Binary files /dev/null and b/sound/items/lighter/plastic_close.ogg differ diff --git a/sound/items/lighter/plastic_strike.ogg b/sound/items/lighter/plastic_strike.ogg new file mode 100644 index 000000000000..765bf86648f5 Binary files /dev/null and b/sound/items/lighter/plastic_strike.ogg differ diff --git a/sound/items/lighter/strike.ogg b/sound/items/lighter/strike.ogg new file mode 100644 index 000000000000..aa003419a7ec Binary files /dev/null and b/sound/items/lighter/strike.ogg differ diff --git a/yogstation/code/datums/ruins/station.dm b/yogstation/code/datums/ruins/station.dm index fac5693c49ab..1576a6a6976d 100644 --- a/yogstation/code/datums/ruins/station.dm +++ b/yogstation/code/datums/ruins/station.dm @@ -781,6 +781,12 @@ suffix = "5x3_yogsmaintrpg.dmm" name = "Maint yogsmaintrpg" +///Author: Vaelophis +/datum/map_template/ruin/station/maint/fivexthree/smallfish + id = "smallfish" + suffix = "5x3_smallfish.dmm" + name = "Maint smallfish" + ///Author: Veeblefetzer /datum/map_template/ruin/station/maint/fivexthree/podmin id = "podmin" diff --git a/yogstation/code/modules/admin/verbs/adminhelp.dm b/yogstation/code/modules/admin/verbs/adminhelp.dm index afa4f7593b54..af1ef44a4e52 100644 --- a/yogstation/code/modules/admin/verbs/adminhelp.dm +++ b/yogstation/code/modules/admin/verbs/adminhelp.dm @@ -472,7 +472,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) if(initiator) to_chat(initiator, msg, confidential=TRUE) - initiator.mentorhelp(name, 1) + initiator.mhelp(name, TRUE) SSblackbox.record_feedback("tally", "ahelp_stats", 1, "MHelp") msg = "Ticket [TicketHref("#[id]")] marked as MHelp by [key_name]" diff --git a/yogstation/code/modules/jobs/job_types/psychiatrist.dm b/yogstation/code/modules/jobs/job_types/psychiatrist.dm index d5d6a38d16f9..2c860848229c 100644 --- a/yogstation/code/modules/jobs/job_types/psychiatrist.dm +++ b/yogstation/code/modules/jobs/job_types/psychiatrist.dm @@ -20,11 +20,14 @@ paycheck_department = ACCOUNT_MED display_order = JOB_DISPLAY_ORDER_PSYCHIATRIST - changed_maps = list("OmegaStation") + changed_maps = list("OmegaStation","GaxStation") /datum/job/psych/proc/OmegaStationChanges() return TRUE +/datum/job/psych/proc/GaxStationChanges() // I'M SORRY + return TRUE + /datum/outfit/job/psych name = "Psych" jobtype = /datum/job/psych diff --git a/yogstation/code/modules/mentor/mentorhelp.dm b/yogstation/code/modules/mentor/mentorhelp.dm index 4a93c0239322..fbde99cebfda 100644 --- a/yogstation/code/modules/mentor/mentorhelp.dm +++ b/yogstation/code/modules/mentor/mentorhelp.dm @@ -1,7 +1,9 @@ -/client/verb/mentorhelp(msg as text, fromadmins as null|num) +/client/verb/mentorhelp(msg as text) set category = "Mentor" set name = "Mentorhelp" + mhelp(msg, FALSE) +/client/proc/mhelp(msg as text, fromadmins as num) //clean the input msg if(!msg) return @@ -25,7 +27,7 @@ var/admininfo = "MENTORHELP:" if(fromadmins) - admininfo = "MENTORHELP(From Admins):" + admininfo = "MENTORHELP (From Admins):" var/show_char = CONFIG_GET(flag/mentors_mobname_only) var/mentor_msg = "[admininfo] [key_name_mentor(src, 1, 0, 1, show_char)]: [msg]" log_mentor("[admininfo] [key_name_mentor(src, 0, 0, 0, 0)]: [msg]") diff --git a/yogstation/code/modules/mentor/mentorpm.dm b/yogstation/code/modules/mentor/mentorpm.dm index e5ae9cd982ca..431d96d75f09 100644 --- a/yogstation/code/modules/mentor/mentorpm.dm +++ b/yogstation/code/modules/mentor/mentorpm.dm @@ -48,7 +48,7 @@ if(is_mentor()) to_chat(src, "Error: Mentor-PM: Client not found.", confidential=TRUE) else - mentorhelp(msg) //Mentor we are replying to left. Mentorhelp instead(check below) + mhelp(msg, FALSE) //Mentor we are replying to left. Mentorhelp instead(check below) return //get message text, limit it's length.and clean/escape html