diff --git a/code/modules/reagents/newchem/drugs.dm b/code/modules/reagents/newchem/drugs.dm index 8ba994a1a24..0ca9a874c2b 100644 --- a/code/modules/reagents/newchem/drugs.dm +++ b/code/modules/reagents/newchem/drugs.dm @@ -97,6 +97,7 @@ required_reagents = list("diphenhydramine" = 1, "ammonia" = 1, "lithium" = 1, "sacid" = 1, "fuel" = 1) result_amount = 5 mix_message = "The mixture violently reacts, leaving behind a few crystalline shards." + mix_sound = 'sound/goonstation/effects/crystalshatter.ogg' min_temp = 390 /datum/chemical_reaction/crank/on_reaction(var/datum/reagents/holder, var/created_volume) @@ -217,7 +218,7 @@ if(prob(20)) M.emote("laugh") if(prob(33)) - M.visible_message("[M]'s hands flip out and flail everywhere!") + M.visible_message("[M]'s hands flip out and flail everywhere!") var/obj/item/I = M.get_active_hand() if(I) M.drop_item() @@ -400,7 +401,7 @@ M.adjustStaminaLoss(-40) if(prob(90)) M.adjustToxLoss(1) - if (prob(5)) + if(prob(5)) M.emote(pick("twitch", "shake", "tremble","quiver", "twitch_s")) var/high_message = pick("really buff", "on top of the world","like you're made of steel", "energized", "invigorated", "full of energy") if(prob(8)) @@ -484,7 +485,7 @@ M.AdjustStunned(-1.5) M.AdjustWeakened(-1.5) M.adjustStaminaLoss(-1.5) - M.setSleeping(0) + M.SetSleeping(0) ..() return @@ -499,11 +500,11 @@ M.emote("laugh") M.adjustToxLoss(1) if(2) - M << "[M] can't seem to control their legs!" + M << "[M] can't seem to control their legs!" M.Weaken(8) M.adjustToxLoss(1) if(3) - M << "[M]'s hands flip out and flail everywhere!" + M << "[M]'s hands flip out and flail everywhere!" M.drop_l_hand() M.drop_r_hand() M.adjustToxLoss(1) @@ -559,7 +560,7 @@ if(prob(20)) M.emote("ping") if(prob(33)) - M.visible_message("[M]'s hands flip out and flail everywhere!") + M.visible_message("[M]'s hands flip out and flail everywhere!") var/obj/item/I = M.get_active_hand() if(I) M.drop_item() diff --git a/code/modules/reagents/newchem/food.dm b/code/modules/reagents/newchem/food.dm index 306341f7476..889d03e92c7 100644 --- a/code/modules/reagents/newchem/food.dm +++ b/code/modules/reagents/newchem/food.dm @@ -11,7 +11,7 @@ datum/reagent/questionmark/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) return if(method == INGEST) M.Weaken(2) - M << "Ugh! Eating that was a terrible idea!" + M << "Ugh! Eating that was a terrible idea!" datum/reagent/egg name = "Egg" @@ -201,11 +201,11 @@ datum/reagent/fungus/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) if(method == INGEST) var/ranchance = rand(1,10) if(ranchance == 1) - M << "You feel very sick." + M << "You feel very sick." M.reagents.add_reagent("toxin", rand(1,5)) - else if (ranchance <= 5 && ranchance != 1) - M << "That tasted absolutely FOUL." - else M << "Yuck!" + else if(ranchance <= 5 && ranchance != 1) + M << "That tasted absolutely FOUL." + else M << "Yuck!" /datum/reagent/chicken_soup name = "Chicken soup" @@ -232,12 +232,12 @@ datum/reagent/msg/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) if(!istype(M, /mob/living)) return if(method == INGEST) - M << "That tasted amazing!" + M << "That tasted amazing!" /datum/reagent/msg/on_mob_life(var/mob/living/M as mob) if(prob(5)) - if (prob(10)) + if(prob(10)) M.adjustToxLoss(rand(2.4)) if(prob(7)) M << "A horrible migraine overpowers you." @@ -281,7 +281,7 @@ datum/reagent/cheese/reaction_turf(var/turf/T, var/volume) /datum/reagent/fake_cheese/overdose_process(var/mob/living/M as mob) if(prob(8)) - M << "You feel something squirming in your stomach. Your thoughts turn to cheese and you begin to sweat." + M << "You feel something squirming in your stomach. Your thoughts turn to cheese and you begin to sweat." M.adjustToxLoss(rand(1,2)) ..() @@ -379,7 +379,7 @@ datum/reagent/ectoplasm/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) return if(method == INGEST) var/spooky_eat = pick("Ugh, why did you eat that? Your mouth feels haunted. Haunted with bad flavors.", "Ugh, why did you eat that? It has the texture of ham aspic. From the 1950s. Left out in the sun.", "Ugh, why did you eat that? It tastes like a ghost fart.", "Ugh, why did you eat that? It tastes like flavor died.") - M << "[spooky_eat]" + M << "[spooky_eat]" /datum/reagent/ectoplasm/on_mob_life(var/mob/living/M as mob) var/spooky_message = pick("You notice something moving out of the corner of your eye, but nothing is there...", "Your eyes twitch, you feel like something you can't see is here...", "You've got the heebie-jeebies.", "You feel uneasy.", "You shudder as if cold...", "You feel something gliding across your back...") @@ -577,11 +577,11 @@ datum/reagent/pepperoni/reaction_mob(var/mob/living/M, var/method=TOUCH, var/vol if(holder.get_reagent_amount(src.id) >= 25 && prob(holder.get_reagent_amount(src.id)*0.15)) M << "Your chest feels [pick("weird","uncomfortable","nasty","gross","odd","unusual","warm")]!" M.adjustToxLoss(rand(1,2)) - else if (holder.get_reagent_amount(src.id) >= 45 && prob(holder.get_reagent_amount(src.id)*0.08)) + else if(holder.get_reagent_amount(src.id) >= 45 && prob(holder.get_reagent_amount(src.id)*0.08)) M << "Your chest [pick("hurts","stings","aches","burns")]!" M.adjustToxLoss(rand(2,4)) M.stunned ++ - else if (holder.get_reagent_amount(src.id) >= 150 && prob(holder.get_reagent_amount(src.id)*0.01)) + else if(holder.get_reagent_amount(src.id) >= 150 && prob(holder.get_reagent_amount(src.id)*0.01)) M << "Your chest is burning with pain!" M.Stun(1) M.Weaken(1) diff --git a/code/modules/reagents/newchem/medicine.dm b/code/modules/reagents/newchem/medicine.dm index 2a7e0517f50..b85f73edf27 100644 --- a/code/modules/reagents/newchem/medicine.dm +++ b/code/modules/reagents/newchem/medicine.dm @@ -596,7 +596,7 @@ datum/reagent/atropine/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(-1) M.adjustBruteLoss(-3*REM) M.adjustFireLoss(-3*REM) - else if (M.health > -60) + else if(M.health > -60) M.adjustToxLoss(1) M.reagents.remove_reagent("sarin", 20) ..() diff --git a/code/modules/reagents/newchem/newchem_procs.dm b/code/modules/reagents/newchem/newchem_procs.dm index aa3493df350..fd29db191f4 100644 --- a/code/modules/reagents/newchem/newchem_procs.dm +++ b/code/modules/reagents/newchem/newchem_procs.dm @@ -83,7 +83,7 @@ datum/reagents/proc/metabolize(var/mob/M) R.addiction_act_stage4(M) R.addiction_stage++ if(R.addiction_stage > 40) - M << "You feel like you've gotten over your need for [R.name]." + M << "You feel like you've gotten over your need for [R.name]." addiction_list.Remove(R) addiction_tick++ update_total() @@ -132,22 +132,22 @@ datum/reagent/proc/overdose_start(var/mob/living/M as mob) datum/reagent/proc/addiction_act_stage1(var/mob/living/M as mob) if(prob(30)) - M << "You feel like some [name] right about now." + M << "You feel like some [name] right about now." return datum/reagent/proc/addiction_act_stage2(var/mob/living/M as mob) if(prob(30)) - M << "You feel like you need [name]. You just can't get enough." + M << "You feel like you need [name]. You just can't get enough." return datum/reagent/proc/addiction_act_stage3(var/mob/living/M as mob) if(prob(30)) - M << "You have an intense craving for [name]." + M << "You have an intense craving for [name]." return datum/reagent/proc/addiction_act_stage4(var/mob/living/M as mob) if(prob(30)) - M << "You're not feeling good at all! You really need some [name]." + M << "You're not feeling good at all! You really need some [name]." return /datum/reagent/proc/reagent_deleted() diff --git a/code/modules/reagents/newchem/other.dm b/code/modules/reagents/newchem/other.dm index 3f6ae65d250..07524fd1767 100644 --- a/code/modules/reagents/newchem/other.dm +++ b/code/modules/reagents/newchem/other.dm @@ -265,7 +265,7 @@ datum/reagent/super_hairgrownium/on_mob_life(var/mob/living/M as mob) H.unEquip(H.wear_mask) var/obj/item/clothing/mask/fakemoustache = new /obj/item/clothing/mask/fakemoustache H.equip_to_slot(fakemoustache, slot_wear_mask) - H << "Hair bursts forth from your every follicle!" + H << "Hair bursts forth from your every follicle!" ..() return @@ -286,25 +286,20 @@ datum/reagent/fartonium datum/reagent/fartonium/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - M.emote("fart") + + if(prob(66)) + M.emote("fart") + if(holder.has_reagent("simethicone")) - if(prob(30)) - switch(pick(1,2)) - if(1) - M << "Something isn't right!" - M.adjustBruteLoss(1) - if(2) - M.custom_emote(1,"strains, but nothing happens.") - M.adjustBruteLoss(2) - if(3) - M.emote("scream") - M.adjustBruteLoss(2) - if(4) - M << "Oh gosh, the pain!" - M.adjustBruteLoss(1) - if(5) - M << "THE PAIN!" - M.adjustBruteLoss(1) + if(prob(25)) + M << "[pick("Oh god, something doesn't feel right!", "IT HURTS!", "FUCK!", "Something is seriously wrong!", "THE PAIN!", "You feel like you're gunna die!")]" + M.adjustBruteLoss(1) + if(prob(10)) + M.custom_emote(1,"strains, but nothing happens.") + M.adjustBruteLoss(2) + if(prob(5)) + M.emote("scream") + M.adjustBruteLoss(4) ..() return diff --git a/code/modules/reagents/newchem/pyro.dm b/code/modules/reagents/newchem/pyro.dm index 12a8266693e..719d95b6c3c 100644 --- a/code/modules/reagents/newchem/pyro.dm +++ b/code/modules/reagents/newchem/pyro.dm @@ -541,7 +541,7 @@ datum/reagent/pyrosium/on_tick() /datum/chemical_reaction/azide/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) - explosion(location,0,1,3) + explosion(location,0,1,4) return datum/reagent/firefighting_foam @@ -609,7 +609,7 @@ datum/reagent/firefighting_foam/reaction_obj(var/obj/O, var/volume) /datum/chemical_reaction/clf3_firefighting/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) - explosion(location,0,0,3) + explosion(location,-1,0,2) return /datum/chemical_reaction/shock_explosion diff --git a/code/modules/reagents/newchem/toxins.dm b/code/modules/reagents/newchem/toxins.dm index a9006bfcb3f..3bcd480814f 100644 --- a/code/modules/reagents/newchem/toxins.dm +++ b/code/modules/reagents/newchem/toxins.dm @@ -27,34 +27,49 @@ reagent_state = LIQUID color = "#E7C4C4" metabolization_rate = 0.2 - overdose_threshold = 30 + overdose_threshold = 40 /datum/reagent/histamine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) //dumping histamine on someone is VERY mean. if(iscarbon(M)) if(method == TOUCH) M.reagents.add_reagent("histamine",10) + else + M << "You feel a burning sensation in your throat..." + M.emote("drool") /datum/reagent/histamine/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - switch(pick(1, 2, 3, 4)) - if(1) - M << "You can barely see!" - M.eye_blurry = 3 - if(2) - M.emote("cough") - if(3) - M.emote("sneeze") - if(4) - if(prob(75)) - M << "You scratch at an itch." - M.adjustBruteLoss(2*REM) + if(prob(20)) + M.emote(pick("twitch", "grumble", "sneeze", "cough")) + if(prob(10)) + M << "Your eyes itch." + M.emote(pick("blink", "sneeze")) + M.eye_blurry += 3 + if(prob(10)) + M.visible_message("[M] scratches at an itch.") + M.adjustBruteLoss(1) + M.emote("grumble") + if(prob(5)) + M << "You're getting a rash!" + M.adjustBruteLoss(2) ..() return /datum/reagent/histamine/overdose_process(var/mob/living/M as mob) - M.adjustOxyLoss(pick(1,3)*REM) - M.adjustBruteLoss(pick(1,3)*REM) - M.adjustToxLoss(pick(1,3)*REM) + if(prob(2)) + M << "You feel mucus running down the back of your throat." + M.adjustToxLoss(1) + M.jitteriness += 4 + M.emote("sneeze", "cough") + else if(prob(4)) + M.stuttering += rand(0,5) + if(prob(25)) + M.emote(pick("choke","gasp")) + M.adjustOxyLoss(5) + else if(prob(7)) + M << "Your chest hurts!" + M.emote(pick("cough","gasp")) + M.adjustOxyLoss(3) ..() return @@ -86,7 +101,7 @@ /datum/reagent/venom name = "Venom" id = "venom" - description = "Will deal scaling amounts of Toxin and Brute damage over time. 25% chance to decay into 5-10 histamine." + description = "An incredibly potent poison. Origin unknown." reagent_state = LIQUID color = "#CF3600" metabolization_rate = 0.2 @@ -94,20 +109,27 @@ /datum/reagent/venom/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - 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)) + if(volume < 20) + M.adjustToxLoss(1) + M.adjustBruteLoss(1) + else if(volume < 40) + if(prob(8)) + M.fakevomit() + M.adjustToxLoss(2) + M.adjustBruteLoss(2) ..() return /datum/reagent/venom/overdose_process(var/mob/living/M as mob) if(volume >= 40) if(prob(4)) - M.gib() + M.visible_message("[M] starts convulsing violently!", "You feel as if your body is tearing itself apart!") + M.Weaken(15) + M.jitteriness += 1000 + spawn(rand(20, 100)) + M.gib() ..() return @@ -143,7 +165,7 @@ else if(prob(10)) M.adjustBrainLoss(1) - if (prob(10)) + if(prob(10)) M.emote("drool") M.adjustToxLoss(1) ..() @@ -170,16 +192,17 @@ /datum/reagent/cyanide/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom + M.adjustToxLoss(1.5*REM) if(prob(5)) M.emote("drool") - M.adjustToxLoss(1.5*REM) if(prob(10)) - M << "You cannot breathe!" + M << "You cannot breathe!" M.losebreath += 1 + M.emote("gasp") if(prob(8)) - M << "You feel horrendously weak!" + M << "You feel horrendously weak!" M.Stun(2) - M.adjustToxLoss(2*REM) + M.adjustToxLoss(2) ..() return @@ -205,17 +228,28 @@ /datum/reagent/itching_powder/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - if(prob(rand(5,50))) - M << "You scratch at your head." - M.adjustBruteLoss(0.2*REM) - if(prob(rand(5,50))) - M << "You scratch at your leg." - M.adjustBruteLoss(0.2*REM) - if(prob(rand(5,50))) - M << "You scratch at your arm." - M.adjustBruteLoss(0.2*REM) + if(prob(25)) + M.emote(pick("twitch", "laugh", "sneeze", "cry")) + if(prob(20)) + M << "Something tickles!" + M.emote(pick("laugh", "giggle")) + if(prob(15)) + M.visible_message("[M] scratches at an itch.") + M.adjustBruteLoss(1) + M.Stun(rand(0,1)) + M.emote("grumble") + if(prob(10)) + M << "So itchy!" + M.adjustBruteLoss(2) if(prob(6)) - M.reagents.add_reagent("histamine",rand(1,3)) + M.reagents.add_reagent("histamine", rand(1,3)) + if(prob(2)) + M << "AHHHHHH!" + M.adjustBruteLoss(5) + M.Weaken(5) + M.jitteriness += 6 + M.visible_message("[M] falls to the floor, scratching themselves violently!") + M.emote("scream") ..() return @@ -251,7 +285,7 @@ var/mob/living/carbon/human/H = M if(volume < 5) - M << "The blueish acidic substance stings you, but isn't concentrated enough to harm you!" + M << "The blueish acidic substance stings you, but isn't concentrated enough to harm you!" if(volume >=5 && volume <=10) if(!H.unacidable) @@ -316,23 +350,24 @@ /datum/reagent/initropidril/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom if(prob(33)) - switch(pick(1,2)) - if(1) - M << "You feel horrendously weak!" - M.Stun(2) - if(2) - M.adjustToxLoss(rand(5,25)) + M.adjustToxLoss(rand(5,25)) + if(prob(33)) + M << "You feel horribly weak." + M.Stun(2) if(prob(10)) - switch(pick(1,2)) - if(1) - M << "You cannot breathe!" - M.losebreath += 5 - M.adjustOxyLoss(10) - if(2) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(!H.heart_attack) - H.heart_attack = 1 // rip in pepperoni + M << "You cannot breathe!" + M.adjustOxyLoss(10) + M.losebreath++ + if(prob(10)) + M << "Your chest is burning with pain!" + M.adjustOxyLoss(10) + M.losebreath++ + M.Stun(3) + M.Weaken(2) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(!H.heart_attack) + H.heart_attack = 1 // rip in pepperoni ..() return @@ -347,9 +382,10 @@ /datum/reagent/concentrated_initro/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom if(volume >=5) - var/mob/living/carbon/human/H = M - if(!H.heart_attack) - H.heart_attack = 1 // rip in pepperoni + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(!H.heart_attack) + H.heart_attack = 1 // rip in pepperoni /datum/reagent/pancuronium name = "Pancuronium" @@ -369,7 +405,7 @@ if(prob(8)) M << "You feel [pick("weak", "horribly weak", "numb", "like you can barely move", "tingly")]." M.Stun(1) - else if (prob(8)) + else if(prob(8)) M.emote(pick("drool", "tremble")) if(11 to INFINITY) M.Stun(20) @@ -396,18 +432,18 @@ /datum/reagent/sodium_thiopental/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom switch(current_cycle) - if (1) + if(1) M.emote("drool") M.confused = max(M.confused, 5) - if (2 to 4) + if(2 to 4) M.drowsyness = max(M.drowsyness, 20) - if (5) + if(5) M.emote("faint") M.Weaken(5) - if (6 to INFINITY) + if(6 to INFINITY) M.Paralyse(20) M.jitteriness = max(0, M.jitteriness-50) - if (prob(10)) + if(prob(10)) M.emote("drool") M.adjustBrainLoss(1) ..() @@ -430,7 +466,7 @@ M.emote("yawn") if(6 to 9) M.eye_blurry += 5 - if (prob(35)) + if(prob(35)) M.emote("yawn") if(10) M.emote("faint") @@ -462,7 +498,7 @@ M.jitteriness = max(0, M.jitteriness-30) switch(current_cycle) if(1 to 10) - if (prob(7)) + if(prob(7)) M.emote("yawn") if(11 to 20) M.drowsyness = max(M.drowsyness, 20) @@ -512,13 +548,18 @@ /datum/reagent/lipolicide/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - if(!holder.has_reagent("nutriment")) - if(prob(30)) - M.adjustToxLoss(1) - M.nutrition -= 10 * REAGENTS_METABOLISM - M.overeatduration = 0 - if(M.nutrition < 0)//Prevent from going into negatives. - M.nutrition = 0 + if(!M.nutrition) + switch(rand(1,3)) + if(1) + M << "You feel hungry..." + if(2) + M.adjustToxLoss(1) + M << "Your stomach grumbles painfully!" + else + if(prob(60)) + var/fat_to_burn = max(round(M.nutrition/100,1), 5) + M.nutrition = max(0, M.nutrition-fat_to_burn) + M.overeatduration = 0 ..() return @@ -532,8 +573,8 @@ /datum/reagent/coniine/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - M.losebreath += 5 M.adjustToxLoss(2) + M.losebreath += 5 ..() return @@ -559,14 +600,14 @@ if(prob(8)) M << "You feel [pick("weak", "horribly weak", "numb", "like you can barely move", "tingly")]." M.Stun(1) - else if (prob(8)) + else if(prob(8)) M.emote(pick("drool","pale", "gasp")) if(11 to INFINITY) M.Stun(30) M.drowsyness = max(M.drowsyness, 20) if(prob(20)) M.emote(pick("drool", "faint", "pale", "gasp", "collapse")) - else if (prob(8)) + else if(prob(8)) M << "You can't [pick("breathe", "move", "feel your legs", "feel your face", "feel anything")]!" M.losebreath++ ..() @@ -631,7 +672,7 @@ M.adjustToxLoss(1) M.adjustBrainLoss(1) M.Weaken(4) - if (prob(8)) + if(prob(8)) M.fakevomit() M.adjustToxLoss(1) M.adjustBrainLoss(1) @@ -766,14 +807,12 @@ /datum/reagent/toxic_slurry/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom if(prob(10)) - M.adjustToxLoss(rand(2,4)) + M.adjustToxLoss(rand(2.4)) if(prob(7)) - switch(pick(1,2)) - if(1) - M.fakevomit(1) - if(2) - M.Stun(rand(4,10)) - M << "A horrible migraine overpowers you." + M << "A horrible migraine overpowers you." + M.Stun(rand(2,5)) + if(prob(7)) + M.fakevomit(1) ..() return @@ -788,21 +827,18 @@ if(!..()) return if(!M.dna) return //No robots, AIs, aliens, Ians or other mobs should be affected by this. src = null - if((method==TOUCH && prob(33)) || method==INGEST) - if(prob(98)) - randmutb(M) - else - randmutg(M) + if((method==TOUCH && prob(50)) || method==INGEST) + randmutb(M) domutcheck(M, null) M.UpdateAppearance() return /datum/reagent/glowing_slurry/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom - M.apply_effect(2*REM, IRRADIATE, 0, negate_armor = 1) + M.apply_effect(2, IRRADIATE, 0, negate_armor = 1) if(prob(15)) randmutb(M) - if(prob(5)) + if(prob(3)) randmutg(M) domutcheck(M, null) M.UpdateAppearance() @@ -820,9 +856,9 @@ /datum/reagent/ants/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) //NOT THE ANTS if(iscarbon(M)) if(method == TOUCH || method==INGEST) - M.adjustBruteLoss(4) - M.emote("scream") M << "OH SHIT ANTS!!!!" + M.emote("scream") + M.adjustBruteLoss(4) /datum/reagent/ants/on_mob_life(var/mob/living/M as mob) diff --git a/code/modules/reagents/oldchem/reagents/reagents_flammable.dm b/code/modules/reagents/oldchem/reagents/reagents_flammable.dm index 377fd17f340..361507d19e6 100644 --- a/code/modules/reagents/oldchem/reagents/reagents_flammable.dm +++ b/code/modules/reagents/oldchem/reagents/reagents_flammable.dm @@ -13,12 +13,6 @@ return ..() -/datum/reagent/fuel/on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.adjustToxLoss(1) - ..() - return - /datum/reagent/fuel/unholywater //if you somehow managed to extract this from someone, dont splash it on yourself and have a smoke name = "Unholy Water" id = "unholywater" @@ -84,13 +78,6 @@ T.overlays = image('icons/effects/effects.dmi',icon_state = "thermite") return -/datum/reagent/thermite/on_mob_life(var/mob/living/M as mob) - if(!M) M = holder.my_atom - M.adjustFireLoss(1) - ..() - return - - /datum/reagent/glycerol name = "Glycerol" id = "glycerol" diff --git a/code/modules/reagents/oldchem/reagents/reagents_food.dm b/code/modules/reagents/oldchem/reagents/reagents_food.dm index 0717d5dbb4f..e483cedbdc6 100644 --- a/code/modules/reagents/oldchem/reagents/reagents_food.dm +++ b/code/modules/reagents/oldchem/reagents/reagents_food.dm @@ -436,22 +436,25 @@ overdose_threshold = 200 // Hyperglycaemic shock /datum/reagent/sugar/on_mob_life(var/mob/living/M as mob) - if(prob(4)) - M.reagents.add_reagent("epinephrine", 1.2) + M.drowsyness = max(0, M.drowsyness-5) + if(current_cycle >= 90) + M.jitteriness += 2 if(prob(50)) M.AdjustParalysis(-1) M.AdjustStunned(-1) M.AdjustWeakened(-1) - if(current_cycle >= 90) - M.jitteriness += 2 + if(prob(4)) + M.reagents.add_reagent("epinephrine", 1.2) ..() return /datum/reagent/sugar/overdose_process(var/mob/living/M as mob) if(volume > 200) - M << "You pass out from hyperglycemic shock!" - M.Paralyse(1) + M << "You pass out from hyperglycemic shock!" + M.emote("collapse") + M.Paralyse(3) + M.Weaken(4) if(prob(8)) - M.adjustToxLoss(rand(1,2)) + M.adjustToxLoss(1) ..() return diff --git a/code/modules/reagents/oldchem/reagents/reagents_med.dm b/code/modules/reagents/oldchem/reagents/reagents_med.dm index e1971c0d941..ae6fd9bb8a3 100644 --- a/code/modules/reagents/oldchem/reagents/reagents_med.dm +++ b/code/modules/reagents/oldchem/reagents/reagents_med.dm @@ -99,8 +99,8 @@ if(M.bodytemperature < 265) M.adjustCloneLoss(-4) M.adjustOxyLoss(-10) - M.heal_organ_damage(12,12) M.adjustToxLoss(-3) + M.heal_organ_damage(12,12) M.status_flags &= ~DISFIGURED ..() return @@ -134,8 +134,4 @@ description = "An all-purpose antibiotic agent extracted from space fungus." reagent_state = LIQUID color = "#0AB478" - metabolization_rate = 0.2 - -/datum/reagent/spaceacillin/on_mob_life(var/mob/living/M as mob) - ..() - return \ No newline at end of file + metabolization_rate = 0.2 \ No newline at end of file diff --git a/code/modules/reagents/oldchem/reagents/reagents_toxin.dm b/code/modules/reagents/oldchem/reagents/reagents_toxin.dm index 0bdd25a4386..1013c237462 100644 --- a/code/modules/reagents/oldchem/reagents/reagents_toxin.dm +++ b/code/modules/reagents/oldchem/reagents/reagents_toxin.dm @@ -224,10 +224,7 @@ if(!M.dna) return //No robots, AIs, aliens, Ians or other mobs should be affected by this. src = null if((method==TOUCH && prob(33)) || method==INGEST) - if(prob(98)) - randmutb(M) - else - randmutg(M) + randmutb(M) domutcheck(M, null) M.UpdateAppearance() return @@ -327,7 +324,7 @@ var/mob/living/carbon/human/H = M if(volume < 10) - M << "The greenish acidic substance stings you, but isn't concentrated enough to harm you!" + M << "The greenish acidic substance stings you, but isn't concentrated enough to harm you!" if(volume >=10 && volume <=25) if(!H.unacidable) diff --git a/sound/goonstation/effects/crystalshatter.ogg b/sound/goonstation/effects/crystalshatter.ogg new file mode 100644 index 00000000000..4f0b4fb7942 Binary files /dev/null and b/sound/goonstation/effects/crystalshatter.ogg differ