From b5b73ca05047c35040677e7fc300fdef0f5ea33d Mon Sep 17 00:00:00 2001 From: liache <76535603+liache@users.noreply.github.com> Date: Thu, 30 Jun 2022 20:29:53 -0400 Subject: [PATCH] Reduces Post-Morten Pressure Damage Only following death, halves the brute damage that accumulates on a carbon mob. This is in response to a discussion about post-mortem surgeries taking too long under circumstances where mitigating tools are unavailable. Rather than buff any of medical's options, or force resleeving with the return of the much-maligned husking mechanic (or something similar) this quality of life change should not increase someone's survivability at all, but will reduce ridiculously-long surgery times to something more reasonable under the most common extreme-damage circumstance. --- code/modules/mob/living/carbon/human/life.dm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 56c54d1fdbb..07098750b8b 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -777,6 +777,8 @@ if(adjusted_pressure >= species.hazard_high_pressure) var/pressure_damage = min( ( (adjusted_pressure / species.hazard_high_pressure) -1 )*PRESSURE_DAMAGE_COEFFICIENT , MAX_HIGH_PRESSURE_DAMAGE) + if(stat==DEAD) + pressure_damage = pressure_damage/2 take_overall_damage(brute=pressure_damage, used_weapon = "High Pressure") throw_alert("pressure", /obj/screen/alert/highpressure, 2) else if(adjusted_pressure >= species.warning_high_pressure) @@ -788,7 +790,10 @@ else if( !(COLD_RESISTANCE in mutations)) if(!isSynthetic() || !nif || !nif.flag_check(NIF_O_PRESSURESEAL,NIF_FLAGS_OTHER)) //VOREStation Edit - NIF pressure seals - take_overall_damage(brute=LOW_PRESSURE_DAMAGE, used_weapon = "Low Pressure") + var/pressure_damage = LOW_PRESSURE_DAMAGE + if(stat==DEAD) + pressure_damage = pressure_damage/2 + take_overall_damage(brute=pressure_damage, used_weapon = "Low Pressure") if(getOxyLoss() < 55) // 12 OxyLoss per 4 ticks when wearing internals; unconsciousness in 16 ticks, roughly half a minute var/pressure_dam = 3 // 16 OxyLoss per 4 ticks when no internals present; unconsciousness in 13 ticks, roughly twenty seconds // (Extra 1 oxyloss from failed breath)