From d286d20467ebbfa7345895c997e4aa948af9a50f Mon Sep 17 00:00:00 2001 From: Luc <89928798+lewcc@users.noreply.github.com> Date: Wed, 29 Nov 2023 13:38:06 -0500 Subject: [PATCH] Adds an overdose to diphenhydramine (#23263) * adds overdose to diphenhydramine * more hallucinations * better hallucination checks * Remove the copypasted effect * you saw nothing * Update code/modules/reagents/chemistry/reagents/medicine.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> * Update code/modules/reagents/chemistry/reagents/medicine.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> --------- Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> --- .../reagents/chemistry/reagents/medicine.dm | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/code/modules/reagents/chemistry/reagents/medicine.dm b/code/modules/reagents/chemistry/reagents/medicine.dm index 259512c15f6..dd1ef9b10c0 100644 --- a/code/modules/reagents/chemistry/reagents/medicine.dm +++ b/code/modules/reagents/chemistry/reagents/medicine.dm @@ -593,6 +593,8 @@ color = "#5BCBE1" addiction_chance = 1 addiction_threshold = 10 + allowed_overdose_process = TRUE + overdose_threshold = 35 harmless = FALSE taste_description = "antihistamine" @@ -608,6 +610,44 @@ M.visible_message("[M] looks a bit dazed.") return ..() +/datum/reagent/medicine/diphenhydramine/overdose_process(mob/living/M, severity) + var/list/overdose_info = ..() + var/effect = overdose_info[REAGENT_OVERDOSE_EFFECT] + var/update_flags = overdose_info[REAGENT_OVERDOSE_FLAGS] + if(severity == 1) + if(effect <= 2) + to_chat(M, "You feel parched.") + else if(effect <= 3) + to_chat(M, "You feel a little off.") + M.Dizzy(10 SECONDS) + else if(effect <= 5) + to_chat(M, "You feel a sudden head rush.") + M.emote("faint") + else if(effect <= 8) + M.Druggy(30 SECONDS) + + else if(severity == 2) + if(effect <= 15) + M.AdjustHallucinate(30 SECONDS) + if(effect <= 4) + M.visible_message("[M] suddenly and violently vomits!") + if(ishuman(M)) + var/mob/living/carbon/human/H = M + H.vomit(20) + else if(effect <= 10) + M.visible_message( + "[M] seems to be itching themselves incessantly!", + "You feel bugs crawling under your skin!" + ) + M.emote("scream") + else if(effect <= 15) + to_chat(M, "You feel a wave of drowsiness wash over you.") + M.SetSleeping(5 SECONDS) + else if(effect <= 20) + to_chat(M, "Something doesn't feel quite right!") + M.Druggy(30 SECONDS) + return list(effect, update_flags) + /datum/reagent/medicine/morphine name = "Morphine" id = "morphine"