diff --git a/code/modules/mob/living/basic/basic.dm b/code/modules/mob/living/basic/basic.dm index 2d9709bd44d..8d2633816f4 100644 --- a/code/modules/mob/living/basic/basic.dm +++ b/code/modules/mob/living/basic/basic.dm @@ -170,6 +170,12 @@ lighting_color_cutoffs = list(lighting_cutoff_red, lighting_cutoff_green, lighting_cutoff_blue) return ..() +/mob/living/basic/examine(mob/user) + . = ..() + if(stat != DEAD) + return + . += span_deadsay("Upon closer examination, [p_they()] appear[p_s()] to be [HAS_TRAIT(user.mind, TRAIT_NAIVE) ? "asleep" : "dead"].") + /mob/living/basic/proc/melee_attack(atom/target, list/modifiers) face_atom(target) if(SEND_SIGNAL(src, COMSIG_HOSTILE_PRE_ATTACKINGTARGET, target) & COMPONENT_HOSTILE_NO_ATTACK) diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index 7c90e9a93bc..b66627d5a0a 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -76,6 +76,9 @@ if(stat == DEAD) return FALSE + if(!gibbed && (death_sound || death_message)) + INVOKE_ASYNC(src, TYPE_PROC_REF(/mob, emote), "deathgasp") + set_stat(DEAD) unset_machine() timeofdeath = world.time @@ -113,7 +116,4 @@ client.move_delay = initial(client.move_delay) client.player_details.time_of_death = timeofdeath - if(!gibbed && (death_sound || death_message)) - INVOKE_ASYNC(src, TYPE_PROC_REF(/mob, emote), "deathgasp") - return TRUE