From e93fd1efe88a2424bb5922461f9055c690931c2f Mon Sep 17 00:00:00 2001 From: Sierra Helper <125094432+SierraHelper@users.noreply.github.com> Date: Sun, 24 Nov 2024 06:23:50 +0300 Subject: [PATCH] [MIRROR] Hyperzine reacts negatively with opiates (#2783) Co-authored-by: Ryan180602 <50071611+Ryan180602@users.noreply.github.com> Co-authored-by: Lexanx <61974560+Lexanx@users.noreply.github.com> --- .../Chemistry-Reagents-Medicine.dm | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm index 53cee3af9f918..f874f0d22ed7c 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm @@ -299,6 +299,9 @@ if(boozed) M.add_chemical_effect(CE_ALCOHOL_TOXIC, 1) M.add_chemical_effect(CE_BREATHLOSS, 0.1 * boozed) //drinking and opiating makes breathing kinda hard + if(isfast(M)) + M.add_chemical_effect(CE_BREATHLOSS, 0.5) + M.add_chemical_effect(CE_SLOWDOWN, 2) //hyperzine reacts negatively with opiates /datum/reagent/tramadol/overdose(mob/living/carbon/M) ..() @@ -308,6 +311,10 @@ M.add_chemical_effect(CE_BREATHLOSS, 0.6) //Have trouble breathing, need more air if(isboozed(M)) M.add_chemical_effect(CE_BREATHLOSS, 0.2) //Don't drink and OD on opiates folks + if(isfast(M)) + M.add_chemical_effect(CE_NOPULSE, 1) + var/obj/item/organ/internal/heart = M.internal_organs_by_name[BP_HEART] //heart damage + arrest + heart.take_internal_damage(heart.max_damage * 0.045) /datum/reagent/tramadol/proc/isboozed(mob/living/carbon/M) . = 0 @@ -321,6 +328,16 @@ if(booze.strength < 40) //liquor stuff hits harder return 2 +/datum/reagent/tramadol/proc/isfast(mob/living/carbon/M) + . = FALSE + var/datum/reagents/ingested = M.get_ingested_reagents() + if(!ingested) + return FALSE + var/list/pool = M.reagents.reagent_list | ingested.reagent_list + for(var/datum/reagent/hyperzine/fast in pool) + if(M.chem_doses[fast.type]) + return TRUE + /datum/reagent/tramadol/oxycodone name = "Oxycodone" description = "An effective and very addictive painkiller. Don't mix with alcohol." @@ -488,7 +505,7 @@ /datum/reagent/hyperzine name = "Hyperzine" - description = "Hyperzine is a highly effective, long lasting, muscle stimulant." + description = "Hyperzine is a highly effective, long lasting, muscle stimulant. Do not mix with opiates!" taste_description = "acid" reagent_state = LIQUID color = "#ff3300"