From f5784b72a205491665bfc4ca8aa0543c94b661e4 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sat, 8 Aug 2015 19:59:31 -0400 Subject: [PATCH] Chemistry Tweaks --- code/modules/reagents/Chemistry-Reagents.dm | 18 ++++++++++-- code/modules/reagents/newchem/drugs.dm | 14 ++++++--- code/modules/reagents/newchem/medicine.dm | 32 ++++++++++++--------- code/modules/reagents/newchem/other.dm | 6 ++++ code/modules/reagents/newchem/toxins.dm | 13 ++++++--- 5 files changed, 59 insertions(+), 24 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index d851dfcbece..6aa10fd29bb 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -757,6 +757,8 @@ datum if(volume > 200) M << "You pass out from hyperglycemic shock!" M.Paralyse(1) + if(prob(8)) + M.adjustToxLoss(rand(1,2)) ..() return @@ -770,7 +772,6 @@ datum on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - M.adjustToxLoss(1*REM) M.adjustFireLoss(1) ..() return @@ -1176,7 +1177,9 @@ datum on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - M.adjustToxLoss(3*REM) + M.adjustToxLoss(1*REM) + if(holder.has_reagent("epinephrine")) + holder.remove_reagent("epinephrine", 2) ..() return @@ -1270,6 +1273,8 @@ datum M.AdjustParalysis(-1) M.AdjustStunned(-1) M.AdjustWeakened(-1) + if(prob(50)) + M.adjustBrainLoss(-1.0) ..() return @@ -1746,6 +1751,15 @@ datum reagent_state = SOLID color = "#B1B0B0" + overdose_process(var/mob/living/M as mob) + if(volume > 100) + if(prob(70)) + M.adjustBrainLoss(1) + if(prob(8)) + M.adjustToxLoss(rand(1,2)) + ..() + return + blackpepper name = "Black Pepper" id = "blackpepper" diff --git a/code/modules/reagents/newchem/drugs.dm b/code/modules/reagents/newchem/drugs.dm index c33bf039808..f858cc41797 100644 --- a/code/modules/reagents/newchem/drugs.dm +++ b/code/modules/reagents/newchem/drugs.dm @@ -51,6 +51,11 @@ M.AdjustParalysis(-2) M.AdjustStunned(-2) M.AdjustWeakened(-2) + if(prob(8)) + M.reagents.add_reagent("methamphetamine",2) + if(prob(4)) + M.Jitter(10) + M.adjustToxLoss(1.0) ..() return /datum/reagent/crank/overdose_process(var/mob/living/M as mob) @@ -167,13 +172,14 @@ var/high_message = pick("You feel hyper.", "You feel like you need to go faster.", "You feel like you can run the world.") if(prob(5)) M << "[high_message]" - M.AdjustParalysis(-2) - M.AdjustStunned(-2) - M.AdjustWeakened(-2) + M.AdjustParalysis(-2.5) + M.AdjustStunned(-2.5) + M.AdjustWeakened(-2.5) M.adjustStaminaLoss(-2) M.status_flags |= GOTTAGOREALLYFAST M.Jitter(3) - M.adjustBrainLoss(0.5) + if(prob(50)) + M.adjustBrainLoss(1.0) if(prob(5)) M.emote(pick("twitch", "shiver")) ..() diff --git a/code/modules/reagents/newchem/medicine.dm b/code/modules/reagents/newchem/medicine.dm index 98e3bc2cc16..3790abca26b 100644 --- a/code/modules/reagents/newchem/medicine.dm +++ b/code/modules/reagents/newchem/medicine.dm @@ -10,7 +10,7 @@ datum/reagent/silver_sulfadiazine description = "This antibacterial compound is used to treat burn victims." reagent_state = LIQUID color = "#F0C814" - metabolization_rate = 2 + metabolization_rate = 3 datum/reagent/silver_sulfadiazine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(iscarbon(M)) @@ -37,7 +37,7 @@ datum/reagent/styptic_powder description = "Styptic (aluminium sulfate) powder helps control bleeding and heal physical wounds." reagent_state = LIQUID color = "#C8A5DC" - metabolization_rate = 2 + metabolization_rate = 3 datum/reagent/styptic_powder/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(iscarbon(M)) @@ -55,8 +55,7 @@ datum/reagent/styptic_powder/reaction_mob(var/mob/living/M as mob, var/method=TO datum/reagent/styptic_powder/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - if(prob(55)) - M.adjustBruteLoss(-8*REM) + M.adjustBruteLoss(-2*REM) ..() return @@ -111,9 +110,10 @@ datum/reagent/charcoal datum/reagent/charcoal/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom M.adjustToxLoss(-1.5*REM) - for(var/datum/reagent/R in M.reagents.reagent_list) - if(R != src) - M.reagents.remove_reagent(R.id,1) + if(prob(50)) + for(var/datum/reagent/R in M.reagents.reagent_list) + if(R != src) + M.reagents.remove_reagent(R.id,1) ..() return @@ -173,6 +173,8 @@ datum/reagent/omnizine/on_mob_life(var/mob/living/M as mob) M.adjustOxyLoss(-1*REM) M.adjustBruteLoss(-2*REM) M.adjustFireLoss(-2*REM) + if(prob(50)) + M.losebreath -= 1 ..() return @@ -249,10 +251,11 @@ datum/reagent/pen_acid/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom if(M.radiation > 0) M.radiation -= 7 - if(prob(70)) + if(prob(75)) M.adjustToxLoss(-4*REM) if(prob(33)) M.adjustBruteLoss(1*REM) + M.adjustFireLoss(1*REM) if(M.radiation < 0) M.radiation = 0 for(var/datum/reagent/R in M.reagents.reagent_list) @@ -280,16 +283,15 @@ datum/reagent/sal_acid datum/reagent/sal_acid/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - if(M.getBruteLoss() < 50) - if(prob(50)) - M.adjustBruteLoss(-1*REM) + if(prob(55)) + M.adjustBruteLoss(-2*REM) ..() return datum/reagent/sal_acid/overdose_process(var/mob/living/M as mob) - if(M.getBruteLoss() < 50) - if(prob(50)) - M.adjustBruteLoss(2*REM) + if(volume > 25) + if(prob(8)) + M.adjustToxLoss(rand(1,2)) ..() return @@ -786,6 +788,8 @@ datum/reagent/antihol/on_mob_life(var/mob/living/M as mob) M.slurring = 0 M.confused = 0 M.reagents.remove_reagent("ethanol", 8) + if(M.health < 25) + M.adjustToxLoss(-2.0) ..() /datum/chemical_reaction/antihol diff --git a/code/modules/reagents/newchem/other.dm b/code/modules/reagents/newchem/other.dm index 17245f0a9ee..6b63bb397f2 100644 --- a/code/modules/reagents/newchem/other.dm +++ b/code/modules/reagents/newchem/other.dm @@ -61,6 +61,12 @@ datum/reagent/acetone reagent_state = LIQUID color = "#474747" +/datum/reagent/acetone/on_mob_life(var/mob/living/M as mob) + if(!M) M = holder.my_atom + M.adjustToxLoss(1.5) + ..() + return + /datum/chemical_reaction/acetone name = "acetone" id = "acetone" diff --git a/code/modules/reagents/newchem/toxins.dm b/code/modules/reagents/newchem/toxins.dm index 54bd296a1ea..bf1d964c971 100644 --- a/code/modules/reagents/newchem/toxins.dm +++ b/code/modules/reagents/newchem/toxins.dm @@ -94,8 +94,11 @@ datum/reagent/venom datum/reagent/venom/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - M.adjustToxLoss((0.1*volume)*REM) - M.adjustBruteLoss((0.1*volume)*REM) + M.adjustToxLoss(1*REM) + M.adjustBruteLoss(1*REM) + if(volume >= 20) + M.adjustToxLoss(1*REM) + M.adjustBruteLoss(1*REM) if(prob(25)) M.reagents.add_reagent("histamine",rand(5,10)) ..() @@ -347,8 +350,10 @@ datum/reagent/pancuronium/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom if(current_cycle >= 10) M.Weaken(3) - if(prob(7)) - M.losebreath += rand(3,5) + if(prob(10)) + M.losebreath += 1 + if(prob(7)) + M.losebreath += 3 ..() return