diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index 7e9739a816d..d7a9bde2cef 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -31,7 +31,10 @@ if(sponge) if(dna.species && amount > 0) amount = amount * dna.species.brain_mod - sponge.receive_damage(amount, 1) + sponge.damage = Clamp(sponge.damage + amount, 0, 120) + if(sponge.damage >= 120) + visible_message("[src] goes limp, [p_their()] facial expression utterly blank.") + death() if(updating) update_stat("adjustBrainLoss") return STATUS_UPDATE_STAT @@ -45,7 +48,10 @@ if(sponge) if(dna.species && amount > 0) amount = amount * dna.species.brain_mod - sponge.damage = min(max(amount, 0), (maxHealth*2)) + sponge.damage = Clamp(amount, 0, 120) + if(sponge.damage >= 120) + visible_message("[src] goes limp, [p_their()] facial expression utterly blank.") + death() if(updating) update_stat("setBrainLoss") return STATUS_UPDATE_STAT diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 81e4fe703d5..0516f419118 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -779,7 +779,6 @@ handle_organs() if(getBrainLoss() >= 120 || (health + (getOxyLoss() / 2)) <= -500) - visible_message("[src] goes limp, their facial expression utterly blank.") death() return diff --git a/code/modules/mob/living/carbon/human/update_stat.dm b/code/modules/mob/living/carbon/human/update_stat.dm index 5dfd98c0b63..6228038c710 100644 --- a/code/modules/mob/living/carbon/human/update_stat.dm +++ b/code/modules/mob/living/carbon/human/update_stat.dm @@ -2,16 +2,7 @@ if(status_flags & GODMODE) return ..(reason) - if(stat != DEAD) - switch(getBrainLoss()) - if(100 to 120) - Weaken(20) - create_debug_log("collapsed from brain damage, trigger reason: [reason]") - if(120 to INFINITY) - visible_message("[src] goes limp, [p_their()] facial expression utterly blank.") - death() - create_debug_log("died of brain damage, trigger reason: [reason]") - else + if(stat == DEAD) if(dna.species && dna.species.can_revive_by_healing) var/obj/item/organ/internal/brain/B = get_int_organ(/obj/item/organ/internal/brain) if(B)