Long Awaited Psychiatrist Rework (#17721)

* PART FIVE

* Update brain_trauma.dm

* Update examine.dm

* Update mild.dm

* Update brain_trauma.dm

* Update brain_trauma.dm

* anomalous floating lightswitch

* undo unintended map changes

I am sorry I don't know what happened to asteroid station I don't know what changed on the AI satellite I am sorry mapper man

* can no longer cure things u shouldnt

wound traumas
traumas that require the aheal staff
traumas that come from quirks

* wej

* wej 2

* Update YogStation.dmm

* Update brain_trauma.dm

* Update brain_trauma.dm

* Update brain_trauma.dm
This commit is contained in:
ynot01
2023-02-15 10:11:07 -05:00
committed by GitHub
parent 85de433d2d
commit 1d22d7da18
14 changed files with 1665 additions and 1228 deletions

View File

@@ -2124,7 +2124,15 @@
/turf/open/floor/plasteel,
/area/security/brig)
"arj" = (
/obj/effect/landmark/start/yogs/psychiatrist,
/obj/structure/table/wood,
/obj/item/clipboard{
pixel_x = 7;
pixel_y = 4
},
/obj/item/storage/briefcase{
pixel_x = -8;
pixel_y = 1
},
/turf/open/floor/carpet,
/area/medical/psych)
"arl" = (
@@ -2142,7 +2150,11 @@
/turf/open/floor/plasteel/white,
/area/medical/chemistry)
"arn" = (
/obj/structure/reagent_dispensers/water_cooler,
/obj/item/twohanded/required/kirbyplants/random,
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4,
/obj/machinery/light/small{
dir = 1
},
/turf/open/floor/wood,
/area/medical/psych)
"arz" = (
@@ -2299,7 +2311,10 @@
/turf/open/floor/plasteel/dark,
/area/hydroponics)
"asG" = (
/obj/structure/bookcase/random/reference,
/obj/machinery/firealarm{
dir = 1;
pixel_y = -26
},
/turf/open/floor/wood,
/area/medical/psych)
"asI" = (
@@ -9011,7 +9026,25 @@
/turf/open/floor/plasteel,
/area/engine/engineering)
"bYc" = (
/obj/effect/turf_decal/trimline/yellow/filled/warning,
/obj/structure/table,
/obj/item/roller{
pixel_x = -3;
pixel_y = 14
},
/obj/item/roller{
pixel_x = -3;
pixel_y = 10
},
/obj/item/clothing/glasses/hud/health{
pixel_x = 7;
pixel_y = 12
},
/obj/item/clothing/glasses/hud/health{
pixel_x = 7;
pixel_y = 4
},
/obj/item/pickaxe/mini,
/obj/effect/turf_decal/trimline/blue/filled/line,
/turf/open/floor/plasteel/white,
/area/medical/paramedic)
"bYq" = (
@@ -9905,7 +9938,21 @@
/turf/open/floor/plasteel/white,
/area/medical/medbay/central)
"clb" = (
/obj/machinery/light,
/obj/effect/landmark/start/yogs/psychiatrist,
/obj/structure/chair/office/light{
dir = 1
},
/obj/machinery/button/door{
id = "psych";
name = "Psych Office Shutters Control";
pixel_x = -6;
pixel_y = -25;
req_access_txt = "5"
},
/obj/machinery/light_switch{
pixel_x = 9;
pixel_y = -24
},
/turf/open/floor/wood,
/area/medical/psych)
"clc" = (
@@ -10017,17 +10064,11 @@
/turf/open/floor/plasteel/dark,
/area/hydroponics)
"cmB" = (
/obj/structure/cable{
icon_state = "2-8"
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{
dir = 8
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 10
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 10
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
/turf/open/floor/wood,
/area/medical/psych)
"cmL" = (
/mob/living/simple_animal/crab/clown,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
@@ -11063,11 +11104,9 @@
/turf/open/floor/plasteel,
/area/clerk)
"cHa" = (
/obj/structure/cable{
icon_state = "1-4"
},
/obj/structure/chair/comfy/brown,
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 5
dir = 8
},
/turf/open/floor/carpet,
/area/medical/psych)
@@ -13032,12 +13071,14 @@
/area/security/checkpoint/engineering)
"dsb" = (
/obj/structure/table/wood,
/obj/item/taperecorder,
/obj/machinery/firealarm{
dir = 4;
pixel_x = -26
/obj/item/paper_bin{
pixel_x = 5;
pixel_y = 2
},
/turf/open/floor/wood,
/obj/item/pen/fountain{
pixel_x = -6
},
/turf/open/floor/carpet,
/area/medical/psych)
"dsf" = (
/obj/effect/turf_decal/tile/neutral{
@@ -13970,6 +14011,18 @@
},
/turf/open/floor/plasteel,
/area/hallway/primary/central)
"dLh" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 5
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 5
},
/obj/structure/cable{
icon_state = "1-4"
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
"dLn" = (
/obj/structure/table,
/obj/item/electronics/airlock,
@@ -14079,13 +14132,10 @@
/turf/open/floor/mineral/titanium/yellow,
/area/ruin/powered)
"dNZ" = (
/obj/structure/chair/sofa/left{
/obj/structure/table/wood,
/obj/machinery/computer/med_data/laptop{
dir = 8
},
/obj/machinery/airalarm{
dir = 1;
pixel_y = -24
},
/turf/open/floor/wood,
/area/medical/psych)
"dOm" = (
@@ -14374,16 +14424,12 @@
/turf/open/floor/plasteel,
/area/hallway/secondary/entry)
"dSi" = (
/obj/structure/table/wood,
/obj/item/paper_bin,
/obj/item/pen/fountain,
/obj/machinery/button/door{
id = "psych";
name = "Psych Office Shutters Control";
pixel_x = -25;
pixel_y = -8
/obj/structure/chair/comfy/brown,
/obj/structure/chair/comfy/brown,
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 8
},
/turf/open/floor/wood,
/turf/open/floor/carpet,
/area/medical/psych)
"dSn" = (
/obj/structure/rack,
@@ -14782,15 +14828,12 @@
/turf/open/floor/engine/n2,
/area/engine/atmos_distro)
"eaJ" = (
/obj/structure/cable{
icon_state = "4-8"
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 5
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 8
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 6
},
/turf/open/floor/wood,
/area/medical/psych)
"eaK" = (
@@ -16033,7 +16076,6 @@
/turf/open/floor/plating,
/area/maintenance/port/fore)
"evw" = (
/obj/item/twohanded/required/kirbyplants/random,
/obj/structure/cable{
icon_state = "4-8"
},
@@ -16761,6 +16803,20 @@
/mob/living/simple_animal/cow/betsy,
/turf/open/floor/grass,
/area/maintenance/starboard/aft)
"eID" = (
/obj/effect/spawner/structure/window,
/obj/machinery/door/firedoor/border_only{
dir = 4
},
/obj/machinery/door/firedoor/border_only{
dir = 8
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "psych";
name = "psychiatrist shutters"
},
/turf/open/floor/plating,
/area/medical/psych)
"eIE" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -31777,6 +31833,10 @@
},
/turf/open/floor/plasteel,
/area/hallway/primary/port)
"jOO" = (
/obj/machinery/chem_dispenser,
/turf/open/floor/wood,
/area/medical/psych)
"jOQ" = (
/turf/open/floor/plating,
/area/maintenance/central/secondary)
@@ -33352,6 +33412,16 @@
/turf/open/floor/circuit,
/area/ai_monitored/turret_protected/ai)
"kru" = (
/obj/machinery/door/firedoor/border_only{
dir = 4
},
/obj/machinery/door/firedoor/border_only{
dir = 8
},
/obj/machinery/door/airlock/maintenance{
name = "Psychiatrists office Maintenance";
req_access_txt = "5"
},
/obj/structure/cable{
icon_state = "4-8"
},
@@ -33361,7 +33431,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 4
},
/obj/structure/closet/firecloset,
/turf/open/floor/plating,
/area/maintenance/port/aft)
"krF" = (
@@ -33868,6 +33937,29 @@
/obj/effect/turf_decal/trimline/red/filled/warning,
/turf/open/floor/plasteel,
/area/security/checkpoint/auxiliary)
"kAU" = (
/obj/structure/window/reinforced/tinted{
dir = 4
},
/obj/structure/table/wood,
/obj/item/lighter{
pixel_x = -6;
pixel_y = -3
},
/obj/item/flashlight/lamp/green{
pixel_x = 4;
pixel_y = 3
},
/obj/item/taperecorder{
pixel_x = 4;
pixel_y = -5
},
/obj/item/laser_pointer{
pixel_x = -4;
pixel_y = -10
},
/turf/open/floor/carpet,
/area/medical/psych)
"kBi" = (
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/carpet/exoticpurple,
@@ -34489,6 +34581,18 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
"kME" = (
/obj/structure/cable{
icon_state = "4-8"
},
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 8
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 8
},
/turf/open/floor/wood,
/area/medical/psych)
"kMO" = (
/obj/structure/guncase/shotgun,
/obj/item/gun/ballistic/shotgun/riot{
@@ -36030,14 +36134,11 @@
/turf/open/floor/plasteel/dark,
/area/ai_monitored/storage/satellite)
"lve" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/structure/cable{
icon_state = "1-4"
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 5
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 5
icon_state = "1-2";
tag = ""
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
@@ -36686,18 +36787,15 @@
/turf/open/floor/plasteel,
/area/security/checkpoint/supply)
"lJk" = (
/obj/structure/cable{
icon_state = "4-8"
},
/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{
dir = 1
},
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{
dir = 1
},
/obj/effect/turf_decal/trimline/purple/filled/warning{
dir = 8
},
/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{
dir = 1
},
/turf/open/floor/plasteel/white,
/area/medical/medbay/aft)
"lJv" = (
@@ -38071,6 +38169,13 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/turf/open/floor/plasteel/white,
/area/science/misc_lab)
"meQ" = (
/obj/structure/cable{
icon_state = "1-2";
tag = ""
},
/turf/open/floor/carpet,
/area/medical/psych)
"mfG" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 8
@@ -38461,19 +38566,7 @@
/turf/open/floor/eighties,
/area/maintenance/starboard/fore)
"mmq" = (
/obj/structure/closet/secure_closet{
name = "psychiatrist locker";
req_access_txt = "5"
},
/obj/item/clothing/suit/straight_jacket,
/obj/item/clothing/mask/muzzle,
/obj/item/reagent_containers/pill/happy,
/obj/item/reagent_containers/pill/happy,
/obj/item/reagent_containers/pill/happy,
/obj/machinery/airalarm{
dir = 4;
pixel_x = -24
},
/obj/structure/bookcase/random/reference,
/turf/open/floor/wood,
/area/medical/psych)
"mmr" = (
@@ -40118,6 +40211,18 @@
},
/turf/open/floor/plasteel,
/area/construction)
"mNt" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 8
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 4
},
/obj/structure/cable{
icon_state = "4-8"
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
"mNw" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{
dir = 8
@@ -44540,6 +44645,13 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
"olg" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{
dir = 1
},
/obj/machinery/light,
/turf/open/floor/wood,
/area/medical/psych)
"olJ" = (
/obj/machinery/light{
dir = 1
@@ -44744,6 +44856,16 @@
},
/turf/open/floor/plasteel/dark,
/area/engine/atmos)
"opf" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/structure/cable{
icon_state = "1-2";
tag = ""
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
"opo" = (
/obj/structure/cable{
icon_state = "1-4"
@@ -45060,9 +45182,6 @@
name = "Psychiatrists office";
req_access_txt = "5"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 8
},
@@ -46925,6 +47044,15 @@
/obj/effect/turf_decal/trimline/yellow/filled/line,
/turf/open/floor/plasteel,
/area/engine/atmos)
"pce" = (
/obj/machinery/power/apc{
areastring = "/area/medical/psych";
name = "Psychiatrists Office APC";
pixel_y = -23
},
/obj/structure/cable,
/turf/open/floor/wood,
/area/medical/psych)
"pcm" = (
/obj/structure/window/reinforced{
dir = 8
@@ -47265,6 +47393,18 @@
},
/turf/open/floor/plasteel/white,
/area/medical/storage)
"piI" = (
/obj/structure/cable{
icon_state = "2-8"
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 8
},
/obj/machinery/light{
dir = 1
},
/turf/open/floor/wood,
/area/medical/psych)
"piL" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4,
@@ -50665,6 +50805,22 @@
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
"qiS" = (
/obj/structure/cable{
icon_state = "1-2";
tag = ""
},
/obj/structure/cable{
icon_state = "1-4"
},
/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{
dir = 8
},
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{
dir = 8
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
"qjj" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 4
@@ -50760,6 +50916,17 @@
},
/turf/open/floor/wood,
/area/chapel/office)
"qla" = (
/obj/structure/window/reinforced/tinted{
dir = 4
},
/obj/machinery/door/window/southleft{
icon_state = "right";
name = "Filing Room";
req_access_txt = "5"
},
/turf/open/floor/wood,
/area/medical/psych)
"qle" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 4
@@ -51016,21 +51183,7 @@
},
/area/science/xenobiology)
"qpv" = (
/obj/machinery/power/apc{
areastring = "/area/medical/psych";
dir = 1;
name = "Psychiatrist Office APC";
pixel_y = 23
},
/obj/structure/cable{
icon_state = "0-2";
pixel_y = 1
},
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2,
/obj/machinery/light_switch{
pixel_x = 26;
pixel_y = 25
},
/obj/structure/reagent_dispensers/water_cooler,
/turf/open/floor/wood,
/area/medical/psych)
"qpw" = (
@@ -51787,6 +51940,13 @@
},
/turf/open/floor/plasteel/dark,
/area/hallway/primary/starboard)
"qDC" = (
/obj/structure/window/reinforced/tinted{
dir = 4
},
/obj/structure/filingcabinet,
/turf/open/floor/carpet,
/area/medical/psych)
"qDJ" = (
/obj/effect/turf_decal/tile/darkgreen{
dir = 1
@@ -56749,6 +56909,26 @@
"ses" = (
/turf/open/floor/plasteel/white,
/area/science/mixing)
"sey" = (
/obj/structure/table/wood,
/obj/item/assembly/flash{
pixel_x = -1;
pixel_y = 10
},
/obj/item/flashlight/pen{
pixel_x = -6;
pixel_y = -1
},
/obj/machinery/airalarm{
dir = 4;
pixel_x = -24
},
/obj/item/assembly/flash{
pixel_x = 5;
pixel_y = 6
},
/turf/open/floor/wood,
/area/medical/psych)
"seA" = (
/obj/effect/turf_decal/trimline/blue/filled/line{
dir = 1
@@ -57396,14 +57576,8 @@
/turf/open/floor/plasteel/dark,
/area/maintenance/starboard/fore)
"stI" = (
/obj/structure/filingcabinet/chestdrawer,
/obj/machinery/newscaster{
pixel_y = -32
},
/obj/effect/turf_decal/trimline/blue/filled/corner,
/obj/effect/turf_decal/trimline/yellow/filled/corner{
dir = 8
},
/obj/effect/turf_decal/trimline/blue/filled/line,
/obj/structure/closet/secure_closet/paramedic,
/turf/open/floor/plasteel/white,
/area/medical/paramedic)
"stY" = (
@@ -57771,11 +57945,17 @@
/turf/open/floor/plasteel,
/area/engine/engineering)
"sBc" = (
/obj/structure/chair/sofa/right{
dir = 8
/obj/structure/table/wood,
/obj/item/folder/white{
pixel_x = -9;
pixel_y = 6
},
/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{
dir = 1
/obj/item/folder/white{
pixel_y = -2
},
/obj/item/folder/white{
pixel_x = 7;
pixel_y = 6
},
/turf/open/floor/wood,
/area/medical/psych)
@@ -59996,20 +60176,6 @@
},
/turf/open/floor/plasteel,
/area/engine/foyer)
"tiz" = (
/obj/effect/spawner/structure/window,
/obj/machinery/door/poddoor/preopen{
id = "psych";
name = "privacy shutter"
},
/obj/machinery/door/firedoor/border_only{
dir = 4
},
/obj/machinery/door/firedoor/border_only{
dir = 8
},
/turf/open/floor/plating,
/area/medical/psych)
"tiH" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
dir = 1
@@ -62755,6 +62921,14 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/turf/open/floor/plasteel,
/area/quartermaster/storage)
"ukc" = (
/obj/machinery/chem_master,
/obj/item/book/manual/wiki/chemistry,
/obj/machinery/light/small{
dir = 8
},
/turf/open/floor/wood,
/area/medical/psych)
"ukq" = (
/obj/structure/cable/yellow{
icon_state = "1-4"
@@ -63358,27 +63532,9 @@
/turf/open/floor/plasteel,
/area/hallway/primary/central)
"uut" = (
/obj/structure/table,
/obj/item/roller{
pixel_x = -3;
pixel_y = 14
},
/obj/item/roller{
pixel_x = -3;
pixel_y = 10
},
/obj/item/clothing/glasses/hud/health{
pixel_x = 7;
pixel_y = 12
},
/obj/item/clothing/glasses/hud/health{
pixel_x = 7;
pixel_y = 4
},
/obj/effect/turf_decal/trimline/blue/filled/line{
/obj/effect/turf_decal/trimline/yellow/filled/warning{
dir = 10
},
/obj/item/pickaxe/mini,
/turf/open/floor/plasteel/white,
/area/medical/paramedic)
"uuB" = (
@@ -66473,11 +66629,10 @@
/turf/open/floor/plasteel/dark,
/area/chapel/main)
"vAc" = (
/obj/structure/closet/secure_closet/paramedic,
/obj/effect/turf_decal/trimline/blue/filled/corner{
/obj/effect/turf_decal/trimline/yellow/filled/corner{
dir = 8
},
/obj/effect/turf_decal/trimline/yellow/filled/corner,
/obj/effect/turf_decal/trimline/blue/filled/corner,
/turf/open/floor/plasteel/white,
/area/medical/paramedic)
"vAs" = (
@@ -69160,6 +69315,28 @@
},
/turf/open/floor/carpet/royalblue,
/area/crew_quarters/heads/cmo)
"wxa" = (
/obj/structure/closet/secure_closet{
name = "psychiatrist locker";
req_access_txt = "5"
},
/obj/item/clothing/suit/straight_jacket,
/obj/item/clothing/mask/muzzle,
/obj/item/storage/pill_bottle/happiness,
/obj/item/storage/pill_bottle/dice,
/obj/item/storage/pill_bottle/happy{
name = "happy pills bottle"
},
/obj/item/storage/pill_bottle/lsd{
name = "very happy pills bottle"
},
/obj/item/storage/pill_bottle/psicodine,
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/structure/window/reinforced/tinted{
dir = 4
},
/turf/open/floor/wood,
/area/medical/psych)
"wxb" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -69286,9 +69463,6 @@
/obj/structure/cable{
icon_state = "1-2"
},
/obj/structure/cable{
icon_state = "2-8"
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 8
},
@@ -70019,17 +70193,6 @@
},
/turf/open/floor/plasteel,
/area/hallway/primary/starboard)
"wLc" = (
/obj/machinery/door/airlock/maintenance{
name = "Paramedic Staging Area Maintenance";
req_access_txt = "69"
},
/obj/machinery/door/firedoor/border_only{
dir = 1
},
/obj/machinery/door/firedoor/border_only,
/turf/open/floor/plating,
/area/medical/paramedic)
"wLl" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -71698,6 +71861,22 @@
},
/turf/open/floor/plating/asteroid/snow,
/area/space/nearstation)
"xnZ" = (
/obj/machinery/door/airlock/maintenance{
name = "Paramedic Staging Area Maintenance";
req_access_txt = "69"
},
/obj/machinery/door/firedoor/border_only{
dir = 4
},
/obj/machinery/door/firedoor/border_only{
dir = 4
},
/obj/machinery/door/firedoor/border_only{
dir = 8
},
/turf/open/floor/plating,
/area/medical/paramedic)
"xol" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -72685,6 +72864,12 @@
/obj/structure/chair,
/turf/open/floor/plasteel/white,
/area/medical/medbay/central)
"xIb" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{
dir = 6
},
/turf/open/floor/carpet,
/area/medical/psych)
"xId" = (
/obj/structure/window/reinforced{
dir = 1
@@ -73501,7 +73686,10 @@
pixel_x = -4;
pixel_y = 7
},
/obj/effect/turf_decal/trimline/blue/filled/line{
/obj/effect/turf_decal/trimline/blue/filled/corner{
dir = 1
},
/obj/effect/turf_decal/trimline/yellow/filled/corner{
dir = 8
},
/turf/open/floor/plasteel/white,
@@ -74032,6 +74220,11 @@
icon_state = "water"
},
/area/crew_quarters/bar)
"yew" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2,
/obj/machinery/holopad,
/turf/open/floor/carpet,
/area/medical/psych)
"yeO" = (
/obj/structure/chair/office/dark,
/obj/effect/landmark/start/warden,
@@ -106111,7 +106304,7 @@ ogx
vXF
rBH
aGK
aQo
atx
lMI
aPk
aKc
@@ -106368,7 +106561,7 @@ aqS
gUX
noR
aGK
aQo
atx
lMI
aPk
aPk
@@ -106627,12 +106820,12 @@ pUI
aGK
aQo
lgU
qiS
lve
aQo
aPk
aKc
aKc
avc
opf
opf
lve
dLh
awB
lrc
msb
@@ -106882,14 +107075,14 @@ aGK
aPX
aPX
aPX
aPX
aPX
xnZ
aVN
kru
aQo
duI
aKc
aKc
aKc
aVN
aVN
aVN
aVN
mNt
lCv
lrc
msb
@@ -107140,13 +107333,13 @@ nlk
bNQ
xVJ
uut
aPX
kru
lBc
aPk
aKc
aKc
aKc
aVN
kME
sey
jOO
ukc
aVN
mNt
aPk
lrc
lrc
@@ -107397,13 +107590,13 @@ ouT
mtt
avU
vAc
aPX
kru
aQo
aPk
aPk
aPk
aPk
aVN
piI
meQ
meQ
pce
aVN
mNt
aPk
aPk
aPk
@@ -107654,13 +107847,13 @@ aOI
eCd
avU
bYc
wLc
aVN
cmB
pey
gJg
pey
pey
lve
qDC
kAU
wxa
aVN
mNt
oQP
aQo
aQo
@@ -107912,10 +108105,10 @@ hts
drH
stI
aVN
aVN
aVN
aVN
aVN
qla
xIb
yew
olg
aVN
rmQ
aUg
@@ -108940,9 +109133,9 @@ aPX
aPX
aPX
aVN
tiz
eID
ovp
tiz
eID
aVN
aVN
vNv

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -198,6 +198,7 @@
#define TRAIT_MAGIC_CHOKE "magic_choke"
#define TRAIT_SOOTHED_THROAT "soothed-throat"
#define TRAIT_LAW_ENFORCEMENT_METABOLISM "law-enforcement-metabolism"
#define TRAIT_PSYCH "psych-diagnosis"
#define TRAIT_ALWAYS_CLEAN "always-clean"
#define TRAIT_BOOZE_SLIDER "booze-slider"
#define TRAIT_QUICK_CARRY "quick-carry"

View File

@@ -15,6 +15,16 @@
var/random_gain = TRUE //can this be gained through random traumas?
var/resilience = TRAUMA_RESILIENCE_BASIC //how hard is this to cure?
var/clonable = TRUE // will this transfer if the brain is cloned?
// Therapy
var/random_cure_chance = 0 // This will be multiplied by a random amount; more resilient traumas should have less chance
var/flash_therapy_cd_time = 5 MINUTES // Flashing the patient, most effective method
COOLDOWN_DECLARE(flash_therapy_cd)
var/laser_therapy_cd_time = 8 MINUTES // Shining a laser into the patient's eyes, second most effective
COOLDOWN_DECLARE(laser_therapy_cd)
var/pen_therapy_cd_time = 3 MINUTES // Shining a light (usually penlight) into the patient's eyes, third most effective
COOLDOWN_DECLARE(pen_therapy_cd)
var/hug_therapy_cd_time = 1 MINUTES // Hugging the patient, lowest chance method but easiest. Hugs!
COOLDOWN_DECLARE(hug_therapy_cd)
/datum/brain_trauma/Destroy()
if(brain && brain.traumas)
@@ -42,6 +52,7 @@
to_chat(owner, gain_text)
RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech)
RegisterSignal(owner, COMSIG_MOVABLE_HEAR, .proc/handle_hearing)
random_cure_chance *= rand(6, 15) / 10 // 0.6-1.5x
//Called when removed from a mob
/datum/brain_trauma/proc/on_lose(silent)
@@ -61,4 +72,62 @@
//Called when hugging. expand into generally interacting, where future coders could switch the intent?
/datum/brain_trauma/proc/on_hug(mob/living/hugger, mob/living/hugged)
return
if(resilience >= TRAUMA_RESILIENCE_WOUND)
return
if(!COOLDOWN_FINISHED(src, hug_therapy_cd))
return
COOLDOWN_START(src, hug_therapy_cd, hug_therapy_cd_time)
var/cure_chance = random_cure_chance / 6
if(HAS_TRAIT(hugger, TRAIT_FRIENDLY))
cure_chance *= 1.25
cure_chance *= psych_bonus(hugger) * 0.35 // hugging is not that good at curing trauma but it helps
cure_chance *= check_hypno_vulnerable(hugged)
if(prob(cure_chance))
qdel(src) // Sometimes, all you need is a good hug..
/datum/brain_trauma/proc/on_flash(mob/living/flasher, mob/living/flashed)
if(resilience >= TRAUMA_RESILIENCE_WOUND)
return
if(!COOLDOWN_FINISHED(src, flash_therapy_cd))
return
COOLDOWN_START(src, flash_therapy_cd, flash_therapy_cd_time)
var/cure_chance = random_cure_chance / 10
cure_chance *= psych_bonus(flasher)
cure_chance *= check_hypno_vulnerable(flashed)
if(prob(cure_chance))
qdel(src)
/datum/brain_trauma/proc/on_shine_laser(mob/living/laserer, mob/living/lasered)
if(resilience >= TRAUMA_RESILIENCE_WOUND)
return
if(!COOLDOWN_FINISHED(src, laser_therapy_cd))
return
COOLDOWN_START(src, laser_therapy_cd, laser_therapy_cd_time)
var/cure_chance = random_cure_chance / 11
cure_chance *= psych_bonus(laserer)
cure_chance *= check_hypno_vulnerable(lasered)
if(prob(cure_chance))
qdel(src)
/datum/brain_trauma/proc/on_shine_light(mob/living/shiner, mob/living/shined, obj/item/flashlight/the_light)
if(resilience >= TRAUMA_RESILIENCE_WOUND)
return
if(!COOLDOWN_FINISHED(src, pen_therapy_cd))
return
COOLDOWN_START(src, pen_therapy_cd, pen_therapy_cd_time)
var/cure_chance = random_cure_chance / 15
if(istype(the_light, /obj/item/flashlight/pen)) // Use a proper penlight!
cure_chance *= 1.25
cure_chance *= psych_bonus(shiner)
cure_chance *= check_hypno_vulnerable(shined)
if(prob(cure_chance))
qdel(src)
/datum/brain_trauma/proc/psych_bonus(mob/living/psych)
return HAS_TRAIT(psych.mind, TRAIT_PSYCH) ? 10 : 1
/datum/brain_trauma/proc/check_hypno_vulnerable(mob/living/carbon/victim)
if(istype(victim))
return victim.hypnosis_vulnerable() ? 1.5 : 1
else
return 1

View File

@@ -3,6 +3,7 @@
//Most of the old brain damage effects have been transferred to the dumbness trauma.
/datum/brain_trauma/mild
random_cure_chance = 10
/datum/brain_trauma/mild/hallucinations
name = "Hallucinations"

View File

@@ -4,6 +4,7 @@
/datum/brain_trauma/severe
resilience = TRAUMA_RESILIENCE_SURGERY
random_cure_chance = 4
/datum/brain_trauma/severe/mute
name = "Mutism"

View File

@@ -2,6 +2,7 @@
//they are the easiest to cure, which means that if you want
//to keep them, you can't cure your other traumas
/datum/brain_trauma/special
random_cure_chance = 15
/datum/brain_trauma/special/godwoken
name = "Godwoken Syndrome"

View File

@@ -92,10 +92,13 @@
span_danger("You direct [src] to [M]'s eyes."))
if(M.stat == DEAD || (HAS_TRAIT(M, TRAIT_BLIND)) || !M.flash_act(visual = 1)) //mob is dead or fully blind
to_chat(user, span_warning("[M]'s pupils don't react to the light!"))
else if(M.dna && M.dna.check_mutation(XRAY)) //mob has X-ray vision
to_chat(user, span_danger("[M]'s pupils give an eerie glow!"))
else //they're okay!
to_chat(user, span_notice("[M]'s pupils narrow."))
else
for(var/datum/brain_trauma/trauma in M.get_traumas())
trauma.on_shine_light(user, M, src)
if(M.dna && M.dna.check_mutation(XRAY)) //mob has X-ray vision
to_chat(user, span_danger("[M]'s pupils give an eerie glow!"))
else //they're okay!
to_chat(user, span_notice("[M]'s pupils narrow."))
if(BODY_ZONE_PRECISE_MOUTH)

View File

@@ -111,6 +111,8 @@
//chance to actually hit the eyes depends on internal component
if(prob(effectchance * diode.rating) && C.flash_act(severity))
outmsg = span_notice("You blind [C] by shining [src] in [C.p_their()] eyes.")
for(var/datum/brain_trauma/trauma in C.get_traumas())
trauma.on_shine_laser(user, C)
else
outmsg = span_warning("You fail to blind [C] by shining [src] at [C.p_their()] eyes!")

View File

@@ -144,6 +144,8 @@
visible_message(span_disarm("[user] blinds [M] with the flash!"))
to_chat(user, span_danger("You blind [M] with the flash!"))
to_chat(M, span_userdanger("[user] blinds you with the flash!"))
for(var/datum/brain_trauma/trauma in M.get_traumas())
trauma.on_flash(user, M)
else
to_chat(M, span_userdanger("You are blinded by [src]!"))
if(M.IsParalyzed())

View File

@@ -422,6 +422,8 @@
SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "friendly_hug", /datum/mood_event/lamphug, src)
for(var/datum/brain_trauma/trauma in M.get_traumas())
trauma.on_hug(M, src)
for(var/datum/brain_trauma/trauma in get_traumas())
trauma.on_hug(M, src)
var/averagestacks = (fire_stacks + M.fire_stacks)/2 //transfer firestacks between players
fire_stacks = averagestacks

View File

@@ -119,6 +119,29 @@
badwings = "Weaponized "
. += "[t_He] [t_has] a pair of [span_warning(badwings)][(dna.features["wings"])] wings on [t_his] back"
if(HAS_TRAIT(user.mind, TRAIT_PSYCH) && LAZYLEN(get_traumas()))
var/highest_trauma = 0
for(var/datum/brain_trauma/B in get_traumas())
if(istype(B, /datum/brain_trauma/magic))
highest_trauma = 4
break
else if(istype(B, /datum/brain_trauma/special) && highest_trauma < 3)
highest_trauma = 3
else if(istype(B, /datum/brain_trauma/severe) && highest_trauma < 2)
highest_trauma = 2
else if(istype(B, /datum/brain_trauma/mild) && highest_trauma < 1)
highest_trauma = 1
switch(highest_trauma)
if(1)
. += span_warning("[t_His] behavior seems a bit off.")
if(2)
. += span_warning("[t_His] behavior is very clearly abnormal.")
if(3)
. += span_warning("[t_His] behavior is strange but intriguing.")
if(4)
. += span_warning("[t_His] behavior seems otherworldly.")
var/appears_dead = 0
if(stat == DEAD || (HAS_TRAIT(src, TRAIT_FAKEDEATH)))
appears_dead = 1

View File

@@ -19,6 +19,7 @@
base_access = list(ACCESS_MEDICAL)
paycheck = PAYCHECK_MEDIUM
paycheck_department = ACCOUNT_MED
mind_traits = list(TRAIT_PSYCH)
display_order = JOB_DISPLAY_ORDER_PSYCHIATRIST
minimal_character_age = 24 //Psychology, therapy, and the like; all branches that would probably need to be certified as properly educated