From 8c1e1aa3eff2ee1914722a3e7bdb48eb2bb13540 Mon Sep 17 00:00:00 2001 From: XDTM Date: Wed, 28 Feb 2018 10:22:01 +0100 Subject: [PATCH] Bath Salts now induce psychotic rage, but cause much more brain damage (#35911) * Bath Salts now induce psychotic rage, but cause much more brain damage * goodcode --- code/datums/brain_damage/special.dm | 5 ++++- .../reagents/chemistry/reagents/drug_reagents.dm | 10 ++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/code/datums/brain_damage/special.dm b/code/datums/brain_damage/special.dm index 1fa48a5dce..301d5b086c 100644 --- a/code/datums/brain_damage/special.dm +++ b/code/datums/brain_damage/special.dm @@ -129,4 +129,7 @@ /datum/brain_trauma/special/psychotic_brawling/on_lose() ..() psychotic_brawling.remove(owner) - QDEL_NULL(psychotic_brawling) \ No newline at end of file + QDEL_NULL(psychotic_brawling) + +/datum/brain_trauma/special/psychotic_brawling/bath_salts + name = "Chemical Violent Psychosis" \ No newline at end of file diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 0886aacb06..7e85580342 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -258,12 +258,19 @@ var/mob/living/L = M L.add_trait(TRAIT_STUNIMMUNE, id) L.add_trait(TRAIT_SLEEPIMMUNE, id) + if(iscarbon(L)) + var/mob/living/carbon/C = L + C.gain_trauma(/datum/brain_trauma/special/psychotic_brawling/bath_salts, TRAUMA_RESILIENCE_ABSOLUTE) /datum/reagent/drug/bath_salts/on_mob_delete(mob/M) if(isliving(M)) var/mob/living/L = M L.remove_trait(TRAIT_STUNIMMUNE, id) L.remove_trait(TRAIT_SLEEPIMMUNE, id) + if(iscarbon(L)) + var/mob/living/carbon/C = L + for(var/datum/brain_trauma/special/psychotic_brawling/bath_salts/T in C.get_traumas()) + qdel(T) ..() /datum/reagent/drug/bath_salts/on_mob_life(mob/living/M) @@ -271,8 +278,7 @@ if(prob(5)) to_chat(M, "[high_message]") M.adjustStaminaLoss(-5, 0) - M.adjustBrainLoss(0.5) - M.adjustToxLoss(0.1, 0) + M.adjustBrainLoss(4) M.hallucination += 10 if(M.canmove && !ismovableatom(M.loc)) step(M, pick(GLOB.cardinals))