diff --git a/monkestation/code/modules/blueshift/reagents/deforest.dm b/monkestation/code/modules/blueshift/reagents/deforest.dm index 364b1276247e..7a96098d39fc 100644 --- a/monkestation/code/modules/blueshift/reagents/deforest.dm +++ b/monkestation/code/modules/blueshift/reagents/deforest.dm @@ -248,7 +248,7 @@ /datum/reagent/drug/twitch/on_mob_metabolize(mob/living/our_guy) . = ..() - if(!our_guy.get_organ_slot(ORGAN_SLOT_HEART)) + if(!our_guy.get_organ_slot(ORGAN_SLOT_HEART) || !our_guy.needs_heart()) return our_guy.add_movespeed_modifier(/datum/movespeed_modifier/reagent/twitch) @@ -398,7 +398,7 @@ /datum/reagent/drug/twitch/overdose_process(mob/living/carbon/our_guy, seconds_per_tick, times_fired) . = ..() - if(!our_guy.get_organ_slot(ORGAN_SLOT_HEART)) + if(!our_guy.get_organ_slot(ORGAN_SLOT_HEART) || !our_guy.needs_heart()) return our_guy.set_jitter_if_lower(10 SECONDS * REM * seconds_per_tick) @@ -407,11 +407,13 @@ if((our_guy.mob_biotypes & MOB_ROBOTIC) || HAS_TRAIT(our_guy, TRAIT_STABLEHEART)) var/heating = (mob_heating_muliplier * 2) * REM * seconds_per_tick our_guy.reagents?.chem_temp += heating - our_guy.adjust_bodytemperature(heating * TEMPERATURE_DAMAGE_COEFFICIENT, max_temp = our_guy.bodytemp_heat_damage_limit - 5) + our_guy.adjust_bodytemperature(heating * TEMPERATURE_DAMAGE_COEFFICIENT, max_temp = our_guy.bodytemp_heat_damage_limit + 10) + our_guy.adjustFireLoss(0.5 * seconds_per_tick) if(!ishuman(our_guy)) return var/mob/living/carbon/human/human = our_guy - human.adjust_bodytemperature(heating * TEMPERATURE_DAMAGE_COEFFICIENT, max_temp = our_guy.bodytemp_heat_damage_limit - 5) + human.adjust_bodytemperature(heating * TEMPERATURE_DAMAGE_COEFFICIENT, max_temp = our_guy.bodytemp_heat_damage_limit + 10) + our_guy.adjustFireLoss(0.5 * seconds_per_tick) else our_guy.adjustOrganLoss(ORGAN_SLOT_HEART, 1 * REM * seconds_per_tick, required_organtype = affected_organtype) our_guy.adjustToxLoss(1 * REM * seconds_per_tick, updating_health = FALSE, forced = TRUE, required_biotype = affected_biotype)