From 1509e1e949decf422139942133a66d3cd4ab2c67 Mon Sep 17 00:00:00 2001 From: SapphicOverload Date: Fri, 22 Dec 2023 17:24:30 -0500 Subject: [PATCH] getting hot in here --- code/datums/status_effects/debuffs/fire_stacks.dm | 6 +++++- code/modules/mob/living/carbon/human/life.dm | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/code/datums/status_effects/debuffs/fire_stacks.dm b/code/datums/status_effects/debuffs/fire_stacks.dm index 55978eb6bbdb..1f6d91865edf 100644 --- a/code/datums/status_effects/debuffs/fire_stacks.dm +++ b/code/datums/status_effects/debuffs/fire_stacks.dm @@ -200,6 +200,7 @@ var/thermal_protection = victim.get_thermal_protection() if(thermal_protection >= FIRE_IMMUNITY_MAX_TEMP_PROTECT && !no_protection) + SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "on_fire") return if(thermal_protection >= FIRE_SUIT_MAX_TEMP_PROTECT && !no_protection) @@ -207,7 +208,10 @@ return victim.adjust_bodytemperature((BODYTEMP_HEATING_MAX + (stacks * 12)) * 0.5 * seconds_per_tick) - SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "on_fire", /datum/mood_event/on_fire) + if(!HAS_TRAIT(victim, TRAIT_RESISTHEAT)) + SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "on_fire", /datum/mood_event/on_fire) + else + SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "on_fire") /** * Handles mob ignition, should be the only way to set on_fire to TRUE diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 83ce26f2f419..4fac185604c2 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -158,7 +158,7 @@ var/thermal_protection = 0 //Simple check to estimate how protected we are against multiple temperatures if(wear_suit) if(wear_suit.max_heat_protection_temperature >= FIRE_SUIT_MAX_TEMP_PROTECT) - thermal_protection += (wear_suit.max_heat_protection_temperature*0.7) + thermal_protection += (wear_suit.max_heat_protection_temperature*(1-THERMAL_PROTECTION_HEAD)) if(head) if(head.max_heat_protection_temperature >= FIRE_HELM_MAX_TEMP_PROTECT) thermal_protection += (head.max_heat_protection_temperature*THERMAL_PROTECTION_HEAD)