From b1549ae272bb5054bb47b148ac4b667dd0df35b8 Mon Sep 17 00:00:00 2001 From: Pidgey <35320204+PidgeyThePirate@users.noreply.github.com> Date: Sat, 24 Apr 2021 16:32:11 +1000 Subject: [PATCH] Fireballs from the fireflash and fireflash_s procs have the body temperature increase resisted by heat resistance. --- .../atmospherics/environmental/LINDA_fire.dm | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/code/modules/atmospherics/environmental/LINDA_fire.dm b/code/modules/atmospherics/environmental/LINDA_fire.dm index 9c91d72b65c..612dfe4fe1c 100644 --- a/code/modules/atmospherics/environmental/LINDA_fire.dm +++ b/code/modules/atmospherics/environmental/LINDA_fire.dm @@ -228,7 +228,12 @@ for(var/mob/living/L in T) L.adjust_fire_stacks(3) L.IgniteMob() - L.bodytemperature = max(temp / 3, L.bodytemperature) + if(ishuman(L)) + var/mob/living/carbon/human/M = L + var/heatBlockPercent = 1 - M.get_heat_protection(temp) + M.bodytemperature += (temp - M.bodytemperature) * heatBlockPercent / 2 + else + L.bodytemperature = (2 * L.bodytemperature + temp) / 3 /proc/fireflash_s(atom/center, radius, temp, falloff) if(temp < T0C + 60) @@ -291,7 +296,12 @@ for(var/mob/living/L in T) L.adjust_fire_stacks(3) L.IgniteMob() - L.bodytemperature = (2 * L.bodytemperature + temp) / 3 + if(ishuman(L)) + var/mob/living/carbon/human/M = L + var/heatBlockPercent = 1 - M.get_heat_protection(temp) + M.bodytemperature += (temp - M.bodytemperature) * heatBlockPercent / 2 + else + L.bodytemperature = (2 * L.bodytemperature + temp) / 3 if(T.density) continue