mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-27 15:01:04 +01:00
Recreational Drug & Toxins Tweaks & Additions (#13129)
This took way too long.
This commit is contained in:
@@ -49,7 +49,30 @@
|
||||
fallback_specific_heat = 1.048
|
||||
|
||||
/decl/reagent/ammonia/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.adjustToxLoss(removed * 1.5)
|
||||
if(alien == IS_DIONA)
|
||||
M.adjustNutritionLoss(-removed*3)
|
||||
else
|
||||
if(prob(15))
|
||||
M.add_chemical_effect(CE_NEPHROTOXIC, 1)
|
||||
|
||||
/decl/reagent/ammonia/affect_breathe(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(alien == IS_DIONA)
|
||||
M.adjustNutritionLoss(-removed*3)
|
||||
else if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.adjustOxyLoss(2 * removed)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat burns!", "Your insides are on fire!", "Your feel a burning pain in your chest!")))
|
||||
else
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat stings a bit.", "You can taste something really digusting.", "Your chest doesn't feel so great.")))
|
||||
|
||||
/decl/reagent/ammonia/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(!(alien == IS_DIONA))
|
||||
M.adjustFireLoss(20)
|
||||
to_chat(M, SPAN_WARNING(pick("Your skin burns!", "The chemical is melting your skin!", "Wash it off, wash it off!")))
|
||||
remove_self(REAGENT_VOLUME(holder, type), holder)
|
||||
|
||||
/decl/reagent/carbon
|
||||
name = "Carbon"
|
||||
@@ -286,7 +309,7 @@
|
||||
|
||||
/decl/reagent/lithium
|
||||
name = "Lithium"
|
||||
description = "A chemical element, used as antidepressant."
|
||||
description = "A chemical element, used as an antidepressant."
|
||||
reagent_state = SOLID
|
||||
color = "#808080"
|
||||
taste_description = "metal"
|
||||
@@ -315,7 +338,7 @@
|
||||
fallback_specific_heat = 0.631
|
||||
|
||||
/decl/reagent/mercury/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 2*removed)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 1*removed)
|
||||
var/dose = M.chem_doses[type]
|
||||
if(dose > 1)
|
||||
if(prob(dose/2))
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/decl/reagent/space_drugs
|
||||
name = "Space Drugs"
|
||||
description = "Mercury Monolithium Sucrose, or space drugs, is a potent relaxant commonly found in Ambrosia plants. Lasts twice as long when inhaled."
|
||||
name = "Mercury Monolithium Sucrose"
|
||||
description = "Mercury Monolithium Sucrose, or MMS, is a synthetic relaxant. It's both abused and used as a chemical precursor. Lasts twice as long when inhaled."
|
||||
reagent_state = LIQUID
|
||||
color = "#60A584"
|
||||
metabolism = REM * 0.5
|
||||
@@ -9,6 +9,9 @@
|
||||
taste_mult = 0.4
|
||||
breathe_met = REM * 0.5 * 0.5
|
||||
|
||||
/decl/reagent/space_drugs/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("You close your eyes, and when they open, everything appears so much more vibrant.", "You feel a wave of pleasure suddenly rush over you.", "This is already the best decision you've ever made.")))
|
||||
|
||||
/decl/reagent/space_drugs/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(istype(H) && (H.species.flags & NO_BLOOD))
|
||||
@@ -20,15 +23,15 @@
|
||||
M.druggy = max(M.druggy, power)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 5 + round(power,5))
|
||||
|
||||
if(power > 5)
|
||||
if(power < 10)
|
||||
M.drowsiness = min(20,max(M.drowsiness,power - 5))
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_GOOD(pick("Your anxieties fade away.","Just be yourself - stop caring about what others think.","Everything will be alright...","The world feels so much more vibrant!","You feel relaxed.")))
|
||||
|
||||
if(power > 10)
|
||||
var/nutrition_percent = M.nutrition/M.max_nutrition
|
||||
M.adjustNutritionLoss(power*removed*nutrition_percent)
|
||||
var/hunger_strength = 1 - nutrition_percent
|
||||
if(prob( round(hunger_strength*removed) ))
|
||||
to_chat(M, SPAN_NOTICE(pick("You could really go for some munchies.","You feel the need to eat more.","You crave chips for some reason.","You kind of really want pizza.")))
|
||||
M.drowsiness = min(20,max(M.drowsiness,power - 5))
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("It's difficult to focus.","You feel... really... lethargic.","It's difficult to pay attention to what you're meant to be doing.", "Am I forgetting something?", "What was I doing again?")))
|
||||
|
||||
if(power > 20)
|
||||
var/probmod = 5 + (power-20)
|
||||
@@ -89,8 +92,7 @@
|
||||
/decl/reagent/impedrezene/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.jitteriness = max(M.jitteriness - 5, 0)
|
||||
M.confused = max(M.confused, 10)
|
||||
if(prob(80))
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 3*removed)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 2*removed)
|
||||
if(prob(50))
|
||||
M.drowsiness = max(M.drowsiness, 3)
|
||||
if(prob(10) && ishuman(M))
|
||||
@@ -108,8 +110,13 @@
|
||||
/decl/reagent/mindbreaker/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.hallucination = max(M.hallucination, 100)
|
||||
M.add_chemical_effect(CE_HALLUCINATE, 2)
|
||||
if(prob(10))
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 5*removed)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 2*removed)
|
||||
|
||||
/decl/reagent/mindbreaker/overdose(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 4*removed)
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_DANGER(pick("You feel the strongest of pains deeply rooted beneath your skull.", "Your head feels like it's going to burst!", "Your head stings!")))
|
||||
M.adjustHalLoss(20)
|
||||
|
||||
/decl/reagent/psilocybin
|
||||
name = "Psilocybin"
|
||||
@@ -120,6 +127,9 @@
|
||||
taste_description = "mushroom"
|
||||
fallback_specific_heat = 1.2
|
||||
|
||||
/decl/reagent/psilocybin/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("You lean back and begin to fall... and fall... and fall.", "Your eyes open wide and you look upon this new world you now see.", "You close your eyes, and when they open, everything appears so much more vibrant.", "You feel a wave of pleasure suddenly rush over you.", "This is already the best decision you've ever made.")))
|
||||
|
||||
/decl/reagent/psilocybin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(istype(H) && (H.species.flags & NO_BLOOD))
|
||||
@@ -130,47 +140,78 @@
|
||||
if(dose < 1)
|
||||
M.apply_effect(3, STUTTER)
|
||||
M.make_dizzy(5)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel giddy.", "You can't put your finger on it, but whatever it is, it's really funny.", "You feel full of energy.", "Your anxieties no longer cloud your mind.")))
|
||||
else if(dose < 2)
|
||||
M.apply_effect(3, STUTTER)
|
||||
M.make_jittery(5)
|
||||
M.dizziness = max(150, M.dizziness)
|
||||
M.make_dizzy(5)
|
||||
M.druggy = max(M.druggy, 35)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("Everything is so vibrant...", "Look at all those colours...", "Shapes dance across your vision.", "You feel like you're looking through a kaleidoscope.", "That's so funny!")))
|
||||
else
|
||||
M.apply_effect(3, STUTTER)
|
||||
M.make_jittery(10)
|
||||
M.dizziness = max(150, M.dizziness)
|
||||
M.make_dizzy(10)
|
||||
M.druggy = max(M.druggy, 40)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("Everything is so vibrant...", "Look at all those colours...", "Shapes dance across your vision.", "You feel like you're looking through a kaleidoscope.", "That's so funny!")))
|
||||
if(ishuman(M) && prob(min(15, dose*5)))
|
||||
M.emote(pick("twitch", "giggle"))
|
||||
|
||||
/decl/reagent/psilocybin/overdose(var/mob/living/carbon/M, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_EMETIC, M.chem_doses[type])
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_WARNING(pick("You feel... disconnected from your body - is it your body?", "You are dying... but that's okay, right?", "You are at peace with the universe.", "The stars are beckoning you to them.")))
|
||||
if(prob(5))
|
||||
M.custom_pain("You feel a sharp pain in your stomach!", 10)
|
||||
|
||||
/decl/reagent/raskara_dust
|
||||
name = "Raskara Dust"
|
||||
description = "A powdery narcotic found in the gang-ridden slums of Biesel and Sol. Known for it's relaxing poperties that cause trance-like states when inhaled. Casual users tend to snort or inhale, while hardcore users inject."
|
||||
reagent_state = SOLID
|
||||
color = "#AABBAA"
|
||||
overdose = REAGENTS_OVERDOSE
|
||||
overdose = 10
|
||||
taste_description = "baking soda"
|
||||
metabolism = REM * 0.1
|
||||
breathe_met = REM * 0.2
|
||||
ingest_met = REM * 0.3
|
||||
|
||||
/decl/reagent/raskara_dust/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("You gradually begin to slow down, and so does everything around you.", "You lean back and begin to fall... and fall... and fall.", "This is already the best decision you've ever made.")))
|
||||
|
||||
/decl/reagent/raskara_dust/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 10)
|
||||
M.drowsiness += 1 * removed
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel so relaxed...", "Nothing's really bothering you right now...", "You should lay down and just... take it easy.", "You deserve a break from all your hard work today.")))
|
||||
|
||||
/decl/reagent/raskara_dust/affect_breathe(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 10)
|
||||
M.drowsiness += 2 * removed
|
||||
if(prob(5) && ishuman(M))
|
||||
M.emote("cough")
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel so relaxed...", "Nothing's really bothering you right now...", "You should lay down and just... take it easy.", "You deserve a break from all your hard work today.")))
|
||||
|
||||
/decl/reagent/raskara_dust/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 30)
|
||||
M.drowsiness += 3 * removed
|
||||
if(prob(5))
|
||||
M.emote("twitch")
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel so relaxed...", "Nothing's really bothering you right now...", "You should lay down and just... take it easy.", "You deserve a break from all your hard work today.")))
|
||||
|
||||
/decl/reagent/raskara_dust/overdose(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_WARNING(pick("You feel... disconnected from your body - is it your body?", "Are you ascending to another plane of existence... that's so cool?", "You are dying... but that's okay, right?", "You feel a tingly sensation in your body.", "You can smell something unusual.", "You can taste something unusual.")))
|
||||
if(prob(M.chem_doses[type] / 3))
|
||||
if(prob(85))
|
||||
M.emote(pick("twitch", "shiver"))
|
||||
else
|
||||
M.seizure()
|
||||
|
||||
/decl/reagent/night_juice
|
||||
name = "Nightlife"
|
||||
@@ -178,6 +219,7 @@
|
||||
reagent_state = LIQUID
|
||||
color = "#FFFF44"
|
||||
taste_description = "salted sugar"
|
||||
overdose = 10
|
||||
metabolism = REM * 0.2
|
||||
breathe_met = REM * 0.1
|
||||
breathe_mul = 0.5
|
||||
@@ -187,6 +229,9 @@
|
||||
. = ..()
|
||||
LAZYSET(., "special", 0)
|
||||
|
||||
/decl/reagent/night_juice/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("You feel a wave of pleasure smash into you and liven you up!", "You're startled by the sheer strength and speed of this drug!", "You already feel so damn good!", "This is the best decision you've ever made!")))
|
||||
|
||||
/decl/reagent/night_juice/affect_blood(var/mob/living/carbon/human/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(!istype(M))
|
||||
return
|
||||
@@ -199,16 +244,26 @@
|
||||
M.add_chemical_effect(CE_SPEEDBOOST, 1)
|
||||
M.apply_effect(1 + holder.reagent_data[type]["special"]*0.25, STUTTER)
|
||||
M.druggy = max(M.druggy, holder.reagent_data[type]["special"]*0.25)
|
||||
M.hallucination = max(M.hallucination, holder.reagent_data[type]["special"]*5 - 100)
|
||||
M.make_jittery(holder.reagent_data[type]["special"])
|
||||
if(prob(holder.reagent_data[type]["special"]))
|
||||
M.emote("twitch")
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You begin to notice a rhythm to all the sounds around you.", "You feel euphoric!", "Your sense of hearing seems heightened.", "You can't sit still, you gotta move!", "You could start a party right now!", "Live in the moment!", "All your anxieties seem to fade away.")))
|
||||
var/obj/item/organ/H = M.internal_organs_by_name[BP_HEART]
|
||||
H.take_damage(holder.reagent_data[type]["special"] * removed * 0.025)
|
||||
|
||||
/decl/reagent/night_juice/overdose(var/mob/living/carbon/human/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.bodytemperature = max(M.bodytemperature + 1 * TEMPERATURE_DAMAGE_COEFFICIENT, 0)
|
||||
if(prob(2))
|
||||
M.emote("shiver")
|
||||
if(prob(2))
|
||||
to_chat(M, SPAN_WARNING(pick("You feel so hot...", "Why is it so hot!?")))
|
||||
if(prob(25))
|
||||
M.add_chemical_effect(CE_NEPHROTOXIC, 1)
|
||||
|
||||
/decl/reagent/guwan_painkillers
|
||||
name = "Tremble"
|
||||
description = "An ancient tribal Unathi narcotic based on the outer gel layer of the seeds of a poisonous flower. The chemical itself acts as a very potent omni-healer when consumed, however as the chemical metabolizes, it causes immense and cripling pain."
|
||||
description = "An ancient tribal Unathi narcotic based on the outer gel layer of the seeds of a poisonous flower. The chemical itself acts as a very potent omni-healer when consumed, however as the chemical metabolizes, it causes immense and crippling pain."
|
||||
reagent_state = LIQUID
|
||||
color = "#FFFF44"
|
||||
taste_description = "sunflower seeds"
|
||||
@@ -247,6 +302,8 @@
|
||||
..()
|
||||
if(prob(15))
|
||||
M.emote(pick("twitch", "blink_r", "shiver"))
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel pumped!", "Energy, energy, energy - so much energy!", "You could run a marathon!", "You can't sit still!", "It's difficult to focus right now... but that's not important!")))
|
||||
if(prob(5)) // average of 6 brute every 20 seconds.
|
||||
M.visible_message("[M] shudders violently.", "You shudder uncontrollably, it hurts.")
|
||||
M.take_organ_damage(6 * removed, 0)
|
||||
@@ -305,6 +362,13 @@
|
||||
H.drop_r_hand()
|
||||
if(robo)
|
||||
H.add_chemical_effect(CE_PAINKILLER, 30)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel a pleasant tingling sensation in your cybernetics.", "You feel a jolt of pain in your cybernetic limb, but it feels oddly nice.", "The sensations in your cybernetics feel heightened.", "Your cybernetics feel magnitudes better than your organic body parts.")))
|
||||
else
|
||||
H.add_chemical_effect(CE_PAINKILLER, 10)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel a little bit more comfortable.", "You feel alright.", "Your joints feel warm and tingly.", "You feel soothed and at ease.")))
|
||||
|
||||
var/obj/item/organ/internal/eyes/eyes = H.internal_organs_by_name[H.species.vision_organ || BP_EYES]
|
||||
if(eyes.status & ORGAN_ROBOT)
|
||||
M.hallucination = max(M.hallucination, 40)
|
||||
@@ -317,10 +381,149 @@
|
||||
fallback_specific_heat = 1
|
||||
overdose = 10
|
||||
|
||||
/decl/reagent/wulumunusha/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("Your eyes open wide and you look upon this new world you now see.", "You close your eyes, and when they open, everything appears so much more vibrant.")))
|
||||
|
||||
/decl/reagent/wulumunusha/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.druggy = max(M.druggy, 100)
|
||||
M.silent = max(M.silent, 5)
|
||||
if(prob(3) && !isskrell(M))
|
||||
to_chat(M, SPAN_GOOD(pick("You can almost see the currents of air as they dance around you.", "You see the colours around you beginning to bleed together.", "You feel safe and comfortable.")))
|
||||
if(prob(3) && isskrell(M))
|
||||
to_chat(M, SPAN_ALIEN(pick("You can see the thoughts of those around you dancing in the air.", "You feel as if your mind has opened even further, your thought-field expanding.", "It's difficult to contain your thoughts - but why hide them anyway?", "You feel safe and comfortable.")))
|
||||
|
||||
/decl/reagent/wulumunusha/overdose(var/mob/living/carbon/M, var/alien, var/removed = 0, var/scale = 1, var/datum/reagents/holder)
|
||||
if(isskrell(M))
|
||||
M.hallucination = max(M.hallucination, 10 * scale) //light hallucinations that afflict skrell
|
||||
|
||||
/decl/reagent/ambrosia_extract
|
||||
name = "Ambrosia Extract"
|
||||
description = "Ambrosia Extract is a fairly strong relaxant commonly found in Ambrosia plants. It's one of the most widely available drugs in human space."
|
||||
reagent_state = LIQUID
|
||||
color = "#60A584"
|
||||
metabolism = REM / 3.33
|
||||
overdose = 30
|
||||
taste_description = "spicy earth"
|
||||
taste_mult = 0.4
|
||||
|
||||
/decl/reagent/ambrosia_extract/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(istype(H) && (H.species.flags & NO_BLOOD))
|
||||
return
|
||||
M.add_chemical_effect(CE_PULSE, -1)
|
||||
|
||||
var/power = (M.chem_doses[type] + REAGENT_VOLUME(holder, type))/2 //Larger the dose and volume, the more affected you are by the chemical.
|
||||
|
||||
M.add_chemical_effect(CE_PAINKILLER, 5 + round(power,5))
|
||||
|
||||
if(power < 15)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("Your anxieties fade away.","Just be yourself - stop caring about what others think.","Everything will be alright...","The world feels so much more vibrant!","You feel relaxed.")))
|
||||
|
||||
if(power > 15)
|
||||
M.drowsiness = min(20,max(M.drowsiness,power - 5))
|
||||
var/nutrition_percent = M.nutrition/M.max_nutrition
|
||||
M.adjustNutritionLoss(power*removed*nutrition_percent)
|
||||
var/hunger_strength = 1 - nutrition_percent
|
||||
if(prob( round(hunger_strength*removed) ))
|
||||
to_chat(M, SPAN_NOTICE(pick("You could really go for some munchies.","You feel the need to eat more.","You crave chips for some reason.","You kind of really want pizza.","Some cosmic brownies would be nice.")))
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_WARNING(pick("It's a little bit difficult to focus.","You feel a bit lethargic."," It's kinda hard to pay attention to what you're doing.", "Am I forgetting something?", "What was I doing again?")))
|
||||
|
||||
/decl/reagent/ambrosia_extract/overdose(var/mob/living/carbon/M, var/alien, var/removed = 0, var/scale = 1, var/datum/reagents/holder)
|
||||
. = ..()
|
||||
M.hallucination = max(M.hallucination, 30 * scale)
|
||||
|
||||
/decl/reagent/joy
|
||||
name = "Joy"
|
||||
description = "An expensive and illegal drug often abused by those who find no other means to numb their physical and mental pains. A Joy addict is a truly sad sight."
|
||||
reagent_state = LIQUID
|
||||
color = "#FFFFFF"
|
||||
metabolism = REM*0.1
|
||||
overdose = 5
|
||||
od_minimum_dose = 2
|
||||
taste_description = "tranquility"
|
||||
|
||||
/decl/reagent/joy/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("You feel a numbing sensation spread from within you.", "A numbing sensation builds within you.", "Everything will be okay... just relax.")))
|
||||
|
||||
/decl/reagent/joy/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 100)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 4*removed)
|
||||
M.add_chemical_effect(CE_PACIFIED, 1)
|
||||
M.eye_blurry = max(M.eye_blurry, 30)
|
||||
M.drowsiness = max(M.drowsiness, 10)
|
||||
M.make_dizzy(15)
|
||||
if(M.chem_doses[type] < 1)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("Stress was an inconvenience that you are now free of.", "You feel somewhat dettached from reality.", "You can feel time passing by and it no longer bothers you.", "You feel so incredibly relaxed.", "You haven't felt this care-free since you were a child...", "Why can't it always be like this?", "You're watching yourself from afar - detached from your physical body.")))
|
||||
if(M.chem_doses[type] >= 1)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("Stress was an inconvenience that you are now free of.", "You lose all sense of connection to the real world.", "Everything is so tranquil.", "You feel totaly detached from reality.", "Your feel disconnected from your body.", "You are aware of nothing but your conscious thoughts.", "You keep falling... and falling... and falling - never stopping.", "Is this what it feels like to be dead?", "Your memories are hazy... all you have ever known is this feeling.", "You're watching yourself from afar - detached from your physical body.")))
|
||||
|
||||
/decl/reagent/joy/overdose(var/mob/living/carbon/M, var/alien, var/removed = 0, var/datum/reagents/holder)
|
||||
M.ear_deaf = 20
|
||||
M.add_chemical_effect(CE_EMETIC, M.chem_doses[type])
|
||||
M.adjustOxyLoss(2 * removed)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You're dying... but you don't care.", "The numbing sensation continues to build and build.", "One more hit... and maybe even death will cease to exist.")))
|
||||
|
||||
/decl/reagent/joy/final_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD("You feel grounded in the real world again... for better or worse."))
|
||||
|
||||
/decl/reagent/xuxigas
|
||||
name = "Xu'Xi Gas"
|
||||
description = "A recreational drug hailing from Qerr'Malic that must be inhaled. It produces a mild high similar to Wulumunusha and is known to make users susceptible to persuasion. Most forms of Xu'Xi Gas found outside of the Jargon Federation are cheap, synthetic substitutes. Only works when inhaled."
|
||||
color = "#58D373"
|
||||
taste_description = "algae"
|
||||
reagent_state = GAS
|
||||
overdose = REAGENTS_OVERDOSE
|
||||
breathe_met = REM*0.2
|
||||
|
||||
/decl/reagent/xuxigas/affect_breathe(var/mob/living/carbon/human/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.druggy = max(M.druggy, M.chem_doses[type]/2)
|
||||
M.add_chemical_effect(CE_PULSE, -1)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel soothed and at ease.", "You feel like sharing the wonderful memories and feelings you're experiencing.", "You feel like you're floating off the ground.", "You don't want this feeling to end.", "You wish to please all those around you.", "You feel particularly susceptible to persuasion.", "Everyone is so trustworthy nowadays.")))
|
||||
if(prob(2) && !isskrell(M))
|
||||
to_chat(M, SPAN_GOOD(pick("You can almost see the currents of air as they dance around you.", "You see the colours around you beginning to bleed together.", "You feel safe and comfortable.")))
|
||||
if(prob(2) && isskrell(M))
|
||||
to_chat(M, SPAN_ALIEN(pick("You can see the thoughts of those around you dancing in the air.", "You feel as if your mind has opened even further, your thought-field expanding.", "It's difficult to contain your thoughts - but why hide them anyway?")))
|
||||
|
||||
/decl/reagent/xuxigas/overdose(var/mob/living/carbon/human/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_WARNING(pick("You feel particularly vulnerable to being swayed by those around you...", "You have an urge to please those around you.", "This high cannot end... where can you get more?", "You don't want this feeling to end.")))
|
||||
|
||||
/decl/reagent/skrell_nootropic
|
||||
name = "Co'qnixq Wuxi"
|
||||
description = "Co'qnixq Wuxi, or Co'qnixq Nootropic, has existed since before Glorsh, and was developed as a cognitive enhancer for Skrell with on-set dementia. When taken, one's consciousness is heightened greatly alongside receiving mild energy boost. Frequently used as a 'smart drug' by students and scientists."
|
||||
color = "#E3B0E5"
|
||||
taste_description = "concentration"
|
||||
reagent_state = LIQUID
|
||||
overdose = 10
|
||||
od_minimum_dose = 2
|
||||
metabolism = REM*0.05
|
||||
var/psi_boosted = FALSE
|
||||
var/initial_stamina
|
||||
|
||||
/decl/reagent/skrell_nootropic/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(M.psi && !psi_boosted)
|
||||
initial_stamina = M.psi.max_stamina
|
||||
M.psi.max_stamina = M.psi.max_stamina*1.25
|
||||
psi_boosted = TRUE
|
||||
if(prob(2))
|
||||
to_chat(M, SPAN_GOOD(pick("You have a renewed sense of focus.", "You feel more determined to get things done.", "You feel more confident in your own abilities.", "Your head-space feels tidy and organised - now's the time to get to work.", "You could climb a mountain right now!")))
|
||||
|
||||
/decl/reagent/skrell_nootropic/final_effect(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(M.psi && psi_boosted)
|
||||
M.psi.max_stamina = initial_stamina
|
||||
psi_boosted = FALSE
|
||||
|
||||
/decl/reagent/skrell_nootropic/overdose(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_SPEEDBOOST, 0.5)
|
||||
if(prob(25))
|
||||
M.add_chemical_effect(CE_NEPHROTOXIC, 0.5)
|
||||
if(prob(2))
|
||||
to_chat(M, SPAN_WARNING(pick("You can't allow anyone to get between you and your tasks.", "You feel like screaming at the next person who interrupts you.", "No one can stop you!", "You can power through this...")))
|
||||
|
||||
@@ -587,7 +587,7 @@
|
||||
description = "A salt made of sodium chloride. Commonly used to season food."
|
||||
reagent_state = SOLID
|
||||
color = "#FFFFFF"
|
||||
overdose = REAGENTS_OVERDOSE
|
||||
overdose = 30
|
||||
taste_description = "salt"
|
||||
condiment_name = "salt shaker"
|
||||
condiment_desc = "Salt. From space oceans, presumably."
|
||||
@@ -599,9 +599,17 @@
|
||||
M.adjustHydrationLoss(2*removed)
|
||||
|
||||
/decl/reagent/sodiumchloride/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
overdose(M, alien, holder)
|
||||
|
||||
/decl/reagent/sodiumchloride/overdose(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.intoxication -= min(M.intoxication,removed*20)
|
||||
M.adjustHydrationLoss(20*removed)
|
||||
M.adjustToxLoss(removed*2)
|
||||
M.confused = max(M.confused, 20)
|
||||
if(prob(2))
|
||||
M.emote("twitch")
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("You're beginning to lose your appetite.","Your mouth is so incredibly dry.","You feel really confused.","What was I just thinking of?","Where am I?","Your muscles are tingling.")))
|
||||
|
||||
/decl/reagent/blackpepper
|
||||
name = "Black Pepper"
|
||||
|
||||
@@ -176,7 +176,7 @@
|
||||
|
||||
//Hyperoxia causes brain and eye damage
|
||||
/decl/reagent/dexalin/overdose(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, removed * (strength / 6))
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, removed*0.5)
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/internal/eyes/E = H.get_eyes(no_synthetic = TRUE)
|
||||
@@ -294,7 +294,13 @@
|
||||
metabolism_min = 0.005
|
||||
breathe_mul = 0
|
||||
|
||||
/decl/reagent/mortaphenyl/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("You lean back and begin to fall... and fall... and fall.", "A feeling of ecstasy builds within you.", "You're startled by just how amazing you suddenly feel.")))
|
||||
|
||||
/decl/reagent/mortaphenyl/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel soothed and at ease.", "You feel content and at peace.", "You feel a pleasant emptiness.", "You feel like sharing the wonderful memories and feelings you're experiencing.", "All your anxieties fade away.", "You feel like you're floating off the ground.", "You don't want this feeling to end.")))
|
||||
|
||||
if(check_min_dose(M))
|
||||
M.add_chemical_effect(CE_PAINKILLER, 50)
|
||||
if(!M.chem_effects[CE_CLEARSIGHT])
|
||||
@@ -314,10 +320,7 @@
|
||||
M.losebreath++
|
||||
|
||||
if(REAGENT_VOLUME(M.reagents, /decl/reagent/oxycomorphine)) //Straight to overdose.
|
||||
M.hallucination = max(M.hallucination, 40)
|
||||
M.add_chemical_effect(CE_EMETIC, M.chem_doses[type]/6)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
overdose(M, alien, holder)
|
||||
|
||||
/decl/reagent/mortaphenyl/overdose(var/mob/living/carbon/M, var/alien, var/datum/reagents/holder)
|
||||
..()
|
||||
@@ -357,7 +360,13 @@
|
||||
metabolism_min = 0.005
|
||||
breathe_mul = 0
|
||||
|
||||
/decl/reagent/oxycomorphine/initial_effect(var/mob/living/carbon/human/M, var/alien, var/holder)
|
||||
to_chat(M, SPAN_GOOD(pick("You lean back and begin to fall... and fall... and fall.", "A feeling of ecstasy builds within you.", "You're startled by just how amazing you suddenly feel.")))
|
||||
|
||||
/decl/reagent/oxycomorphine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel soothed and at ease.", "You feel content and at peace.", "You feel a pleasant emptiness.", "You feel like sharing the wonderful memories and feelings you're experiencing.", "All your anxieties fade away.", "You feel like you're floating off the ground.", "You don't want this feeling to end.")))
|
||||
|
||||
if(check_min_dose(M))
|
||||
M.add_chemical_effect(CE_PAINKILLER, 200)
|
||||
if(!M.chem_effects[CE_CLEARSIGHT])
|
||||
@@ -576,6 +585,7 @@
|
||||
/decl/reagent/hyperzine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(prob(5))
|
||||
M.emote(pick("twitch", "blink_r", "shiver"))
|
||||
to_chat(M, SPAN_GOOD(pick("You feel pumped!", "Energy, energy, energy - so much energy!", "You could run a marathon!", "You can't sit still!", "It's difficult to focus right now... but that's not important!")))
|
||||
if(check_min_dose(M, 0.5))
|
||||
M.add_chemical_effect(CE_SPEEDBOOST, 1)
|
||||
M.add_chemical_effect(CE_PULSE, 1)
|
||||
@@ -584,7 +594,7 @@
|
||||
M.adjustNutritionLoss(5*removed)
|
||||
M.add_chemical_effect(CE_PULSE, 2)
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_DANGER(pick("Your heart is beating rapidly!", "Your chest hurts!")))
|
||||
to_chat(M, SPAN_DANGER(pick("Your heart is beating rapidly!", "Your chest hurts!", "You've totally over-exerted yourself!")))
|
||||
if(prob(M.chem_doses[type] / 3))
|
||||
M.visible_message("<b>[M]</b> twitches violently, grimacing.", "You twitch violently and feel yourself sprain a joint.")
|
||||
M.take_organ_damage(5 * removed, 0)
|
||||
@@ -799,7 +809,7 @@
|
||||
if(prob(7))
|
||||
M.emote(pick("twitch", "drool", "moan", "giggle"))
|
||||
if(prob(7))
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 3 * removed)
|
||||
M.add_chemical_effect(CE_NEUROTOXIC, 5)
|
||||
if(prob(50))
|
||||
M.drowsiness = max(M.drowsiness, 3)
|
||||
|
||||
@@ -854,6 +864,34 @@
|
||||
for(var/obj/effect/decal/cleanable/blood/B in T)
|
||||
qdel(B)
|
||||
|
||||
/decl/reagent/sterilizine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.add_chemical_effect(CE_EMETIC, 5)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat burns!", "All you can taste is blood!", "Your insides are on fire!", "Your feel a burning pain in your gut!")))
|
||||
else
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat stings a bit.", "You can taste something chemical.")))
|
||||
|
||||
/decl/reagent/sterilizine/affect_breathe(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.add_chemical_effect(CE_EMETIC, 5)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat burns!", "All you can taste is blood!", "Your insides are on fire!", "Your feel a burning pain in your gut!")))
|
||||
else
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_NOTICE(pick("You get a strong whiff of sterilizine fumes - careful.")))
|
||||
|
||||
/decl/reagent/sterilizine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.add_chemical_effect(CE_EMETIC, 5)
|
||||
if(prob(25))
|
||||
M.add_chemical_effect(CE_NEPHROTOXIC, 1)
|
||||
|
||||
/decl/reagent/leporazine
|
||||
name = "Leporazine"
|
||||
description = "Leporazine is a complex medication which improves thermal homeostasis, stabilising and regulating the body's core temperature. Leporazine often results in hyperventilation which should be monitored."
|
||||
@@ -1048,15 +1086,8 @@
|
||||
/decl/reagent/mental/neurapan/overdose(var/mob/living/carbon/M, var/alien, var/datum/reagents/holder)
|
||||
M.add_chemical_effect(CE_PACIFIED, 1)
|
||||
M.eye_blurry = max(M.eye_blurry, 30)
|
||||
if(REAGENT_VOLUME(M.reagents, /decl/reagent/oxycomorphine))
|
||||
M.ear_deaf = 20
|
||||
M.drowsiness = max(M.drowsiness, 10)
|
||||
M.make_dizzy(15)
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("You lose all sense of connection to the real world.", "Everything is so tranquil.", "You feel dettached from reality.", "Your feel disconnected from your body.", "You are aware of nothing but your conscious thoughts.")))
|
||||
else
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("Stress was an inconvenience that you are now free of.", "You feel somewhat dettached from reality.", "You can feel time passing by and it no longer bothers you.")))
|
||||
if(prob(3))
|
||||
to_chat(M, SPAN_GOOD(pick("Stress was an inconvenience that you are now free of.", "You feel somewhat dettached from reality.", "You can feel time passing by and it no longer bothers you.")))
|
||||
|
||||
/decl/reagent/mental/nerospectan
|
||||
name = "Nerospectan"
|
||||
@@ -1400,6 +1431,8 @@
|
||||
M.make_jittery(5)
|
||||
if(prob(2))
|
||||
M.emote("twitch")
|
||||
if(prob(2))
|
||||
to_chat(M, SPAN_WARNING(pick("You're beginning to lose your appetite.","Your mouth is so incredibly dry.","You feel really confused.","What was I just thinking of?","Where am I?","Your muscles are tingling.")))
|
||||
|
||||
/decl/reagent/adrenaline
|
||||
name = "Adrenaline"
|
||||
|
||||
@@ -299,7 +299,6 @@
|
||||
return
|
||||
M.clean_blood()
|
||||
|
||||
|
||||
if(istype(M,/mob/living/carbon/slime))
|
||||
var/mob/living/carbon/slime/S = M
|
||||
S.adjustToxLoss( REAGENT_VOLUME(holder, type) * (removed/REM) * 0.5 )
|
||||
@@ -309,6 +308,34 @@
|
||||
++S.discipline
|
||||
if(M.chem_doses[type] == removed)
|
||||
S.visible_message(SPAN_WARNING("[S]'s flesh sizzles where the space cleaner touches it!"), SPAN_DANGER("Your flesh burns in the space cleaner!"))
|
||||
|
||||
/decl/reagent/spacecleaner/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.add_chemical_effect(CE_EMETIC, 5)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat burns!", "All you can taste is blood!", "Your insides are on fire!", "Your feel a burning pain in your gut!")))
|
||||
else
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat stings a bit.", "You can taste something sour.")))
|
||||
|
||||
/decl/reagent/spacecleaner/affect_breathe(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.add_chemical_effect(CE_EMETIC, 5)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat burns!", "All you can taste is blood!", "Your insides are on fire!", "Your feel a burning pain in your gut!")))
|
||||
else
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_NOTICE(pick("You get a strong whiff of space cleaner fumes - careful.")))
|
||||
|
||||
/decl/reagent/spacecleaner/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.add_chemical_effect(CE_EMETIC, 5)
|
||||
if(prob(25))
|
||||
M.add_chemical_effect(CE_NEPHROTOXIC, 1)
|
||||
|
||||
/decl/reagent/lube
|
||||
name = "Space Lube"
|
||||
@@ -329,6 +356,7 @@
|
||||
reagent_state = LIQUID
|
||||
color = "#C7FFFF"
|
||||
taste_description = "plastic"
|
||||
ingest_mul = 0
|
||||
|
||||
/decl/reagent/silicate/touch_obj(var/obj/O, var/amount, var/datum/reagents/holder)
|
||||
if(istype(O, /obj/structure/window))
|
||||
@@ -337,6 +365,19 @@
|
||||
remove_self(amount, holder)
|
||||
return
|
||||
|
||||
/decl/reagent/silicate/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
M.adjustToxLoss(2 * removed)
|
||||
M.add_chemical_effect(CE_ITCH, M.chem_doses[type])
|
||||
|
||||
/decl/reagent/silicate/affect_breathe(var/mob/living/carbon/human/H, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(check_min_dose(H, 5))
|
||||
if(prob(50))
|
||||
H.visible_message("<b>[H]</b> splutters.", "You cough up a bunch of silicate.")
|
||||
remove_self(5, holder)
|
||||
else
|
||||
H.adjustOxyLoss(2)
|
||||
H.add_chemical_effect(CE_PNEUMOTOXIC, 0.2)
|
||||
|
||||
/decl/reagent/glycerol
|
||||
name = "Glycerol"
|
||||
description = "Glycerol is a simple polyol compound. Glycerol is sweet-tasting and of low toxicity."
|
||||
|
||||
@@ -285,6 +285,7 @@
|
||||
color = "#664330"
|
||||
taste_description = "plant food"
|
||||
taste_mult = 0.5
|
||||
touch_mul = 0
|
||||
unaffected_species = IS_MACHINE
|
||||
|
||||
/decl/reagent/toxin/fertilizer/affect_blood(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
@@ -292,7 +293,27 @@
|
||||
M.adjustNutritionLoss(-removed*3)
|
||||
//Fertilizer is good for plants
|
||||
else
|
||||
..()
|
||||
if(prob(15))
|
||||
M.add_chemical_effect(CE_NEPHROTOXIC, 1)
|
||||
|
||||
/decl/reagent/toxin/fertilizer/affect_breathe(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(alien == IS_DIONA)
|
||||
M.adjustNutritionLoss(-removed*3)
|
||||
else if(REAGENT_VOLUME(holder, type) > 15)
|
||||
M.adjustOxyLoss(2 * removed)
|
||||
if(M.losebreath < 15)
|
||||
M.losebreath++
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat burns!", "Your insides are on fire!", "Your feel a burning pain in your chest!")))
|
||||
else
|
||||
if(prob(5))
|
||||
to_chat(M, SPAN_WARNING(pick("Your throat stings a bit.", "You can taste something really digusting.", "Your chest doesn't feel so great.")))
|
||||
|
||||
/decl/reagent/toxin/fertilizer/affect_touch(var/mob/living/carbon/M, var/alien, var/removed, var/datum/reagents/holder)
|
||||
if(!(alien == IS_DIONA))
|
||||
M.adjustFireLoss(10)
|
||||
to_chat(M, SPAN_WARNING(pick("Your skin burns!", "The chemical is melting your skin!", "Wash it off, wash it off!")))
|
||||
remove_self(REAGENT_VOLUME(holder, type), holder)
|
||||
|
||||
/decl/reagent/toxin/fertilizer/eznutrient
|
||||
name = "EZ Nutrient"
|
||||
@@ -677,48 +698,31 @@
|
||||
color = "#800080"
|
||||
strength = 5
|
||||
overdose = 5 //5 units per ghostmushroom.
|
||||
od_minimum_dose = 1
|
||||
od_minimum_dose = 11
|
||||
taste_description = "acid"
|
||||
metabolism = REM * 0.5
|
||||
unaffected_species = IS_DIONA | IS_MACHINE
|
||||
var/berserked = FALSE
|
||||
|
||||
/decl/reagent/toxin/spectrocybin/affect_blood(var/mob/living/carbon/M, var/removed, var/datum/reagents/holder)
|
||||
..()
|
||||
if(!(REAGENT_VOLUME(holder, type) > 5))
|
||||
M.hallucination = max(M.hallucination, 20)
|
||||
if(prob(20))
|
||||
M.see_invisible = SEE_INVISIBLE_CULT
|
||||
if(M.chem_doses[type] < 5)
|
||||
if(prob(10))
|
||||
M.emote("shiver")
|
||||
to_chat(M, SPAN_GOOD(pick("You hear the clinking of dinner plates and laughter.", "You hear a distant voice of someone you know talking to you.", "Fond memories of a departed loved one flocks to your mind.", "You feel the reassuring presence of a departed loved one.", "You feel a hand squeezing yours.")))
|
||||
M.add_chemical_effect(CE_HAUNTED, M.chem_doses[type])
|
||||
|
||||
/decl/reagent/toxin/spectrocybin/overdose(var/mob/living/carbon/M, var/datum/reagents/holder)
|
||||
M.see_invisible = SEE_INVISIBLE_CULT
|
||||
M.make_jittery(5)
|
||||
if(M.chem_doses[type] < 5)
|
||||
if(prob(5))
|
||||
M.visible_message("<b>[M]</b> trembles uncontrollably.", "<span class='warning'>You tremble uncontrollably.</span>")
|
||||
to_chat(M, SPAN_CULT(pick("You feel fingers tracing up your back.", "You hear the distant wailing and sobbing of a departed loved one.", "You feel like you are being closely watched.", "You hear the hysterical laughter of a departed loved one.", "You no longer feel the reassuring presence of a departed loved one.", "You feel a hand taking hold of yours, digging its nails into you as it clings on.")))
|
||||
else
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(M.chem_doses[type] <= (get_overdose(H, holder = holder) + metabolism))
|
||||
H.berserk_start()
|
||||
else
|
||||
H.berserk_process()
|
||||
M.hallucination = 0 //Brings down hallucination quickly to prevent message spam from being switched between harm and help by hallucinoatory pacification and berserk.
|
||||
M.add_chemical_effect(CE_BERSERK, 1)
|
||||
if(M.a_intent != I_HURT)
|
||||
M.a_intent_change(I_HURT)
|
||||
if(prob(10))
|
||||
M.emote(pick("shiver", "twitch"))
|
||||
to_chat(M, SPAN_CULT(pick("You feel a cold and threatening air wrapping around you.", "Whispering shadows, ceaseless in their demands, twist your thoughts...", "The whispering, anything to make them stop!", "Your head spins amid the cacophony of screaming, wailing and maniacal laughter of distant loved ones.", "You feel vestiges of decaying souls cling to you, trying to re-enter the world of the living.")))
|
||||
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(ishuman(M) && !berserked)
|
||||
H.berserk_start()
|
||||
berserked = TRUE
|
||||
else if(ishuman(M) && berserked)
|
||||
H.berserk_process()
|
||||
M.add_chemical_effect(CE_BERSERK, 1)
|
||||
if(M.a_intent != I_HURT)
|
||||
M.a_intent_change(I_HURT)
|
||||
|
||||
/decl/reagent/toxin/spectrocybin/final_effect(mob/living/carbon/human/H, datum/reagents/holder)
|
||||
. = ..()
|
||||
if(istype(H) && H.chem_doses[type] >= get_overdose(H, holder = holder))
|
||||
H.berserk_stop()
|
||||
berserked = FALSE
|
||||
|
||||
/decl/reagent/toxin/trioxin
|
||||
name = "Trioxin"
|
||||
@@ -764,8 +768,6 @@
|
||||
playsound(H.loc, 'sound/hallucinations/far_noise.ogg', 50, 1)
|
||||
to_chat(H,"<font size='3'><span class='cult'>You return back to life as the undead, all that is left is the hunger to consume the living and the will to spread the infection.</font></span>")
|
||||
|
||||
|
||||
|
||||
/decl/reagent/toxin/dextrotoxin
|
||||
name = "Dextrotoxin"
|
||||
description = "A complicated to make and highly illegal drug that cause paralysis mostly focused on the limbs."
|
||||
|
||||
@@ -208,7 +208,7 @@
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/space_drugs
|
||||
name = "Space Drugs"
|
||||
name = "Mercury Monolithium Sucrose"
|
||||
id = "space_drugs"
|
||||
result = /decl/reagent/space_drugs
|
||||
required_reagents = list(/decl/reagent/mercury = 1, /decl/reagent/sugar = 1, /decl/reagent/lithium = 1)
|
||||
@@ -757,6 +757,28 @@
|
||||
required_reagents = list(/decl/reagent/psilocybin = 1, /decl/reagent/alcohol/moonshine = 1)
|
||||
result_amount = 1
|
||||
|
||||
/datum/chemical_reaction/joy
|
||||
name = "Joy"
|
||||
id = "joy"
|
||||
result = /decl/reagent/joy
|
||||
required_reagents = list(/decl/reagent/mental/neurapan = 1, /decl/reagent/oxycomorphine = 2)
|
||||
result_amount = 1
|
||||
|
||||
/datum/chemical_reaction/xuxigas
|
||||
name = "Xu'Xi Gas"
|
||||
id = "xuxigas"
|
||||
result = /decl/reagent/xuxigas
|
||||
required_reagents = list(/decl/reagent/dexalin = 2, /decl/reagent/space_drugs = 2, /decl/reagent/mental/truthserum = 1)
|
||||
required_temperature_min = T0C + 134
|
||||
result_amount = 5
|
||||
|
||||
/datum/chemical_reaction/skrell_nootropic
|
||||
name = "Co'qnixq Wuxi"
|
||||
id = "skrell_nootropic"
|
||||
result = /decl/reagent/skrell_nootropic
|
||||
required_reagents = list(/decl/reagent/wulumunusha = 1, /decl/reagent/synaptizine = 1, /decl/reagent/mental/emoxanyl = 1)
|
||||
result_amount = 3
|
||||
|
||||
/* Makeshift Chemicals and Drugs */
|
||||
|
||||
/datum/chemical_reaction/stimm
|
||||
|
||||
@@ -3175,7 +3175,7 @@
|
||||
trash = /obj/item/trash/brownies
|
||||
filling_color = "#301301"
|
||||
center_of_mass = list("x"=15, "y"=9)
|
||||
reagents_to_add = list(/decl/reagent/nutriment = 8, /decl/reagent/browniemix = 4, /decl/reagent/space_drugs = 4, /decl/reagent/bicaridine = 2, /decl/reagent/kelotane = 2, /decl/reagent/toxin = 2)
|
||||
reagents_to_add = list(/decl/reagent/nutriment = 8, /decl/reagent/browniemix = 4, /decl/reagent/ambrosia_extract = 4, /decl/reagent/bicaridine = 2, /decl/reagent/kelotane = 2, /decl/reagent/toxin = 2)
|
||||
reagent_data = list(/decl/reagent/nutriment = list("brownies" = 5))
|
||||
bitesize = 3
|
||||
|
||||
@@ -3189,7 +3189,7 @@
|
||||
center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/obj/item/reagent_containers/food/snacks/cosmicbrowniesslice/filled
|
||||
reagents_to_add = list(/decl/reagent/nutriment = 1, /decl/reagent/browniemix = 1, /decl/reagent/space_drugs = 1, /decl/reagent/bicaridine = 1, /decl/reagent/kelotane = 1, /decl/reagent/toxin = 1)
|
||||
reagents_to_add = list(/decl/reagent/nutriment = 1, /decl/reagent/browniemix = 1, /decl/reagent/ambrosia_extract = 1, /decl/reagent/bicaridine = 1, /decl/reagent/kelotane = 1, /decl/reagent/toxin = 1)
|
||||
reagent_data = list(/decl/reagent/nutriment = list("brownies" = 2))
|
||||
|
||||
/////////////////////////////////////////////////PIZZA////////////////////////////////////////
|
||||
|
||||
@@ -28,16 +28,22 @@
|
||||
if(!..(user, 2))
|
||||
return
|
||||
if(LAZYLEN(reagents.reagent_volumes))
|
||||
to_chat(user, "<span class='notice'>It contains [round(reagents.total_volume, accuracy)] units of liquid.</span>")
|
||||
to_chat(user, SPAN_NOTICE("It contains [round(reagents.total_volume, accuracy)] units of a reagent."))
|
||||
for(var/_T in reagents.reagent_volumes)
|
||||
var/decl/reagent/T = decls_repository.get_decl(_T)
|
||||
if(T.reagent_state == SOLID)
|
||||
to_chat(user, "<span class='notice'>You see something solid in the beaker.</span>")
|
||||
if(T.reagent_state == LIQUID)
|
||||
to_chat(user, SPAN_NOTICE("You see something liquid in the beaker."))
|
||||
break // to stop multiple messages of this
|
||||
if(T.reagent_state == GAS)
|
||||
to_chat(user, SPAN_NOTICE("You see something gaseous in the beaker."))
|
||||
break
|
||||
if(T.reagent_state == SOLID)
|
||||
to_chat(user, SPAN_NOTICE("You see something solid in the beaker."))
|
||||
break
|
||||
else
|
||||
to_chat(user, "<span class='notice'>It is empty.</span>")
|
||||
to_chat(user, SPAN_NOTICE("It is empty."))
|
||||
if(!is_open_container())
|
||||
to_chat(user, "<span class='notice'>Airtight lid seals it completely.</span>")
|
||||
to_chat(user, SPAN_NOTICE("An airtight lid seals it completely."))
|
||||
|
||||
/obj/item/reagent_containers/glass/get_additional_forensics_swab_info()
|
||||
var/list/additional_evidence = ..()
|
||||
|
||||
@@ -194,6 +194,10 @@
|
||||
name_label = "inaprovaline"
|
||||
reagents_to_add = list(/decl/reagent/inaprovaline = 5)
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/dylovene
|
||||
name_label = "dylovene"
|
||||
reagents_to_add = list(/decl/reagent/dylovene = 5)
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/emergency
|
||||
name_label = "emergency"
|
||||
reagents_to_add = list(/decl/reagent/inaprovaline = 2.5, /decl/reagent/dexalin = 2.5)
|
||||
|
||||
@@ -233,13 +233,13 @@
|
||||
name = "Zoom Pill"
|
||||
desc = "Zoooom!"
|
||||
icon_state = "pill18"
|
||||
reagents_to_add = list(/decl/reagent/impedrezene = 10, /decl/reagent/synaptizine = 5, /decl/reagent/hyperzine = 5)
|
||||
reagents_to_add = list(/decl/reagent/impedrezene = 5, /decl/reagent/synaptizine = 5, /decl/reagent/hyperzine = 5)
|
||||
|
||||
obj/item/reagent_containers/pill/tranquility
|
||||
name = "Tranquility Pill"
|
||||
obj/item/reagent_containers/pill/joy
|
||||
name = "Joy Pill"
|
||||
desc = "Peace, at last."
|
||||
icon_state = "pill8"
|
||||
reagents_to_add = list(/decl/reagent/mental/neurapan = 15, /decl/reagent/impedrezene = 10)
|
||||
reagents_to_add = list(/decl/reagent/joy = 5)
|
||||
|
||||
/obj/item/reagent_containers/pill/thetamycin
|
||||
name = "15u Thetamycin Pill"
|
||||
@@ -269,3 +269,9 @@ obj/item/reagent_containers/pill/tranquility
|
||||
desc = "Used to treat coughing, sneezing and itching."
|
||||
icon_state = "pill19"
|
||||
reagents_to_add = list(/decl/reagent/cetahydramine = 5)
|
||||
|
||||
/obj/item/reagent_containers/pill/skrell_nootropic
|
||||
name = "5u Co'qnixq Wuxi Pill"
|
||||
desc = "Used to treat dementia."
|
||||
icon_state = "pill8"
|
||||
reagents_to_add = list(/decl/reagent/skrell_nootropic = 5)
|
||||
|
||||
Reference in New Issue
Block a user