Added happiness, psicodine, neurine and 2/6th of MC chem
This commit is contained in:
@@ -359,6 +359,83 @@
|
||||
..()
|
||||
. = 1
|
||||
|
||||
/datum/reagent/drug/happiness
|
||||
name = "Happiness"
|
||||
id = "happiness"
|
||||
description = "Fills you with ecstasic numbness and causes minor brain damage. Highly addictive. If overdosed causes sudden mood swings."
|
||||
reagent_state = LIQUID
|
||||
color = "#FFF378"
|
||||
addiction_threshold = 10
|
||||
overdose_threshold = 20
|
||||
|
||||
/datum/reagent/drug/happiness/on_mob_add(mob/living/L)
|
||||
..()
|
||||
L.add_trait(TRAIT_FEARLESS, id)
|
||||
SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "happiness_drug", /datum/mood_event/happiness_drug)
|
||||
|
||||
/datum/reagent/drug/happiness/on_mob_delete(mob/living/L)
|
||||
L.remove_trait(TRAIT_FEARLESS, id)
|
||||
SEND_SIGNAL(L, COMSIG_CLEAR_MOOD_EVENT, "happiness_drug")
|
||||
..()
|
||||
|
||||
/datum/reagent/drug/happiness/on_mob_life(mob/living/carbon/M)
|
||||
M.jitteriness = 0
|
||||
M.confused = 0
|
||||
M.disgust = 0
|
||||
M.adjustBrainLoss(0.2)
|
||||
..()
|
||||
. = 1
|
||||
|
||||
/datum/reagent/drug/happiness/overdose_process(mob/living/M)
|
||||
if(prob(30))
|
||||
var/reaction = rand(1,3)
|
||||
switch(reaction)
|
||||
if(1)
|
||||
M.emote("laugh")
|
||||
SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "happiness_drug", /datum/mood_event/happiness_drug_good_od)
|
||||
if(2)
|
||||
M.emote("sway")
|
||||
M.Dizzy(25)
|
||||
if(3)
|
||||
M.emote("frown")
|
||||
SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "happiness_drug", /datum/mood_event/happiness_drug_bad_od)
|
||||
M.adjustBrainLoss(0.5)
|
||||
..()
|
||||
. = 1
|
||||
|
||||
/datum/reagent/drug/happiness/addiction_act_stage1(mob/living/M)// all work and no play makes jack a dull boy
|
||||
GET_COMPONENT_FROM(mood, /datum/component/mood, M)
|
||||
mood.setSanity(min(mood.sanity, SANITY_DISTURBED))
|
||||
M.Jitter(5)
|
||||
if(prob(20))
|
||||
M.emote(pick("twitch","laugh","frown"))
|
||||
..()
|
||||
|
||||
/datum/reagent/drug/happiness/addiction_act_stage2(mob/living/M)
|
||||
GET_COMPONENT_FROM(mood, /datum/component/mood, M)
|
||||
mood.setSanity(min(mood.sanity, SANITY_UNSTABLE))
|
||||
M.Jitter(10)
|
||||
if(prob(30))
|
||||
M.emote(pick("twitch","laugh","frown"))
|
||||
..()
|
||||
|
||||
/datum/reagent/drug/happiness/addiction_act_stage3(mob/living/M)
|
||||
GET_COMPONENT_FROM(mood, /datum/component/mood, M)
|
||||
mood.setSanity(min(mood.sanity, SANITY_CRAZY))
|
||||
M.Jitter(15)
|
||||
if(prob(40))
|
||||
M.emote(pick("twitch","laugh","frown"))
|
||||
..()
|
||||
|
||||
/datum/reagent/drug/happiness/addiction_act_stage4(mob/living/carbon/human/M)
|
||||
GET_COMPONENT_FROM(mood, /datum/component/mood, M)
|
||||
mood.setSanity(SANITY_INSANE)
|
||||
M.Jitter(20)
|
||||
if(prob(50))
|
||||
M.emote(pick("twitch","laugh","frown"))
|
||||
..()
|
||||
. = 1
|
||||
|
||||
/datum/reagent/drug/skooma
|
||||
name = "Skooma"
|
||||
id = "skooma"
|
||||
@@ -429,4 +506,3 @@
|
||||
if(prob(40))
|
||||
M.emote(pick("twitch","drool","moan"))
|
||||
..()
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
M.cure_all_traumas(TRAUMA_RESILIENCE_MAGIC)
|
||||
if(M.blood_volume < BLOOD_VOLUME_NORMAL)
|
||||
M.blood_volume = BLOOD_VOLUME_NORMAL
|
||||
|
||||
|
||||
for(var/thing in M.diseases)
|
||||
var/datum/disease/D = thing
|
||||
if(D.severity == DISEASE_SEVERITY_POSITIVE)
|
||||
@@ -1286,3 +1286,37 @@
|
||||
M.adjustStaminaLoss(1.5*REM, 0)
|
||||
..()
|
||||
return TRUE
|
||||
|
||||
/datum/reagent/medicine/psicodine
|
||||
name = "Psicodine"
|
||||
id = "psicodine"
|
||||
description = "Suppresses anxiety and other various forms of mental distress. Overdose causes hallucinations and minor toxin damage."
|
||||
reagent_state = LIQUID
|
||||
color = "#07E79E"
|
||||
metabolization_rate = 0.25 * REAGENTS_METABOLISM
|
||||
overdose_threshold = 30
|
||||
|
||||
/datum/reagent/medicine/psicodine/on_mob_add(mob/living/L)
|
||||
..()
|
||||
L.add_trait(TRAIT_FEARLESS, id)
|
||||
|
||||
/datum/reagent/medicine/psicodine/on_mob_delete(mob/living/L)
|
||||
L.remove_trait(TRAIT_FEARLESS, id)
|
||||
..()
|
||||
|
||||
/datum/reagent/medicine/psicodine/on_mob_life(mob/living/carbon/M)
|
||||
M.jitteriness = max(0, M.jitteriness-6)
|
||||
M.dizziness = max(0, M.dizziness-6)
|
||||
M.confused = max(0, M.confused-6)
|
||||
M.disgust = max(0, M.disgust-6)
|
||||
GET_COMPONENT_FROM(mood, /datum/component/mood, M)
|
||||
if(mood.sanity <= SANITY_NEUTRAL) // only take effect if in negative sanity and then...
|
||||
mood.setSanity(min(mood.sanity+5, SANITY_NEUTRAL)) // set minimum to prevent unwanted spiking over neutral
|
||||
..()
|
||||
. = 1
|
||||
|
||||
/datum/reagent/medicine/psicodine/overdose_process(mob/living/M)
|
||||
M.hallucination = min(max(0, M.hallucination + 5), 60)
|
||||
M.adjustToxLoss(1, 0)
|
||||
..()
|
||||
. = 1
|
||||
|
||||
@@ -41,6 +41,13 @@
|
||||
results = list("aranesp" = 3)
|
||||
required_reagents = list("epinephrine" = 1, "atropine" = 1, "morphine" = 1)
|
||||
|
||||
/datum/chemical_reaction/happiness
|
||||
name = "Happiness"
|
||||
id = "happiness"
|
||||
results = list("happiness" = 4)
|
||||
required_reagents = list("nitrous_oxide" = 2, "epinephrine" = 1, "ethanol" = 1)
|
||||
required_catalysts = list("plasma" = 5)
|
||||
|
||||
/datum/chemical_reaction/skooma
|
||||
name = "skooma"
|
||||
id = "skooma"
|
||||
|
||||
@@ -172,6 +172,12 @@
|
||||
results = list("mutadone" = 3)
|
||||
required_reagents = list("mutagen" = 1, "acetone" = 1, "bromine" = 1)
|
||||
|
||||
/datum/chemical_reaction/neurine
|
||||
name = "Neurine"
|
||||
id = "neurine"
|
||||
results = list("neurine" = 3)
|
||||
required_reagents = list("mannitol" = 1, "acetone" = 1, "oxygen" = 1)
|
||||
|
||||
/datum/chemical_reaction/antihol
|
||||
name = "antihol"
|
||||
id = "antihol"
|
||||
@@ -252,3 +258,9 @@
|
||||
results = list("modafinil" = 5)
|
||||
required_reagents = list("diethylamine" = 1, "ammonia" = 1, "phenol" = 1, "acetone" = 1, "sacid" = 1)
|
||||
required_catalysts = list("bromine" = 1) // as close to the real world synthesis as possible
|
||||
|
||||
/datum/chemical_reaction/psicodine
|
||||
name = "Psicodine"
|
||||
id = "psicodine"
|
||||
results = list("psicodine" = 5)
|
||||
required_reagents = list( "mannitol" = 2, "water" = 2, "impedrezene" = 1)
|
||||
|
||||
Reference in New Issue
Block a user