diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index d49ddd57a1..53320e9460 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -1105,3 +1105,105 @@ id = "corazone" description = "A medication used to treat pain, fever, and inflammation, along with heart attacks." color = "#F5F5F5" + +/datum/reagent/medicine/ketrazine + name = "Ketrazine" + id = "ketrazine" + description = "A powerful and addictive combat stimulant, capable of healing grievous wounds and enabling the user to shrug off stuns and heavy weights by stimulating tendons and muscle groups; however the strain on the body causes severe lasting damage. Use only in life-or-death situations. Overdose is almost invariably fatal." + reagent_state = LIQUID + color = "#5F42F4" + metabolization_rate = 0.5 * REAGENTS_METABOLISM + overdose_threshold = 20 + addiction_threshold = 5 + +/datum/reagent/medicine/ketrazine/on_mob_life(mob/living/M) + M.status_flags |= IGNORESLOWDOWN + M.status_flags |= GOTTAGOFAST + M.adjustToxLoss(-3*REM, 0) + M.adjustBruteLoss(-5*REM, 0) + M.adjustFireLoss(-5*REM, 0) + M.adjustOxyLoss(-5*REM, 0) + M.AdjustStun(-80*REM, 0) + M.AdjustKnockdown(-70*REM, 0) + M.adjustStaminaLoss(-80*REM, 0) + M.AdjustUnconscious(-50*REM, 0) + M.adjustBrainLoss(0.5*REM,0) + switch(current_cycle) + if(2 to 12) + if(prob(15)) + to_chat(M, "You feel incredibly powerful! Nothing can stop you! ") + if(12) + to_chat(M, "Your muscles begin to ache terribly... " ) + if(14) + to_chat(M, "You feel like your body is being ripped to shreds! ") + if(15 to 25) + M.drowsyness += 3 + M.adjustBruteLoss(10*REM, 0) + M.adjustToxLoss(7*REM, 0) + if(25 to 30) + if(prob(33)) + to_chat(M, "The pain is unbearable! You can barely stand! ") + M.Sleeping(40, 0) + M.AdjustKnockdown(40*REM,0) + M.drop_all_held_items() + M.Dizzy(3) + M.drowsyness +=4 + M.adjustBruteLoss(15*REM,0) + M.adjustToxLoss(10*REM,0) + M.adjustStaminaLoss(30*REM,0) + if(30 to INFINITY) + if(prob(20)) + to_chat(M, "Your body can't handle the stress! ") + M.Sleeping(60, 0) + M.AdjustKnockdown(80*REM,0) + M.drop_all_held_items() + M.Dizzy(5) + M.drowsyness +=6 + M.adjustBruteLoss(20*REM,0) + M.adjustToxLoss(15*REM,0) + M.adjustStaminaLoss(40*REM,0) + M.losebreath +=2 + + + ..() + +/datum/reagent/medicine/ketrazine/overdose_process(mob/living/M) + if(prob(66)) + to_chat(M, " You feel a sense of impending doom. ") + M.drop_all_held_items() + M.Dizzy(6) + M.Jitter(7) + M.adjustOxyLoss(40*REM,0) + M.adjustBruteLoss(40*REM,0) + M.losebreath +=10 + ..() + +/datum/reagent/medicine/ketrazine/addiction_act_stage1(mob/living/M) + if(prob(33)) + to_chat(M, "You feel like you need more power... ") + M.drop_all_held_items() + M.Jitter(2) + M.Dizzy(2) + ..() + +/datum/reagent/medicine/ketrazine/addiction_act_stage2(mob/living/M) + if(prob(50)) + to_chat(M, "You feel weak and sore, you need something to amp you up! ") + M.drop_all_held_items() + M.adjustToxLoss(2*REM, 0) + M.adjustBruteLoss(4*REM,0) + M.adjustStaminaLoss(6*REM,0) + M.Dizzy(3) + M.Jitter(3) + ..() + +/datum/reagent/medicine/ketrazine/addiction_act_stage3(mob/living/M) + if(prob(66)) + to_chat(M, " You need ketrazine! You need it badly! You need it now! ") + M.drop_all_held_items() + M.adjustToxLoss(4*REM, 0) + M.adjustBruteLoss(5*REM,0) + M.adjustStaminaLoss(7*REM,0) + M.Dizzy(7) + M.Jitter(7) + ..() diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm index 7123267eb3..8bb62fb233 100644 --- a/code/modules/reagents/chemistry/recipes/medicine.dm +++ b/code/modules/reagents/chemistry/recipes/medicine.dm @@ -232,4 +232,13 @@ id = "morphine" results = list("morphine" = 3) required_reagents = list("carbon" = 2, "hydrogen" = 2, "nitrogen" = 1, "oxygen" = 1) - required_temp = 480 \ No newline at end of file + required_temp = 480 + +/datum/chemical_reaction/ketrazine + name = "Ketrazine" + id = "ketrazine" + results = list("ketrazine" = 3) + required_reagents = list("epinephrine" = 1, "ephedrine" = 1, "tricordazine" = 1, "atropine" = 1) + required_catalysts = list("gold" = 1) + required_temp = 520 + mix_message = "The solution fizzes and then settles into an oily, smooth, purple liquid."