diff --git a/code/game/objects/items/devices/lighting/flashlight.dm b/code/game/objects/items/devices/lighting/flashlight.dm
index 823747bf291..c10071f888e 100644
--- a/code/game/objects/items/devices/lighting/flashlight.dm
+++ b/code/game/objects/items/devices/lighting/flashlight.dm
@@ -104,7 +104,7 @@
user.visible_message(SPAN_NOTICE("\The [user] directs [src] to [M]'s eyes."), SPAN_NOTICE("You direct [src] to [M]'s eyes."))
if (H != user) //can't look into your own eyes buster
- if(M.stat == DEAD || M.blinded) //mob is dead or fully blind
+ if(M.stat == DEAD || M.blinded || M.status_flags & FAKEDEATH) //mob is dead or fully blind
to_chat(user, SPAN_WARNING("\The [M]'s pupils do not react to the light!"))
return
if(XRAY in M.mutations)
diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm
index e1d6ec772d2..662ca859364 100644
--- a/code/game/objects/items/devices/scanners.dm
+++ b/code/game/objects/items/devices/scanners.dm
@@ -112,8 +112,8 @@ BREATH ANALYZER
var/brain_result = H.get_brain_status()
dat += "Brain activity: [brain_result]."
- if(H.stat == DEAD || (H.status_flags & FAKEDEATH))
- dat += "[b]Time of Death:[endb] [time2text(worldtime2text(H.timeofdeath), "hh:mm")]"
+ if(H.stat == DEAD || H.status_flags & FAKEDEATH)
+ dat += "[b]Time of Death:[endb] [worldtime2text(H.timeofdeath)]"
// Pulse rate.
var/pulse_result = "normal"
@@ -169,7 +169,7 @@ BREATH ANALYZER
dat += temperature_string
// Traumatic shock.
- if(H.is_asystole())
+ if(H.is_asystole() || (H.status_flags & FAKEDEATH))
dat += "Patient is suffering from cardiovascular shock. Administer CPR immediately."
else if(H.shock_stage > 80)
dat += "Patient is at serious risk of going into shock. Pain relief recommended."
diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm
index d1073256785..37ad08683ed 100644
--- a/code/game/objects/structures/morgue.dm
+++ b/code/game/objects/structures/morgue.dm
@@ -38,6 +38,7 @@
var/mob/living/carbon/C = M
if(C.status_flags & FAKEDEATH)
icon_state = "morgue2"
+ break
switch(C.stat)
if(DEAD)
icon_state = "morgue2"
diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm
index d7675e79840..8f8f31a3690 100644
--- a/code/modules/mob/living/carbon/human/examine.dm
+++ b/code/modules/mob/living/carbon/human/examine.dm
@@ -225,13 +225,13 @@
distance = 1
if (src.stat && !(src.species.flags & NO_BLOOD)) // No point checking pulse of a species that doesn't have one.
msg += "[get_pronoun("He")] [get_pronoun("is")]n't responding to anything around [get_pronoun("him")] and seems to be unconscious.\n"
- if((stat == DEAD || is_asystole() || src.losebreath) && distance <= 3)
+ if((stat == DEAD || is_asystole() || src.losebreath) && distance <= 3 || (status_flags & FAKEDEATH))
msg += "[get_pronoun("He")] [get_pronoun("does")] not appear to be breathing.\n"
if(istype(user, /mob/living/carbon/human) && !user.stat && Adjacent(user))
spawn (0)
user.visible_message("[user] checks [src]'s pulse.", "You check [src]'s pulse.")
if (do_mob(user, src, 15))
- if(pulse() == PULSE_NONE)
+ if(pulse() == PULSE_NONE || (status_flags & FAKEDEATH))
to_chat(user, "[get_pronoun("He")] [get_pronoun("has")] no pulse.")
else
to_chat(user, "[get_pronoun("He")] [get_pronoun("has")] a pulse!")
@@ -256,7 +256,7 @@
inactivity = have_client ? bg.client.inactivity : null
- if(species.show_ssd && (!species.has_organ[BP_BRAIN] || has_brain()) && stat != DEAD)
+ if(species.show_ssd && (!species.has_organ[BP_BRAIN] || has_brain()) && stat != DEAD && !(status_flags & FAKEDEATH))
if(!vr_mob && !key)
msg += "[get_pronoun("He")] [get_pronoun("is")] [species.show_ssd]. It doesn't look like [get_pronoun("he")] [get_pronoun("is")] waking up anytime soon.\n"
else if(!vr_mob && !client && !bg)
diff --git a/html/changelogs/FakeDeathFix.yml b/html/changelogs/FakeDeathFix.yml
new file mode 100644
index 00000000000..4df80a428e2
--- /dev/null
+++ b/html/changelogs/FakeDeathFix.yml
@@ -0,0 +1,7 @@
+author: TheGreyWolf
+
+delete-after: True
+
+changes:
+ - bugfix: "Fixed most methods to easily detect if a fake death is fake. Primarily affects lings."
+ - bugfix: "Time of death now shows properly on health analyzers again."