diff --git a/code/game/objects/items/weapons/chemical_flamethrower/fire_effect.dm b/code/game/objects/items/weapons/chemical_flamethrower/fire_effect.dm index 83fc300279a..c807697a5b8 100644 --- a/code/game/objects/items/weapons/chemical_flamethrower/fire_effect.dm +++ b/code/game/objects/items/weapons/chemical_flamethrower/fire_effect.dm @@ -115,8 +115,9 @@ GLOBAL_LIST_EMPTY(flame_effects) merging_flame.fizzle() /obj/effect/fire/proc/damage_mob(mob/living/mob_to_burn) - if(!istype(mob_to_burn)) + if(!istype(mob_to_burn) || HAS_TRAIT(mob_to_burn, TRAIT_RESISTHEAT)) return + var/fire_damage = temperature / 100 if(ishuman(mob_to_burn)) var/mob/living/carbon/human/human_to_burn = mob_to_burn diff --git a/code/modules/mob/living/silicon/silicon_mob.dm b/code/modules/mob/living/silicon/silicon_mob.dm index 53e0d5e13b3..96dc8167b84 100644 --- a/code/modules/mob/living/silicon/silicon_mob.dm +++ b/code/modules/mob/living/silicon/silicon_mob.dm @@ -5,6 +5,7 @@ weather_immunities = list("ash") mob_biotypes = MOB_ROBOTIC flags_2 = RAD_PROTECT_CONTENTS_2 | RAD_NO_CONTAMINATE_2 + initial_traits = list(TRAIT_RESISTHEAT) // You can define armor as a list in datum definition (e.g. `armor = list("fire" = 80, "brute" = 10)`), // which would be converted to armor datum during initialization.