diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index d71d0205b89..e32637e798c 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -182,9 +182,8 @@ if (istype(location, /turf/simulated)) location.add_blood_floor(M) if("fire") - if (!(RESIST_COLD in M.mutations)) - M.take_organ_damage(0, power) - to_chat(M, "Aargh it burns!") + M.take_organ_damage(0, power) + to_chat(M, "Aargh it burns!") M.updatehealth() add_fingerprint(user) return 1 diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 23c15a258d7..6b770361407 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -334,8 +334,7 @@ var/turf/simulated/location = get_turf(M) if(istype(location)) location.add_blood_floor(M) if("fire") - if (!(RESIST_COLD in M.mutations)) - M.take_organ_damage(0, force) + M.take_organ_damage(0, force) M.updatehealth() if(seed && seed.get_trait(TRAIT_CARNIVOROUS)) diff --git a/code/modules/mob/living/carbon/alien/life.dm b/code/modules/mob/living/carbon/alien/life.dm index 93bf633093f..271de72a482 100644 --- a/code/modules/mob/living/carbon/alien/life.dm +++ b/code/modules/mob/living/carbon/alien/life.dm @@ -31,7 +31,7 @@ return 1 /mob/living/carbon/alien/handle_breath_temperature(datum/gas_mixture/breath) - if(breath.temperature > (T0C + 66) && !(RESIST_COLD in mutations)) + if(breath.temperature > (T0C + 66)) if(prob(20)) to_chat(src, "You feel a searing heat in your lungs!") fire_alert = max(fire_alert, 1) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index bdd22a7e6fb..205feb0580d 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -447,9 +447,12 @@ if(status_flags & GODMODE) return 1 //godmode 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) - take_overall_damage(brute=pressure_damage, used_weapon = "High Pressure") - pressure_alert = 2 + if(RESIST_HEAT in mutations) + pressure_alert = 1 + else + var/pressure_damage = min( ( (adjusted_pressure / species.hazard_high_pressure) -1 )*PRESSURE_DAMAGE_COEFFICIENT , MAX_HIGH_PRESSURE_DAMAGE) + take_overall_damage(brute=pressure_damage, used_weapon = "High Pressure") + pressure_alert = 2 else if(adjusted_pressure >= species.warning_high_pressure) pressure_alert = 1 else if(adjusted_pressure >= species.warning_low_pressure) @@ -469,6 +472,8 @@ /mob/living/carbon/human/handle_fire() if(..()) return + if(RESIST_HEAT in mutations) + return 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) @@ -547,11 +552,13 @@ return thermal_protection_flags /mob/living/carbon/human/proc/get_heat_protection(temperature) //Temperature is the temperature you're being exposed to. + + if(RESIST_HEAT in mutations) + return 1 + var/thermal_protection_flags = get_heat_protection_flags(temperature) var/thermal_protection = 0.0 - if(RESIST_HEAT in mutations) - return 1 if(thermal_protection_flags) if(thermal_protection_flags & HEAD) thermal_protection += THERMAL_PROTECTION_HEAD diff --git a/code/modules/mob/living/carbon/human/species/plasmaman.dm b/code/modules/mob/living/carbon/human/species/plasmaman.dm index 5bced02a651..76c06871250 100644 --- a/code/modules/mob/living/carbon/human/species/plasmaman.dm +++ b/code/modules/mob/living/carbon/human/species/plasmaman.dm @@ -186,7 +186,7 @@ H.emote(pick("giggle", "laugh")) SA.moles = 0 - if( (abs(310.15 - breath.temperature) > 50) && !(RESIST_HEAT in H.mutations)) // Hot air hurts :( + if(abs(310.15 - breath.temperature) > 50) // Hot air hurts :( if(H.status_flags & GODMODE) return 1 //godmode if(breath.temperature < cold_level_1) diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 9b68e5830cb..1539a78b140 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -284,7 +284,7 @@ return 1 /datum/species/proc/handle_temperature(datum/gas_mixture/breath, var/mob/living/carbon/human/H) // called by human/life, handles temperatures - if( (abs(310.15 - breath.temperature) > 50) && !(RESIST_HEAT in H.mutations)) // Hot air hurts :( + if(abs(310.15 - breath.temperature) > 50) // Hot air hurts :( if(H.status_flags & GODMODE) return 1 //godmode if(breath.temperature < cold_level_1) if(prob(20)) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 73bbd5a4281..c48cd355186 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -533,23 +533,6 @@ var/global/list/damage_icon_parts = list() add_image = 1 for(var/mut in mutations) switch(mut) - /* - if(HULK) - if(fat) - standing.underlays += "hulk_[fat]_s" - else - standing.underlays += "hulk_[g]_s" - add_image = 1 - if(RESIST_COLD) - standing.underlays += "fire[fat]_s" - add_image = 1 - if(RESIST_HEAT) - standing.underlays += "cold[fat]_s" - add_image = 1 - if(TK) - standing.underlays += "telekinesishead[fat]_s" - add_image = 1 - */ if(LASER) standing.overlays += "lasereyes_s" add_image = 1 diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm index 6e47fd45626..866c01c9702 100644 --- a/code/modules/mob/living/damage_procs.dm +++ b/code/modules/mob/living/damage_procs.dm @@ -15,7 +15,6 @@ if(BRUTE) adjustBruteLoss(damage * blocked) if(BURN) - if(RESIST_HEAT in mutations) damage = 0 adjustFireLoss(damage * blocked) if(TOX) adjustToxLoss(damage * blocked) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 4d5245cbf12..ecc5dbbdd61 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -92,9 +92,6 @@ //sort of a legacy burn method for /electrocute, /shock, and the e_chair /mob/living/proc/burn_skin(burn_amount) if(istype(src, /mob/living/carbon/human)) -// to_chat(world, "DEBUG: burn_skin(), mutations=[mutations]") - if (RESIST_HEAT in src.mutations) //fireproof - return 0 var/mob/living/carbon/human/H = src //make this damage method divide the damage to be done among all the body parts, then burn each body part for that much damage. will have better effect then just randomly picking a body part var/divided_damage = (burn_amount)/(H.organs.len) var/extradam = 0 //added to when organ is at max dam diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 3890b433eaf..4cc08d08471 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -337,7 +337,6 @@ continue M.show_message("[user.name] smashed the light!", 3, "You hear a tinkle of breaking glass", 2) if(on && (W.flags & CONDUCT)) - //if(!user.mutations & RESIST_COLD) if (prob(12)) electrocute_mob(user, get_area(src), src, 0.3) broken() @@ -374,7 +373,6 @@ var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread s.set_up(3, 1, src) s.start() - //if(!user.mutations & RESIST_COLD) if (prob(75)) electrocute_mob(user, get_area(src), src, rand(0.7,1.0))