Merge pull request #681 from Fox-McCloud/End-Era

[Goonchem] Transition to Goonchem
This commit is contained in:
ZomgPonies
2015-03-28 12:25:35 -04:00
84 changed files with 782 additions and 1513 deletions
+1 -1
View File
@@ -123,7 +123,7 @@
reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
/datum/reagent/glycerol = 5,
/datum/reagent/sacid = 5,
/datum/reagent/pacid = 5,)
/datum/reagent/facid = 5,)
tools = list(/obj/item/weapon/screwdriver)
time = 5
+2 -2
View File
@@ -404,7 +404,7 @@
icon_state = "pill9"
New()
..()
reagents.add_reagent("stoxin", 5)
reagents.add_reagent("morphine", 5)
reagents.add_reagent("sugar", 10)
reagents.add_reagent("ethanol", 5)
@@ -430,7 +430,7 @@
/obj/item/weapon/reagent_containers/hypospray/fluff/asher_spock_1/New()
..()
reagents.add_reagent("oxycodone", 15)
reagents.add_reagent("hydrocodone", 15)
update_icon()
return
+4 -4
View File
@@ -21,10 +21,10 @@
var/obj/vent = pick_n_take(vents)
var/list/gunk = list("water","carbon","flour","radium","toxin","cleaner","nutriment","condensedcapsaicin","psilocybin","lube",
"atrazine","banana","anti_toxin","space_drugs","hyperzine","holywater","ethanol","hot_coco","pacid",
"blood","stoxin","fluorine","ryetalyn","mutagen","oxycodone","fuel","cryptobiolin",
"impedrezene","mindbreaker","nanites","lipozine","frostoil","doctorsdelight","beepskysmash",
"tricordrazine", "amatoxin", "adminordrazine", "neurotoxin", "zombiepowder", "synaptizine")
"atrazine","banana","charcoal","space_drugs","methamphetamine","holywater","ethanol","hot_coco","facid",
"blood","morphine","fluorine","mutadone","mutagen","hydrocodone","fuel","cryptobiolin",
"haloperidol","mindbreaker","nanites","lipolicide","frostoil","salglu_solution","beepskysmash",
"omnizine", "amanitin", "adminordrazine", "neurotoxin", "synaptizine")
var/datum/reagents/R = new/datum/reagents(50)
R.my_atom = vent
R.add_reagent(pick(gunk), 50)
+3 -3
View File
@@ -41,7 +41,7 @@
result = /obj/item/weapon/reagent_containers/food/snacks/boiledegg
/datum/recipe/microwave/dionaroast
reagents = list("pacid" = 5) //It dissolves the carapace. Still poisonous, though.
reagents = list("facid" = 5) //It dissolves the carapace. Still poisonous, though.
items = list(
/obj/item/weapon/holder/diona,
/obj/item/weapon/reagent_containers/food/snacks/grown/apple
@@ -221,7 +221,7 @@
result = /obj/item/weapon/reagent_containers/food/snacks/donkpocket //SPECIAL
proc/warm_up(var/obj/item/weapon/reagent_containers/food/snacks/donkpocket/being_cooked)
being_cooked.warm = 1
being_cooked.reagents.add_reagent("tricordrazine", 5)
being_cooked.reagents.add_reagent("omnizine", 15)
being_cooked.bitesize = 6
being_cooked.name = "Warm " + being_cooked.name
being_cooked.cooltime()
@@ -629,7 +629,7 @@
result = /obj/item/weapon/reagent_containers/food/snacks/amanitajelly
make_food(var/obj/container as obj)
var/obj/item/weapon/reagent_containers/food/snacks/amanitajelly/being_cooked = ..(container)
being_cooked.reagents.del_reagent("amatoxin")
being_cooked.reagents.del_reagent("amanitin")
return being_cooked
/datum/recipe/microwave/meatballsoup
+8 -8
View File
@@ -16,7 +16,7 @@
/datum/genetics/side_effect/genetic_burn
name = "Genetic Burn"
symptom = "Subject's skin turns unusualy red."
treatment = "Inject small dose of dexalin."
treatment = "Inject small dose of salbutamol."
effect = "Subject's skin burns."
duration = 10*30
@@ -24,7 +24,7 @@
H.emote("me", 1, "starts turning very red..")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("dexalin"))
if(!H.reagents.has_reagent("salbutamol"))
for(var/organ_name in list("chest","l_arm","r_arm","r_leg","l_leg","head","groin"))
var/datum/organ/external/E = H.get_organ(organ_name)
E.take_damage(0, 5, 0)
@@ -32,7 +32,7 @@
/datum/genetics/side_effect/bone_snap
name = "Bone Snap"
symptom = "Subject's limbs tremble notably."
treatment = "Inject small dose of bicaridine."
treatment = "Inject small dose of Styptic Powder."
effect = "Subject's bone breaks."
duration = 10*60
@@ -40,7 +40,7 @@
H.emote("me", 1, "'s limbs start shivering uncontrollably.")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("bicaridine"))
if(!H.reagents.has_reagent("styptic_powder"))
var/organ_name = pick("chest","l_arm","r_arm","r_leg","l_leg","head","groin")
var/datum/organ/external/E = H.get_organ(organ_name)
E.take_damage(20, 0, 0)
@@ -49,7 +49,7 @@
/datum/genetics/side_effect/monkey
name = "Monkey"
symptom = "Subject starts drooling uncontrollably."
treatment = "Inject small dose of dylovene."
treatment = "Inject small dose of charcoal."
effect = "Subject turns into monkey."
duration = 10*90
@@ -57,13 +57,13 @@
H.emote("me", 1, "has drool running down from his mouth.")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("anti_toxin"))
if(!H.reagents.has_reagent("charcoal"))
H.monkeyize()
/datum/genetics/side_effect/confuse
name = "Confuse"
symptom = "Subject starts drooling uncontrollably."
treatment = "Inject small dose of dylovene."
treatment = "Inject small dose of charcoal."
effect = "Subject becomes confused."
duration = 10*30
@@ -71,7 +71,7 @@
H.emote("me", 1, "has drool running down from his mouth.")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("anti_toxin"))
if(!H.reagents.has_reagent("charcoal"))
H.confused += 100
proc/trigger_side_effect(mob/living/carbon/human/H)
+16 -16
View File
@@ -588,7 +588,7 @@ proc/populate_seed_list()
mutants = null
packet_icon = "seed-deathnettle"
plant_icon = "deathnettle"
chems = list("nutriment" = list(1,50), "pacid" = list(0,1))
chems = list("nutriment" = list(1,50), "facid" = list(0,1))
maturation = 8
yield = 2
@@ -734,7 +734,7 @@ proc/populate_seed_list()
packet_icon = "seed-ambrosiavulgaris"
plant_icon = "ambrosiavulgaris"
harvest_repeat = 1
chems = list("nutriment" = list(1), "space_drugs" = list(1,8), "kelotane" = list(1,8,1), "bicaridine" = list(1,10,1), "toxin" = list(1,10))
chems = list("nutriment" = list(1), "thc" = list(1,8), "silver_sulfadiazine" = list(1,8,1), "styptic_powder" = list(1,10,1), "toxin" = list(1,10))
lifespan = 60
maturation = 6
@@ -750,7 +750,7 @@ proc/populate_seed_list()
mutants = null
packet_icon = "seed-ambrosiadeus"
plant_icon = "ambrosiadeus"
chems = list("nutriment" = list(1), "bicaridine" = list(1,8), "synaptizine" = list(1,8,1), "hyperzine" = list(1,10,1), "space_drugs" = list(1,10))
chems = list("nutriment" = list(1), "styptic_powder" = list(1,8), "synaptizine" = list(1,8,1), "methamphetamine" = list(1,10,1), "thc" = list(1,10))
//Mushrooms/varieties.
/datum/seed/mushroom
@@ -823,7 +823,7 @@ proc/populate_seed_list()
mutants = null
packet_icon = "mycelium-liberty"
plant_icon = "liberty"
chems = list("nutriment" = list(1), "stoxin" = list(3,3), "space_drugs" = list(1,25))
chems = list("nutriment" = list(1), "morphine" = list(3,3), "space_drugs" = list(1,25))
lifespan = 25
production = 1
@@ -838,7 +838,7 @@ proc/populate_seed_list()
mutants = list("destroyingangel","plastic")
packet_icon = "mycelium-amanita"
plant_icon = "amanita"
chems = list("nutriment" = list(1), "amatoxin" = list(3,3), "psilocybin" = list(1,25))
chems = list("nutriment" = list(1), "amanitin" = list(3,3), "psilocybin" = list(1,25))
lifespan = 50
maturation = 10
@@ -854,7 +854,7 @@ proc/populate_seed_list()
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/angel)
packet_icon = "mycelium-angel"
plant_icon = "angel"
chems = list("nutriment" = list(1,50), "amatoxin" = list(13,3), "psilocybin" = list(1,25))
chems = list("nutriment" = list(1,50), "amanitin" = list(13,3), "psilocybin" = list(1,25))
maturation = 12
yield = 2
@@ -945,7 +945,7 @@ proc/populate_seed_list()
packet_icon = "seed-poppy"
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/poppy)
plant_icon = "poppy"
chems = list("nutriment" = list(1,20), "bicaridine" = list(1,10))
chems = list("nutriment" = list(1,20), "styptic_powder" = list(1,10))
lifespan = 25
potency = 20
@@ -1020,7 +1020,7 @@ proc/populate_seed_list()
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/greengrapes)
mutants = null
plant_icon = "greengrape"
chems = list("nutriment" = list(1,10), "kelotane" = list(3,5))
chems = list("nutriment" = list(1,10))
//Soybeans/varieties
/datum/seed/soybean
@@ -1085,7 +1085,7 @@ proc/populate_seed_list()
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/tobacco/space)
plant_icon = "stobacco"
harvest_repeat = 1
chems = list("nutriment" = list(1,40), "nicotine" = list(1,20), "inaprovaline" = list(1,30))
chems = list("nutriment" = list(1,40), "nicotine" = list(1,20), "epinephrine" = list(1,30))
lifespan = 25
maturation = 5
@@ -1104,7 +1104,7 @@ proc/populate_seed_list()
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/teaaspera)
plant_icon = "teaaspera"
harvest_repeat = 1
chems = list("teapowder" = list(1,20), "anti_toxin" = list(1,30))
chems = list("teapowder" = list(1,20), "charcoal" = list(1,30))
lifespan = 30
maturation = 5
@@ -1122,7 +1122,7 @@ proc/populate_seed_list()
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/teaastra)
plant_icon = "teaastra"
harvest_repeat = 1
chems = list("teapowder" = list(1,20), "impedrezene" = list(1,30))
chems = list("teapowder" = list(1,20), "haloperidol" = list(1,30))
lifespan = 30
maturation = 5
@@ -1158,7 +1158,7 @@ proc/populate_seed_list()
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/coffeer)
plant_icon = "coffeer"
harvest_repeat = 1
chems = list("coffeepowder" = list(1,20), "synaptizine" = list(1,20), "hyperzine" = list(1,40))
chems = list("coffeepowder" = list(1,20), "synaptizine" = list(1,20), "methamphetamine" = list(1,40))
lifespan = 30
maturation = 5
@@ -1208,7 +1208,7 @@ proc/populate_seed_list()
packet_icon = "seed-shand"
products = list(/obj/item/stack/medical/bruise_pack/tajaran)
plant_icon = "shand"
chems = list("bicaridine" = list(0,10))
chems = list("styptic_powder" = list(0,10))
lifespan = 50
maturation = 3
@@ -1224,7 +1224,7 @@ proc/populate_seed_list()
packet_icon = "seed-mtear"
products = list(/obj/item/stack/medical/ointment/tajaran)
plant_icon = "mtear"
chems = list("honey" = list(1,10), "kelotane" = list(3,5))
chems = list("honey" = list(1,10), "silver_sulfadiazine" = list(3,5))
lifespan = 50
maturation = 3
@@ -1318,7 +1318,7 @@ proc/populate_seed_list()
packet_icon = "seed-carrot"
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/carrot)
plant_icon = "carrot"
chems = list("nutriment" = list(1,20), "imidazoline" = list(3,5))
chems = list("nutriment" = list(1,20), "oculine" = list(3,5))
lifespan = 25
maturation = 10
@@ -1513,7 +1513,7 @@ proc/populate_seed_list()
products = list(/obj/item/weapon/reagent_containers/food/snacks/grown/kudzupod)
plant_icon = "kudzu"
product_colour = "#96D278"
chems = list("nutriment" = list(1,50), "anti_toxin" = list(1,25))
chems = list("nutriment" = list(1,50), "charcoal" = list(1,25))
lifespan = 20
maturation = 6
+1 -1
View File
@@ -58,7 +58,7 @@
//*******************************//
var/list/fruit_icon_states = list("badrecipe","kudzupod","reishi","lime","grapes","boiledrorocore","chocolateegg")
var/list/reagent_effects = list("toxin","anti_toxin","stoxin","space_drugs","mindbreaker","zombiepowder","impedrezene")
var/list/reagent_effects = list("toxin","charcoal","morphine","space_drugs","mindbreaker","haloperidol")
var/jungle_plants_init = 0
/proc/init_jungle_plants()
+1 -1
View File
@@ -149,7 +149,7 @@
var/obj/item/weapon/card/id/inserted_id
var/list/prize_list = list(
new /datum/data/mining_equipment("Stimpack MediPen", /obj/item/weapon/reagent_containers/hypospray/autoinjector/stimpack, 50),
new /datum/data/mining_equipment("Leporazine MediPen", /obj/item/weapon/reagent_containers/hypospray/autoinjector/leporazine, 50),
new /datum/data/mining_equipment("Teporone MediPen", /obj/item/weapon/reagent_containers/hypospray/autoinjector/teporone, 50),
new /datum/data/mining_equipment("MediPen Bundle", /obj/item/weapon/storage/box/autoinjector/utility, 200),
new /datum/data/mining_equipment("Whiskey", /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, 100),
new /datum/data/mining_equipment("Cigar", /obj/item/clothing/mask/cigarette/cigar/havana, 150),
+1 -1
View File
@@ -175,7 +175,7 @@
/obj/structure/table/reinforced=2,
/obj/machinery/portable_atmospherics/hydroponics=1,
/obj/effect/glowshroom/single=2,
/obj/item/weapon/reagent_containers/syringe/antitoxin=2,
/obj/item/weapon/reagent_containers/syringe/charcoal=2,
/obj/item/weapon/reagent_containers/glass/bottle/diethylamine=3,
/obj/item/weapon/reagent_containers/glass/bottle/ammonia=3
)
+1 -1
View File
@@ -1,4 +1,4 @@
#define EMOTE_COOLDOWN 50 //Time in deciseconds that the cooldown lasts
#define EMOTE_COOLDOWN 20 //Time in deciseconds that the cooldown lasts
//Emote Cooldown System (it's so simple!)
/mob/proc/handle_emote_CD()
@@ -123,7 +123,7 @@
if( health <= 20 && prob(1) )
spawn(0)
emote("gasp")
if(!reagents.has_reagent("inaprovaline"))
if(!reagents.has_reagent("epinephrine"))
adjustOxyLoss(1)
Paralyse(3)
@@ -75,7 +75,7 @@
//if( health <= 20 && prob(1) )
// spawn(0)
// emote("gasp")
if(!reagents.has_reagent("inaprovaline"))
if(!reagents.has_reagent("epinephrine"))
adjustOxyLoss(1)
Paralyse(3)
@@ -712,6 +712,8 @@
// Needed for M_TOXIC_FART
if("fart")
if(reagents.has_reagent("simethicone"))
return
// playsound(src.loc, 'sound/effects/fart.ogg', 50, 1, -3) //Admins still vote no to fun
if(locate(/obj/item/weapon/storage/bible) in get_turf(src))
viewers(src) << "<span class='warning'><b>[src] farts on the Bible!</b></span>"
+6 -5
View File
@@ -448,8 +448,6 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if(!breath || (breath.total_moles() == 0) || suiciding)
var/oxyloss = 0
if(reagents.has_reagent("inaprovaline"))
return
if(suiciding)
oxyloss = 2
adjustOxyLoss(oxyloss)//If you are suiciding, you should die a little bit faster
@@ -973,7 +971,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if( health <= 20 && prob(1) )
spawn(0)
emote("gasp")
if(!reagents.has_reagent("inaprovaline"))
if(!reagents.has_reagent("epinephrine"))
adjustOxyLoss(1)*/
if(hallucination && !(species.flags & IS_SYNTHETIC))
@@ -1008,7 +1006,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
adjustStaminaLoss(-10)
adjustHalLoss(-3)
if (mind)
//Are they SSD? If so we'll keep them asleep but work off some of that sleep var in case of stoxin or similar.
//Are they SSD? If so we'll keep them asleep but work off some of that sleep var in case of morphine or similar.
if(player_logged)
sleeping = max(sleeping-1, 2)
else
@@ -1625,6 +1623,9 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if(species.flags & IS_SYNTHETIC)
return
if(reagents.has_reagent("formaldehyde")) //embalming fluid stops decay
return
if(decaytime <= 6000) //10 minutes for decaylevel1 -- stinky
return
@@ -1652,7 +1653,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if(M && (M.flags & MASKCOVERSMOUTH))
return
H << "<spawn class='warning'>You smell something foul..."
H.vomit()
H.fakevomit()
proc/handle_heartbeat()
var/client/C = src.client
@@ -185,9 +185,9 @@
if (reagents.get_reagent_amount("plasma")>=5)
mutation_chance = min(mutation_chance + 5,50) //Prevents mutation chance going >50%
reagents.remove_reagent("plasma", 5)
if (reagents.get_reagent_amount("inaprovaline")>=5)
if (reagents.get_reagent_amount("epinephrine")>=5)
mutation_chance = max(mutation_chance - 5,0) //Prevents muation chance going <0%
reagents.remove_reagent("inaprovaline", 5)
reagents.remove_reagent("epinephrine", 5)
src.updatehealth()
return //TODO: DEFERRED
@@ -205,7 +205,7 @@
else if(src.health <= config.health_threshold_crit)
if(!src.reagents.has_reagent("inaprovaline"))
if(!src.reagents.has_reagent("epinephrine"))
src.adjustOxyLoss(10)
if(src.stat != DEAD)
@@ -83,7 +83,7 @@
tally += (283.222 - bodytemperature) / 10 * 1.75
if(reagents)
if(reagents.has_reagent("hyperzine")) // Hyperzine slows slimes down
if(reagents.has_reagent("methamphetamine")) // Meth slows slimes down
tally *= 2
if(reagents.has_reagent("frostoil")) // Frostoil also makes them move VEEERRYYYYY slow
@@ -503,7 +503,7 @@
if( health <= 20 && prob(1) )
spawn(0)
emote("gasp")
if(!reagents.has_reagent("inaprovaline"))
if(!reagents.has_reagent("epinephrine"))
adjustOxyLoss(1)
Paralyse(3)
if(halloss > 100)
+4 -12
View File
@@ -11,18 +11,10 @@
1 * src.getCloneLoss() + \
1 * src.halloss
if(reagents.has_reagent("alkysine"))
src.traumatic_shock -= 5
if(reagents.has_reagent("inaprovaline"))
src.traumatic_shock -= 15
if(reagents.has_reagent("synaptizine"))
src.traumatic_shock -= 30
if(reagents.has_reagent("paracetamol"))
src.traumatic_shock -= 40
if(reagents.has_reagent("tramadol"))
src.traumatic_shock -= 60
if(reagents.has_reagent("oxycodone"))
src.traumatic_shock -= 200
if(reagents)
for(var/datum/reagent/R in reagents.reagent_list)
if(R.shock_reduction)
src.traumatic_shock -= R.shock_reduction // now you too can varedit cyanide to reduce shock by 1000 - Iamgoofball
if(src.slurring)
src.traumatic_shock -= 10
if(src.analgesic)
@@ -125,14 +125,14 @@
src.emag = new /obj/item/weapon/reagent_containers/spray(src)
src.emag.reagents.add_reagent("pacid", 250)
src.emag.reagents.add_reagent("facid", 250)
src.emag.name = "Polyacid spray"
return
/obj/item/weapon/robot_module/medical/respawn_consumable(var/mob/living/silicon/robot/R)
if(src.emag)
var/obj/item/weapon/reagent_containers/spray/PS = src.emag
PS.reagents.add_reagent("pacid", 2)
PS.reagents.add_reagent("facid", 2)
..()
/obj/item/weapon/robot_module/engineering
@@ -365,13 +365,13 @@
src.modules += new /obj/item/device/flash/cyborg/alien(src)
src.modules += new /obj/item/borg/sight/thermal/alien(src)
var/obj/item/weapon/reagent_containers/spray/alien/stun/S = new /obj/item/weapon/reagent_containers/spray/alien/stun(src)
S.reagents.add_reagent("stoxin",250) //nerfed to sleeptoxin to make it less instant drop.
S.reagents.add_reagent("morphine",250) //nerfed to sleeptoxin to make it less instant drop.
src.modules += S
var/obj/item/weapon/reagent_containers/spray/alien/smoke/A = new /obj/item/weapon/reagent_containers/spray/alien/smoke(src)
S.reagents.add_reagent("water",50) //Water is used as a dummy reagent for the smoke bombs. More of an ammo counter.
src.modules += A
src.emag = new /obj/item/weapon/reagent_containers/spray/alien/acid(src)
src.emag.reagents.add_reagent("pacid", 125)
src.emag.reagents.add_reagent("facid", 125)
src.emag.reagents.add_reagent("sacid", 125)
/obj/item/weapon/robot_module/alien/hunter/add_languages(var/mob/living/silicon/robot/R)
@@ -259,7 +259,7 @@
if(chemicals < 50)
src << "You don't have enough chemicals!"
var/chem = input("Select a chemical to secrete.", "Chemicals") as null|anything in list("alkysine","bicaridine","hyperzine","tramadol")
var/chem = input("Select a chemical to secrete.", "Chemicals") as null|anything in list("mannitol","styptic_powder","methamphetamine","acetaminophen")
if(!chem || chemicals < 50 || !host || controlling || !src || stat) //Sanity check.
return
@@ -49,7 +49,7 @@
melee_damage_upper = 10
poison_per_bite = 10
var/atom/cocoon_target
poison_type = "stoxin"
poison_type = "morphine"
var/fed = 0
//hunters have the most poison and move the fastest, so they can find prey
@@ -153,6 +153,6 @@
for(counter=0, counter<=powerlevel, counter++)
var/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice/S = new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
S.reagents.add_reagent("mushroomhallucinogen", powerlevel)
S.reagents.add_reagent("doctorsdelight", powerlevel)
S.reagents.add_reagent("omnizine", powerlevel)
S.reagents.add_reagent("synaptizine", powerlevel)
del(src)
+4 -5
View File
@@ -453,9 +453,8 @@ Note that amputating the affected organ does in fact remove the infection from t
// Internal wounds get worse over time. Low temperatures (cryo) stop them.
if(W.internal && !W.can_autoheal() && owner.bodytemperature >= 170)
var/bicardose = owner.reagents.get_reagent_amount("bicaridine")
var/inaprovaline = owner.reagents.get_reagent_amount("inaprovaline")
if(!bicardose || !inaprovaline) //bicaridine and inaprovaline stop internal wounds from growing bigger with time, and also stop bleeding
var/bicardose = owner.reagents.get_reagent_amount("styptic_powder")
if(!bicardose) //styptic powder stops internal wounds from growing bigger with time, and also stop bleeding
W.open_wound(0.1 * wound_update_accuracy)
owner.vessel.remove_reagent("blood",0.05 * W.damage * wound_update_accuracy)
@@ -463,8 +462,8 @@ Note that amputating the affected organ does in fact remove the infection from t
if(prob(1 * wound_update_accuracy))
owner.custom_pain("You feel a stabbing pain in your [display_name]!",1)
//overdose of bicaridine begins healing IB
if(owner.reagents.get_reagent_amount("bicaridine") >= 30)
//overdose of styptic powder begins healing IB
if(owner.reagents.get_reagent_amount("styptic_powder") >= 30)
W.damage = max(0, W.damage - 0.2)
// slow healing
+3 -3
View File
@@ -191,7 +191,7 @@
src.damage = 0
//High toxins levels are dangerous
if(owner.getToxLoss() >= 60 && !owner.reagents.has_reagent("anti_toxin"))
if(owner.getToxLoss() >= 60 && !owner.reagents.has_reagent("charcoal"))
//Healthy liver suffers on its own
if (src.damage < min_broken_damage)
src.damage += 0.2 * process_accuracy
@@ -202,7 +202,7 @@
O.damage += 0.2 * process_accuracy
//Detox can heal small amounts of damage
if (src.damage && src.damage < src.min_bruised_damage && owner.reagents.has_reagent("anti_toxin"))
if (src.damage && src.damage < src.min_bruised_damage && owner.reagents.has_reagent("charcoal"))
src.damage -= 0.2 * process_accuracy
// Damaged liver means some chemicals are very dangerous
@@ -213,7 +213,7 @@
owner.adjustToxLoss(0.1 * process_accuracy)
// Can't cope with toxins at all
for(var/toxin in list("toxin", "plasma", "sacid", "pacid", "cyanide", "lexorin", "amatoxin", "chloralhydrate", "carpotoxin", "zombiepowder", "mindbreaker"))
for(var/toxin in list("toxin", "plasma", "sacid", "facid", "cyanide", "amanitin", "carpotoxin", "mindbreaker"))
if(owner.reagents.has_reagent(toxin))
owner.adjustToxLoss(0.3 * process_accuracy)
+7 -7
View File
@@ -9,11 +9,11 @@ mob/var/next_pain_time = 0
// amount is a num from 1 to 100
mob/living/carbon/proc/pain(var/partname, var/amount, var/force, var/burning = 0)
if(stat >= 2) return
if(reagents.has_reagent("paracetamol"))
if(reagents.has_reagent("acetaminophen"))
return
if(reagents.has_reagent("tramadol"))
if(reagents.has_reagent("morphine"))
return
if(reagents.has_reagent("oxycodone"))
if(reagents.has_reagent("hydrocodone"))
return
if(analgesic)
return
@@ -58,9 +58,9 @@ mob/living/carbon/human/proc/custom_pain(var/message, var/flash_strength)
if(species && species.flags & NO_PAIN) return
if(reagents.has_reagent("tramadol"))
if(reagents.has_reagent("morphine"))
return
if(reagents.has_reagent("oxycodone"))
if(reagents.has_reagent("hydrocodone"))
return
if(analgesic)
return
@@ -80,9 +80,9 @@ mob/living/carbon/human/proc/handle_pain()
if(species && species.flags & NO_PAIN) return
if(stat >= 2) return
if(reagents.has_reagent("tramadol"))
if(reagents.has_reagent("morphine"))
return
if(reagents.has_reagent("oxycodone"))
if(reagents.has_reagent("hydrocodone"))
return
if(analgesic)
return
@@ -174,7 +174,7 @@
..()
reagents.add_reagent("aluminum", 15)
reagents.add_reagent("foaming_agent", 5)
reagents.add_reagent("pacid", 5)
reagents.add_reagent("facid", 5)
//This one is for future syringe guns update
/obj/item/projectile/bullet/dart/syringe
@@ -380,7 +380,9 @@ datum
del(A)
update_total()
my_atom.on_reagent_change()
check_ignoreslow(my_atom)
check_gofast(my_atom)
check_goreallyfast(my_atom)
return 0
+1 -1
View File
@@ -995,7 +995,7 @@
/obj/item/stack/sheet/mineral/silver = list("silver" = 20),
/obj/item/stack/sheet/mineral/gold = list("gold" = 20),
/obj/item/weapon/grown/nettle = list("sacid" = 0),
/obj/item/weapon/grown/deathnettle = list("pacid" = 0),
/obj/item/weapon/grown/deathnettle = list("facid" = 0),
/obj/item/weapon/grown/novaflower = list("capsaicin" = 0),
//Blender Stuff
+21 -585
View File
@@ -24,7 +24,7 @@ datum
var/metabolization_rate = REAGENTS_METABOLISM
//var/list/viruses = list()
var/color = "#000000" // rgb: 0, 0, 0 (does not support alpha channels - yet!)
var/shock_reduction = 0
proc
reaction_mob(var/mob/M, var/method=TOUCH, var/volume) //By default we have a chance to transfer some
if(!istype(M, /mob/living)) return 0
@@ -85,7 +85,7 @@ datum
on_mob_life(var/mob/living/M as mob, var/alien)
if(!istype(M, /mob/living)) // YOU'RE A FUCKING RETARD NEO WHY CAN'T YOU JUST FIX THE PROBLEM ON THE REAGENT - Iamgoofball
return //Noticed runtime errors from pacid trying to damage ghosts, this should fix. --NEO
return //Noticed runtime errors from facid trying to damage ghosts, this should fix. --NEO
// Certain elements in too large amounts cause side-effects
holder.remove_reagent(src.id, metabolization_rate) //By default it slowly disappears.
current_cycle++
@@ -318,25 +318,6 @@ datum
T.wet_overlay = null
return
anti_toxin
name = "Anti-Toxin (Dylovene)"
id = "anti_toxin"
description = "Dylovene is a broad-spectrum antitoxin."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob, var/alien)
if(!M) M = holder.my_atom
if(!alien || alien != IS_DIONA)
M.drowsyness = max(M.drowsyness-2*REM, 0)
M.hallucination = max(0, M.hallucination - 5*REM)
M.adjustToxLoss(-2*REM)
for(var/datum/reagent/R in M.reagents.reagent_list)
if(R != src)
M.reagents.remove_reagent(R.id,0.5)
..()
return
toxin
name = "Toxin"
id = "toxin"
@@ -433,50 +414,6 @@ datum
..()
return
stoxin
name = "Sleep Toxin"
id = "stoxin"
description = "An effective hypnotic used to treat insomnia."
reagent_state = LIQUID
color = "#E895CC" // rgb: 232, 149, 204
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(!data) data = 1
switch(data)
if(1 to 12)
if(prob(5)) M.emote("yawn")
if(12 to 15)
M.eye_blurry = max(M.eye_blurry, 10)
if(15 to 25)
M.drowsyness = max(M.drowsyness, 20)
if(25 to INFINITY)
M.Paralyse(20)
M.drowsyness = max(M.drowsyness, 30)
data++
..()
return
inaprovaline
name = "Inaprovaline"
id = "inaprovaline"
description = "Inaprovaline is a synaptic stimulant and cardiostimulant. Commonly used to stabilize patients."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob, var/alien)
if(!M) M = holder.my_atom
if(alien && alien == IS_VOX)
M.adjustToxLoss(REAGENTS_METABOLISM)
else
if(M.losebreath >= 10)
M.losebreath = max(10, M.losebreath-5)
holder.remove_reagent(src.id, 0.5 * REAGENTS_METABOLISM)
..()
return
space_drugs
name = "Space drugs"
id = "space_drugs"
@@ -852,90 +789,6 @@ datum
M << "\red \the [O] melts."
del(O)
pacid
name = "Polytrinic acid"
id = "pacid"
description = "Polytrinic acid is a an extremely corrosive chemical substance."
reagent_state = LIQUID
color = "#8E18A9" // rgb: 142, 24, 169
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.adjustToxLoss(1*REM)
M.adjustFireLoss(1)
..()
return
reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)
if(!istype(M, /mob/living))
return //wooo more runtime fixin
if(method == TOUCH)
if(ishuman(M))
var/mob/living/carbon/human/H = M
if(H.wear_mask)
if(!H.wear_mask.unacidable)
del (H.wear_mask)
H.update_inv_wear_mask()
H << "\red Your mask melts away but protects you from the acid!"
else
H << "\red Your mask protects you from the acid!"
return
if(H.head)
if(prob(15) && !H.head.unacidable)
del(H.head)
H.update_inv_head()
H << "\red Your helmet melts away but protects you from the acid"
else
H << "\red Your helmet protects you from the acid!"
return
if(!H.unacidable)
var/datum/organ/external/affecting = H.get_organ("head")
if(affecting.take_damage(15, 0))
H.UpdateDamageIcon()
H.emote("scream")
else if(ismonkey(M))
var/mob/living/carbon/monkey/MK = M
if(MK.wear_mask)
if(!MK.wear_mask.unacidable)
del (MK.wear_mask)
MK.update_inv_wear_mask()
MK << "\red Your mask melts away but protects you from the acid!"
else
MK << "\red Your mask protects you from the acid!"
return
if(!MK.unacidable)
MK.take_organ_damage(min(15, volume * 4)) // same deal as sulphuric acid
else
if(!M.unacidable)
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/datum/organ/external/affecting = H.get_organ("head")
if(affecting.take_damage(15, 0))
H.UpdateDamageIcon()
H.emote("scream")
H.status_flags |= DISFIGURED
else
M.take_organ_damage(min(15, volume * 4))
reaction_obj(var/obj/O, var/volume)
if(istype(O,/obj/item/weapon/organ/head))
new/obj/item/weapon/skeleton/head(O.loc)
for(var/mob/M in viewers(5, O))
M << "\red \the [O] melts."
del(O)
if((istype(O,/obj/item) || istype(O,/obj/effect/glowshroom)))
if(!O.unacidable)
var/obj/effect/decal/cleanable/molten_item/I = new/obj/effect/decal/cleanable/molten_item(O.loc)
I.desc = "Looks like this was \an [O] some time ago."
for(var/mob/M in viewers(5, O))
M << "\red \the [O] melts."
del(O)
glycerol
name = "Glycerol"
id = "glycerol"
@@ -983,34 +836,6 @@ datum
new /obj/effect/decal/cleanable/greenglow(T)
return
ryetalyn
name = "Ryetalyn"
id = "ryetalyn"
description = "Ryetalyn can cure all genetic abnomalities."
reagent_state = SOLID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
var/needs_update = 1 //M.mutations.len > 0
for(var/block=1;block<=DNA_SE_LENGTH;block++)
M.dna.SetSEState(block,0)
genemutcheck(M,block,null,MUTCHK_FORCED)
M.update_mutations()
M.dna.struc_enzymes = M.dna.struc_enzymes_original
// Might need to update appearance for hulk etc.
if(needs_update && ishuman(M))
var/mob/living/carbon/human/H = M
H.update_mutations()
..()
return
thermite
name = "Thermite"
id = "thermite"
@@ -1033,13 +858,13 @@ datum
..()
return
paracetamol
name = "Paracetamol"
id = "paracetamol"
description = "Most probably know this as Tylenol, but this chemical is a mild, simple painkiller."
acetaminophen
name = "Acetaminophenl"
id = "acetaminophen"
description = "Most probably know this as Tylenol. This chemical is a mild, simple painkiller."
reagent_state = LIQUID
color = "#C855DC"
shock_reduction = 40
metabolization_rate = 0.2 // Lasts 2.5 minutes for 15 units
on_mob_life(var/mob/living/M as mob) // what the fuck are you idiots smoking
@@ -1052,7 +877,7 @@ datum
id = "mutagen"
description = "Might cause unpredictable mutations. Keep away from children."
reagent_state = LIQUID
color = "#13BC5E" // rgb: 19, 188, 94
color = "#00FF00"
metabolization_rate = 0.3
reaction_mob(var/mob/M, var/method=TOUCH, var/volume)
@@ -1075,35 +900,20 @@ datum
..()
return
tramadol
name = "Tramadol"
id = "tramadol"
description = "A simple, yet effective painkiller."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 0.2 // Lasts 2.5 minutes for 15 units
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
..()
return
oxycodone
name = "Oxycodone"
id = "oxycodone"
description = "An effective and very addictive painkiller."
hydrocodone
name = "Hydrocodone-Acetaminophen"
id = "hydrocodone"
description = "An extremely effective painkiller; may have long term abuse consequences."
reagent_state = LIQUID
color = "#C805DC"
metabolization_rate = 0.3 // Lasts 1.5 minutes for 15 units
shock_reduction = 200
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
..()
return
virus_food
name = "Virus Food"
id = "virusfood"
@@ -1136,22 +946,6 @@ datum
reaction_turf(var/turf/T, var/volume)
T.germ_level -= min(volume*20, T.germ_level)
/* reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)
src = null
if (method==TOUCH)
if(istype(M, /mob/living/carbon/human))
if(M.health >= -100 && M.health <= 0)
M.crit_op_stage = 0.0
if (method==INGEST)
usr << "Well, that was stupid."
M.adjustToxLoss(3)
return
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.apply_effect(3,IRRADIATE,0)
..()
return
*/
iron
name = "Iron"
id = "iron"
@@ -1341,8 +1135,6 @@ datum
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(holder.has_reagent("inaprovaline"))
holder.remove_reagent("inaprovaline", 2*REM)
M.adjustToxLoss(3*REM)
..()
return
@@ -1354,22 +1146,6 @@ datum
..()
return
leporazine
name = "Leporazine"
id = "leporazine"
description = "Leporazine can be use to stabilize an individuals body temperature."
reagent_state = LIQUID
color = "#E9D66B" // rgb: 233, 214, 107
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(M.bodytemperature > 310)
M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT))
else if(M.bodytemperature < 311)
M.bodytemperature = min(310, M.bodytemperature + (40 * TEMPERATURE_DAMAGE_COEFFICIENT))
..()
return
cryptobiolin
name = "Cryptobiolin"
id = "cryptobiolin"
@@ -1401,101 +1177,6 @@ datum
..()
return
kelotane
name = "Kelotane"
id = "kelotane"
description = "Kelotane is a drug used to treat burns."
reagent_state = LIQUID
color = "#ECD540" // rgb: 236, 213, 64
on_mob_life(var/mob/living/M as mob)
if(M.stat == 2.0)
return
if(!M) M = holder.my_atom
//This needs a diona check but if one is added they won't be able to heal burn damage at all.
M.heal_organ_damage(0,2*REM)
..()
return
dermaline
name = "Dermaline"
id = "dermaline"
description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob, var/alien)
if(M.stat == 2.0) //THE GUY IS **DEAD**! BEREFT OF ALL LIFE HE RESTS IN PEACE etc etc. He does NOT metabolise shit anymore, god DAMN
return
if(!M) M = holder.my_atom
if(!alien || alien != IS_DIONA)
M.heal_organ_damage(0,3*REM)
..()
return
dexalin
name = "Dexalin"
id = "dexalin"
description = "Dexalin is used in the treatment of oxygen deprivation."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob, var/alien)
if(M.stat == 2.0)
return //See above, down and around. --Agouri
if(!M) M = holder.my_atom
if(alien && alien == IS_VOX)
M.adjustToxLoss(2*REM)
else if(!alien || alien != IS_DIONA)
M.adjustOxyLoss(-2*REM)
if(holder.has_reagent("lexorin"))
holder.remove_reagent("lexorin", 2*REM)
..()
return
dexalinp
name = "Dexalin Plus"
id = "dexalinp"
description = "Dexalin Plus is used in the treatment of oxygen deprivation. Its highly effective."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob, var/alien)
if(M.stat == 2.0)
return
if(!M) M = holder.my_atom
if(alien && alien == IS_VOX)
M.adjustOxyLoss()
else if(!alien || alien != IS_DIONA)
M.adjustOxyLoss(-M.getOxyLoss())
if(holder.has_reagent("lexorin"))
holder.remove_reagent("lexorin", 2*REM)
..()
return
tricordrazine
name = "Tricordrazine"
id = "tricordrazine"
description = "Tricordrazine is a highly potent stimulant, originally derived from cordrazine. Can be used to treat a wide range of injuries."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob, var/alien)
if(M.stat == 2.0)
return
if(!M) M = holder.my_atom
if(!alien || alien != IS_DIONA)
if(M.getOxyLoss() && prob(80)) M.adjustOxyLoss(-1*REM)
if(M.getBruteLoss() && prob(80)) M.heal_organ_damage(1*REM,0)
if(M.getFireLoss() && prob(80)) M.heal_organ_damage(0,1*REM)
if(M.getToxLoss() && prob(80)) M.adjustToxLoss(-1*REM)
..()
return
adminordrazine //An OP chemical for admins
name = "Adminordrazine"
id = "adminordrazine"
@@ -1553,101 +1234,15 @@ datum
synaptizine
name = "Synaptizine"
id = "synaptizine"
description = "Synaptizine is a synaptic stimulant that can also be used to treat certain diseases."
description = "Synaptizine is used to treat neuroleptic shock. Can be used to help remove disabling symptoms such as paralysis."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
color = "#FA46FA"
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.drowsyness = max(M.drowsyness-5, 0)
M.AdjustParalysis(-1)
M.AdjustStunned(-1)
M.AdjustWeakened(-1)
if(holder.has_reagent("mindbreaker"))
holder.remove_reagent("mindbreaker", 5)
M.hallucination = max(0, M.hallucination - 10)
if(prob(60)) M.adjustToxLoss(1)
..()
return
impedrezene
name = "Impedrezene"
id = "impedrezene"
description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions."
reagent_state = LIQUID
color = "#2C1608" // rgb: 44, 22, 8
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.jitteriness = max(M.jitteriness-5,0)
if(prob(80)) M.adjustBrainLoss(1*REM)
if(prob(50)) M.drowsyness = max(M.drowsyness, 3)
if(prob(10)) M.emote("drool")
..()
return
hyronalin
name = "Hyronalin"
id = "hyronalin"
description = "Hyronalin is a medicinal drug used to counter the effect of radiation poisoning."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.apply_effect(max(M.radiation-3*REM,0),IRRADIATE,0)
..()
return
arithrazine
name = "Arithrazine"
id = "arithrazine"
description = "Arithrazine is an unstable medication used for the most extreme cases of radiation poisoning."
reagent_state = LIQUID
color = "#BFFF00" // rgb: 191, 255, 0
on_mob_life(var/mob/living/M as mob)
if(M.stat == 2.0)
return //See above, down and around. --Agouri
if(!M) M = holder.my_atom
M.radiation = M.apply_effect(max(M.radiation-7*REM,0),IRRADIATE,0)
M.adjustToxLoss(-1*REM)
if(prob(15))
M.take_organ_damage(1, 0)
..()
return
alkysine
name = "Alkysine"
id = "alkysine"
description = "Alkysine is a drug used to lessen the damage to neurological tissue after a catastrophic injury. Can heal brain tissue."
reagent_state = LIQUID
color = "#F77FBE" // rgb: 247, 127, 190
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.adjustBrainLoss(-3*REM)
..()
return
imidazoline
name = "Imidazoline"
id = "imidazoline"
description = "Heals eye damage"
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.eye_blurry = max(M.eye_blurry-5 , 0)
M.eye_blind = max(M.eye_blind-5 , 0)
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"]
if(istype(E))
if(E.damage > 0)
E.damage -= 1
..()
return
@@ -1685,44 +1280,12 @@ datum
..()
return
bicaridine
name = "Bicaridine"
id = "bicaridine"
description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob, var/alien)
if(M.stat == 2.0)
return
if(!M) M = holder.my_atom
if(alien != IS_DIONA)
M.heal_organ_damage(2*REM,0)
..()
return
hyperzine
name = "Hyperzine"
id = "hyperzine"
description = "Hyperzine is a highly effective, long lasting, muscle stimulant."
reagent_state = LIQUID
color = "#CCFF00" // rgb: 204, 255, 0
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(prob(5)) M.emote(pick("twitch","blink_r","shiver"))
M.status_flags |= GOTTAGOFAST
holder.remove_reagent(src.id, 0.5 * REAGENTS_METABOLISM)
// ..()
return
cryoxadone
name = "Cryoxadone"
id = "cryoxadone"
description = "A chemical mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 170K for it to metabolise correctly."
description = "A plasma mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 265K for it to metabolise correctly."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
color = "#0000C8" // rgb: 200, 165, 220
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -1800,32 +1363,6 @@ datum
..()
return
zombiepowder
name = "Zombie Powder"
id = "zombiepowder"
description = "A strong neurotoxin that puts the subject into a death-like state."
color = "#669900" // rgb: 102, 153, 0
on_mob_life(var/mob/living/carbon/M as mob)
if(!M) M = holder.my_atom
if(volume >= 1) //Hotfix for Fakedeath never ending.
M.status_flags |= FAKEDEATH
else
M.status_flags &= ~FAKEDEATH
M.adjustOxyLoss(0.5*REM)
M.adjustToxLoss(0.5*REM)
M.Weaken(5)
M.silent = max(M.silent, 5)
M.tod = worldtime2text()
..()
return
/*Del()
if(holder && ismob(holder.my_atom))
var/mob/M = holder.my_atom
M.status_flags &= ~FAKEDEATH
..()8*/
staminatoxin
name = "Tirizene"
id = "tirizene"
@@ -1927,13 +1464,6 @@ datum
reagent_state = SOLID
color = "#664B63" // rgb: 102, 75, 99
nicotine
name = "Nicotine"
id = "nicotine"
description = "A highly addictive stimulant extracted from the tobacco plant."
reagent_state = LIQUID
color = "#181818" // rgb: 24, 24, 24
ammonia
name = "Ammonia"
id = "ammonia"
@@ -1949,23 +1479,6 @@ datum
reagent_state = LIQUID
color = "#604030" // rgb: 96, 64, 48
ethylredoxrazine // FUCK YOU, ALCOHOL
name = "Ethylredoxrazine"
id = "ethylredoxrazine"
description = "A powerful oxidizer that reacts with ethanol."
reagent_state = SOLID
color = "#605048" // rgb: 96, 80, 72
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.dizziness = 0
M.drowsyness = 0
M.stuttering = 0
M.confused = 0
M.reagents.remove_all_type(/datum/reagent/ethanol, 1*REM, 0, 1)
..()
return
Spores
name = "Spores"
id = "spores"
@@ -1981,30 +1494,6 @@ datum
M.eye_blurry = max(M.eye_blurry, 3)
return
chloralhydrate //Otherwise known as a "Mickey Finn"
name = "Chloral Hydrate"
id = "chloralhydrate"
description = "A powerful sedative."
reagent_state = SOLID
color = "#000067" // rgb: 0, 0, 103
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(!data) data = 1
data++
switch(data)
if(1 to 10)
M.confused += 2
M.drowsyness += 2
if(10 to 50)
M.sleeping += 1
if(51 to INFINITY)
M.sleeping += 1
M.adjustToxLoss((data - 50)*REM)
holder.remove_reagent(src.id, 0.5 * REAGENTS_METABOLISM)
..()
return
beer2 //disguised as normal beer for use by emagged brobots
name = "Beer"
id = "beer2"
@@ -2043,23 +1532,6 @@ datum
..()
return
lipozine
name = "Lipozine" // The anti-nutriment.
id = "lipozine"
description = "A chemical compound that causes a powerful fat-burning reaction."
reagent_state = LIQUID
nutriment_factor = 10 * REAGENTS_METABOLISM
color = "#BBEDA4" // rgb: 187, 237, 164
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.nutrition -= nutriment_factor
M.overeatduration = 0
if(M.nutrition < 0)//Prevent from going into negatives.
M.nutrition = 0
..()
return
soysauce
name = "Soysauce"
id = "soysauce"
@@ -2256,32 +1728,6 @@ datum
..()
return
amatoxin
name = "Amanitin"
id = "amatoxin"
description = "A powerful poison derived from certain species of mushroom."
color = "#792300" // rgb: 121, 35, 0
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(!data) data = 1
data++
..()
return
Del()
if(holder)
if (istype(holder.my_atom,/mob/living))
var/mob/living/M as mob
var/to_remove = 0
if (holder.has_reagent("anti_toxin"))
to_remove = min(holder.get_reagent_amount("anti_toxin"),data)
holder.remove_reagent("anti_toxin", to_remove, 0)
data -= to_remove
if(M)
M.adjustToxLoss((data-1)*rand(2,4))
..()
psilocybin
name = "Psilocybin"
id = "psilocybin"
@@ -2371,11 +1817,11 @@ datum
del(hotspot)
enzyme
name = "Universal Enzyme"
name = "Denatured Enzyme"
id = "enzyme"
description = "A universal enzyme used in the preperation of certain chemicals and foods."
description = "Heated beyond usefulness, this enzyme is now worthless."
reagent_state = LIQUID
color = "#365E30" // rgb: 54, 94, 48
color = "#282314" // rgb: 54, 94, 48
dry_ramen
name = "Dry Ramen"
@@ -2594,12 +2040,7 @@ datum
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(M.getOxyLoss() && prob(80)) M.adjustOxyLoss(-2)
if(M.getBruteLoss() && prob(80)) M.heal_organ_damage(2,0)
if(M.getFireLoss() && prob(80)) M.heal_organ_damage(0,2)
if(M.getToxLoss() && prob(80)) M.adjustToxLoss(-2)
if(M.dizziness !=0) M.dizziness = max(0,M.dizziness-15)
if(M.confused !=0) M.confused = max(0,M.confused - 5)
if(M.getToxLoss() && prob(20)) M.adjustToxLoss(-1)
..()
return
@@ -3332,11 +2773,6 @@ datum
reagent_state = LIQUID
color = "#664300" // rgb: 102, 67, 0
on_mob_life(var/mob/living/M as mob)
M.Stun(2)
..()
return
changelingsting
name = "Changeling Sting"
id = "changelingsting"
+30 -222
View File
@@ -59,32 +59,12 @@ datum
required_reagents = list("aluminum" = 1, "silicon" = 1, "oxygen" = 1)
result_amount = 3
*/
stoxin
name = "Sleep Toxin"
id = "stoxin"
result = "stoxin"
required_reagents = list("chloralhydrate" = 1, "sugar" = 4)
result_amount = 5
sterilizine
name = "Sterilizine"
id = "sterilizine"
result = "sterilizine"
required_reagents = list("ethanol" = 1, "anti_toxin" = 1, "chlorine" = 1)
result_amount = 3
inaprovaline
name = "Inaprovaline"
id = "inaprovaline"
result = "inaprovaline"
required_reagents = list("oxygen" = 1, "carbon" = 1, "sugar" = 1)
result_amount = 3
anti_toxin
name = "Anti-Toxin (Dylovene)"
id = "anti_toxin"
result = "anti_toxin"
required_reagents = list("silicon" = 1, "potassium" = 1, "nitrogen" = 1)
required_reagents = list("ethanol" = 1, "charcoal" = 1, "chlorine" = 1)
result_amount = 3
mutagen
@@ -93,28 +73,23 @@ datum
result = "mutagen"
required_reagents = list("radium" = 1, "plasma" = 1, "chlorine" = 1)
result_amount = 3
mix_message = "The substance turns neon green and bubbles unnervingly."
tramadol
name = "Tramadol"
id = "tramadol"
result = "tramadol"
required_reagents = list("inaprovaline" = 1, "ethanol" = 1, "oxygen" = 1)
acetaminophen
name = "Acetaminophen"
id = "acetaminophen"
result = "acetaminophen"
required_reagents = list("phenol" = 1, "sodium" = 1, "oxygen" = 1, "nitrogen" = 1, "sacid" = 1, "water" = 1)
result_amount = 6
mix_message = "The mixture becomes a fine white powder."
hydrocodone
name = "Hydrocodone"
id = "hydrocodone"
result = "hydrocodone"
required_reagents = list("morphine" = 1, "acetaminophen" = 1, "sacid" = 1, "water" = 1, "oil" = 1)
result_amount = 3
paracetamol
name = "Paracetamol"
id = "paracetamol"
result = "paracetamol"
required_reagents = list("tramadol" = 1, "sugar" = 1, "water" = 1)
result_amount = 3
oxycodone
name = "Oxycodone"
id = "oxycodone"
result = "oxycodone"
required_reagents = list("ethanol" = 1, "tramadol" = 1, "plasma" = 1)
result_amount = 1
thermite
name = "Thermite"
id = "thermite"
@@ -137,53 +112,11 @@ datum
required_reagents = list("water" = 1, "silicon" = 1, "oxygen" = 1)
result_amount = 4
pacid
name = "Polytrinic acid"
id = "pacid"
result = "pacid"
required_reagents = list("sacid" = 1, "chlorine" = 1, "potassium" = 1)
result_amount = 3
synaptizine
name = "Synaptizine"
id = "synaptizine"
result = "synaptizine"
required_reagents = list("sugar" = 1, "lithium" = 1, "water" = 1)
result_amount = 3
hyronalin
name = "Hyronalin"
id = "hyronalin"
result = "hyronalin"
required_reagents = list("radium" = 1, "anti_toxin" = 1)
result_amount = 2
arithrazine
name = "Arithrazine"
id = "arithrazine"
result = "arithrazine"
required_reagents = list("hyronalin" = 1, "hydrogen" = 1)
result_amount = 2
impedrezene
name = "Impedrezene"
id = "impedrezene"
result = "impedrezene"
required_reagents = list("mercury" = 1, "oxygen" = 1, "sugar" = 1)
result_amount = 2
kelotane
name = "Kelotane"
id = "kelotane"
result = "kelotane"
required_reagents = list("silicon" = 1, "carbon" = 1)
result_amount = 2
peridaxon
name = "Peridaxon"
id = "peridaxon"
result = "peridaxon"
required_reagents = list("bicaridine" = 2, "clonexadone" = 2)
required_reagents = list("styptic_powder" = 2, "clonexadone" = 2)
required_catalysts = list("plasma" = 5)
result_amount = 2
@@ -201,14 +134,6 @@ datum
required_reagents = list("water" = 1, "milk" = 1)
result_amount = 5
leporazine
name = "Leporazine"
id = "leporazine"
result = "leporazine"
required_reagents = list("silicon" = 1, "copper" = 1)
required_catalysts = list("plasma" = 5)
result_amount = 2
cryptobiolin
name = "Cryptobiolin"
id = "cryptobiolin"
@@ -216,69 +141,13 @@ datum
required_reagents = list("potassium" = 1, "oxygen" = 1, "sugar" = 1)
result_amount = 3
tricordrazine
name = "Tricordrazine"
id = "tricordrazine"
result = "tricordrazine"
required_reagents = list("inaprovaline" = 1, "anti_toxin" = 1)
result_amount = 2
alkysine
name = "Alkysine"
id = "alkysine"
result = "alkysine"
required_reagents = list("chlorine" = 1, "nitrogen" = 1, "anti_toxin" = 1)
result_amount = 2
dexalin
name = "Dexalin"
id = "dexalin"
result = "dexalin"
required_reagents = list("oxygen" = 2)
required_catalysts = list("plasma" = 5)
result_amount = 1
dermaline
name = "Dermaline"
id = "dermaline"
result = "dermaline"
required_reagents = list("oxygen" = 1, "phosphorus" = 1, "kelotane" = 1)
result_amount = 3
dexalinp
name = "Dexalin Plus"
id = "dexalinp"
result = "dexalinp"
required_reagents = list("dexalin" = 1, "carbon" = 1, "iron" = 1)
result_amount = 3
bicaridine
name = "Bicaridine"
id = "bicaridine"
result = "bicaridine"
required_reagents = list("inaprovaline" = 1, "carbon" = 1)
result_amount = 2
hyperzine
name = "Hyperzine"
id = "hyperzine"
result = "hyperzine"
required_reagents = list("sugar" = 1, "phosphorus" = 1, "sulfur" = 1,)
result_amount = 3
ryetalyn
name = "Ryetalyn"
id = "ryetalyn"
result = "ryetalyn"
required_reagents = list("arithrazine" = 1, "carbon" = 1)
result_amount = 2
cryoxadone
name = "Cryoxadone"
id = "cryoxadone"
result = "cryoxadone"
required_reagents = list("cryostylane" = 1, "plasma" = 1, "acetone" = 1, "mutagen" = 1)
result_amount = 4
mix_message = "The solution bubbles softly."
clonexadone
name = "Clonexadone"
@@ -292,30 +161,16 @@ datum
name = "Spaceacillin"
id = "spaceacillin"
result = "spaceacillin"
required_reagents = list("cryptobiolin" = 1, "inaprovaline" = 1)
result_amount = 2
imidazoline
name = "imidazoline"
id = "imidazoline"
result = "imidazoline"
required_reagents = list("carbon" = 1, "hydrogen" = 1, "anti_toxin" = 1)
required_reagents = list("cryptobiolin" = 1, "epinephrine" = 1)
result_amount = 2
inacusiate
name = "inacusiate"
id = "inacusiate"
result = "inacusiate"
required_reagents = list("water" = 1, "carbon" = 1, "anti_toxin" = 1)
required_reagents = list("water" = 1, "carbon" = 1, "charcoal" = 1)
result_amount = 2
ethylredoxrazine
name = "Ethylredoxrazine"
id = "ethylredoxrazine"
result = "ethylredoxrazine"
required_reagents = list("oxygen" = 1, "anti_toxin" = 1, "carbon" = 1)
result_amount = 3
glycerol
name = "Glycerol"
id = "glycerol"
@@ -327,7 +182,7 @@ datum
name = "Nitroglycerin"
id = "nitroglycerin"
result = "nitroglycerin"
required_reagents = list("glycerol" = 1, "pacid" = 1, "sacid" = 1)
required_reagents = list("glycerol" = 1, "facid" = 1, "sacid" = 1)
result_amount = 2
on_reaction(var/datum/reagents/holder, var/created_volume)
var/datum/effect/effect/system/reagents_explosion/e = new()
@@ -343,47 +198,7 @@ datum
result = "sodiumchloride"
required_reagents = list("sodium" = 1, "chlorine" = 1, "water" = 1)
result_amount = 3
flash_powder
name = "Flash powder"
id = "flash_powder"
result = null
required_reagents = list("aluminum" = 1, "potassium" = 1, "sulfur" = 1 )
result_amount = null
on_reaction(var/datum/reagents/holder, var/created_volume)
var/location = get_turf(holder.my_atom)
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(2, 1, location)
s.start()
for(var/mob/living/carbon/C in hearers(5, location))
if(C.eyecheck())
continue
flick("e_flash", C.flash)
if(get_dist(C, location) < 4)
C.Weaken(5)
continue
C.Stun(5)
chloralhydrate
name = "Chloral Hydrate"
id = "chloralhydrate"
result = "chloralhydrate"
required_reagents = list("ethanol" = 1, "chlorine" = 3, "water" = 1)
result_amount = 1
stoxin
name = "Sleep Toxin"
id = "stoxin"
result = "stoxin"
required_reagents = list("chloralhydrate" = 1, "sugar" = 4)
result_amount = 5
zombiepowder
name = "Zombie Powder"
id = "zombiepowder"
result = "zombiepowder"
required_reagents = list("carpotoxin" = 5, "stoxin" = 5, "copper" = 5)
result_amount = 2
mix_message = "The solution crystallizes with a brief flare of light."
rezadone
name = "Rezadone"
@@ -396,21 +211,14 @@ datum
name = "Mindbreaker Toxin"
id = "mindbreaker"
result = "mindbreaker"
required_reagents = list("silicon" = 1, "hydrogen" = 1, "anti_toxin" = 1)
required_reagents = list("silicon" = 1, "hydrogen" = 1, "charcoal" = 1)
result_amount = 5
lipozine
name = "Lipozine"
id = "Lipozine"
result = "lipozine"
required_reagents = list("sodiumchloride" = 1, "ethanol" = 1, "radium" = 1)
result_amount = 3
plastication
name = "Plastic"
id = "solidplastic"
result = null
required_reagents = list("pacid" = 10, "plasticide" = 20)
required_reagents = list("facid" = 10, "plasticide" = 20)
result_amount = 1
on_reaction(var/datum/reagents/holder)
var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/mineral/plastic
@@ -515,7 +323,7 @@ datum
name = "Metal Foam"
id = "metalfoam"
result = null
required_reagents = list("aluminum" = 3, "foaming_agent" = 1, "pacid" = 1)
required_reagents = list("aluminum" = 3, "foaming_agent" = 1, "facid" = 1)
result_amount = 5
on_reaction(var/datum/reagents/holder, var/created_volume)
@@ -535,7 +343,7 @@ datum
name = "Iron Foam"
id = "ironlfoam"
result = null
required_reagents = list("iron" = 3, "foaming_agent" = 1, "pacid" = 1)
required_reagents = list("iron" = 3, "foaming_agent" = 1, "facid" = 1)
result_amount = 5
on_reaction(var/datum/reagents/holder, var/created_volume)
@@ -635,9 +443,9 @@ datum
slimeinaprov
name = "Slime Inaprovaline"
id = "m_inaprov"
result = "inaprovaline"
name = "Slime Epinephrine"
id = "m_epinephrine"
result = "epinephrine"
required_reagents = list("water" = 5)
result_amount = 3
required_other = 1
@@ -1442,7 +1250,7 @@ datum
name = "The Doctor's Delight"
id = "doctordelight"
result = "doctorsdelight"
required_reagents = list("limejuice" = 1, "tomatojuice" = 1, "orangejuice" = 1, "cream" = 1, "tricordrazine" = 1)
required_reagents = list("limejuice" = 1, "tomatojuice" = 1, "orangejuice" = 1, "cream" = 1)
result_amount = 5
irish_cream
@@ -1698,7 +1506,7 @@ datum
name = "Neurotoxin"
id = "neurotoxin"
result = "neurotoxin"
required_reagents = list("gargleblaster" = 1, "stoxin" = 1)
required_reagents = list("gargleblaster" = 1, "morphine" = 1)
result_amount = 2
snowwhite
+2 -2
View File
@@ -294,10 +294,10 @@
desc = "A small gas-powered dartgun, fitted for nonhuman hands."
/obj/item/weapon/gun/dartgun/vox/medical
starting_chems = list("kelotane","bicaridine","anti_toxin")
starting_chems = list("silver_sulfadiazine","styptic_powder","charcoal")
/obj/item/weapon/gun/dartgun/vox/raider
starting_chems = list("space_drugs","stoxin","impedrezene")
starting_chems = list("space_drugs","morphine","haloperidol")
/obj/effect/syringe_gun_dummy //moved this shitty thing here
name = ""
+39 -21
View File
@@ -18,8 +18,11 @@ datum/reagent/nicotine/on_mob_life(var/mob/living/M as mob)
var/smoke_message = pick("You can just feel your lungs dying!", "You feel relaxed.", "You feel calmed.", "You feel the lung cancer forming.", "You feel the money you wasted.", "You feel like a space cowboy.", "You feel rugged.")
if(prob(5))
M << "<span class='notice'>[smoke_message]</span>"
M.AdjustStunned(-1)
M.adjustStaminaLoss(-1*REM)
if(prob(50))
M.AdjustParalysis(-1)
M.AdjustStunned(-1)
M.AdjustWeakened(-1)
M.adjustStaminaLoss(-1*REM)
..()
return
@@ -84,12 +87,19 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
mix_message = "The mixture violently reacts, leaving behind a few crystalline shards."
required_temp = 390
/datum/chemical_reaction/crank/on_reaction(var/datum/reagents/holder, var/created_volume)
var/turf/T = get_turf(holder.my_atom)
for(var/turf/turf in range(1,T))
new /obj/fire(turf)
explosion(T,0,0,2)
return
/datum/reagent/krokodil
name = "Krokodil"
id = "krokodil"
description = "Cools and calms you down. If overdosed it will deal significant Brain and Toxin damage. If addicted it will begin to deal fatal amounts of Brute damage as the subject's skin falls off."
description = "A sketchy homemade opiate, often used by disgruntled Cosmonauts."
reagent_state = LIQUID
color = "#60A584" // rgb: 96, 165, 132
color = "#0264B4"
overdose_threshold = 20
addiction_threshold = 15
@@ -157,10 +167,10 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
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 << "<span class='notice'>[high_message]</span>"
M.AdjustParalysis(-3)
M.AdjustStunned(-3)
M.AdjustWeakened(-3)
M.adjustStaminaLoss(-3)
M.AdjustParalysis(-2)
M.AdjustStunned(-2)
M.AdjustWeakened(-2)
M.adjustStaminaLoss(-2)
M.status_flags |= GOTTAGOREALLYFAST
M.Jitter(3)
M.adjustBrainLoss(0.5)
@@ -170,9 +180,6 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
return
/datum/reagent/methamphetamine/overdose_process(var/mob/living/M as mob)
if(M.canmove && !istype(M.loc, /turf/space))
for(var/i = 0, i < 4, i++)
step(M, pick(cardinal))
if(prob(20))
M.emote("laugh")
if(prob(33))
@@ -181,8 +188,8 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
if(I)
M.drop_item()
..()
if(prob(20))
M.adjustToxLoss(5)
if(prob(50))
M.adjustToxLoss(10)
M.adjustBrainLoss(pick(0.5, 0.6, 0.7, 0.8, 0.9, 1))
return
@@ -200,9 +207,6 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
..()
return
/datum/reagent/methamphetamine/addiction_act_stage3(var/mob/living/M as mob)
if(M.canmove && !istype(M.loc, /turf/space))
for(var/i = 0, i < 4, i++)
step(M, pick(cardinal))
M.Jitter(15)
M.Dizzy(15)
if(prob(40))
@@ -210,9 +214,6 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
..()
return
/datum/reagent/methamphetamine/addiction_act_stage4(var/mob/living/carbon/human/M as mob)
if(M.canmove && !istype(M.loc, /turf/space))
for(var/i = 0, i < 8, i++)
step(M, pick(cardinal))
M.Jitter(20)
M.Dizzy(20)
M.adjustToxLoss(5)
@@ -346,13 +347,13 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
name = "aranesp"
id = "aranesp"
result = "aranesp"
required_reagents = list("epinephrine" = 1, "atropine" = 1, "morphine" = 1)
required_reagents = list("epinephrine" = 1, "atropine" = 1, "insulin" = 1)
result_amount = 3
/datum/reagent/aranesp
name = "Aranesp"
id = "aranesp"
description = "Amps you up and gets you going, fixes all stamina damage you might have but can cause toxin and oxygen damage.."
description = "An illegal performance enhancing drug. Side effects might include chest pain, seizures, swelling, headache, fever... ... ..."
reagent_state = LIQUID
color = "#60A584" // rgb: 96, 165, 132
@@ -368,3 +369,20 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
M.adjustOxyLoss(20)
..()
return
/datum/reagent/thc
name = "Tetrahydrocannabinol"
id = "thc"
description = "A mild psychoactive chemical extracted from the cannabis plant."
reagent_state = LIQUID
color = "#0FBE0F"
/datum/reagent/thc/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(prob(8))
M.emote(pick("smile","giggle","laugh"))
if(prob(50))
M.stuttering += 2
..()
return
+76
View File
@@ -0,0 +1,76 @@
datum/reagent/egg
name = "Egg"
id = "egg"
description = "A runny and viscous mixture of clear and yellow fluids."
reagent_state = LIQUID
color = "#F0C814"
datum/reagent/egg/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(prob(5))
M.emote("fart")
..()
return
datum/reagent/triple_citrus
name = "Triple Citrus"
id = "triple_citrus"
description = "A solution."
reagent_state = LIQUID
color = "#C8A5DC"
/datum/chemical_reaction/triple_citrus
name = "triple_citrus"
id = "triple_citrus"
result = "triple_citrus"
required_reagents = list("lemonjuice" = 1, "limejuice" = 1, "orangejuice" = 1)
result_amount = 5
datum/reagent/corn_starch
name = "Corn Starch"
id = "corn_starch"
description = "The powdered starch of maize, derived from the kernel's endosperm. Used as a thickener for gravies and puddings."
reagent_state = LIQUID
color = "#C8A5DC"
/datum/chemical_reaction/corn_syrup
name = "corn_syrup"
id = "corn_syrup"
result = "corn_syrup"
required_reagents = list("corn_starch" = 1, "sacid" = 1)
result_amount = 2
required_temp = 374
datum/reagent/corn_syrup
name = "Corn Syrup"
id = "corn_syrup"
description = "A sweet syrup derived from corn starch that has had its starches converted into maltose and other sugars."
reagent_state = LIQUID
color = "#C8A5DC"
datum/reagent/corn_syrup/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.reagents.add_reagent("sugar", 1.2)
..()
return
/datum/chemical_reaction/vhfcs
name = "vhfcs"
id = "vhfcs"
result = "vhfcs"
required_reagents = list("corn_syrup" = 1)
required_catalysts = list("enzyme" = 1)
result_amount = 1
datum/reagent/vhfcs
name = "Very-high-fructose corn syrup"
id = "vhfcs"
description = "An incredibly sweet syrup, created from corn syrup treated with enzymes to convert its sugars into fructose."
reagent_state = LIQUID
color = "#C8A5DC"
datum/reagent/vhfcs/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.reagents.add_reagent("sugar", 2.4)
..()
return
+141 -63
View File
@@ -7,9 +7,9 @@
datum/reagent/silver_sulfadiazine
name = "Silver Sulfadiazine"
id = "silver_sulfadiazine"
description = "On touch, quickly heals burn damage. Basic anti-burn healing drug. On ingestion, deals minor toxin damage."
description = "This antibacterial compound is used to treat burn victims."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#F0C814"
metabolization_rate = 2
datum/reagent/silver_sulfadiazine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1)
@@ -17,11 +17,11 @@ datum/reagent/silver_sulfadiazine/reaction_mob(var/mob/living/M as mob, var/meth
if(method == TOUCH)
M.adjustFireLoss(-volume)
if(show_message)
M << "<span class='notice'>You feel your burns healing!</span>"
M << "<span class='notice'>The silver sulfadiazine soothes your burns.</span>"
if(method == INGEST)
M.adjustToxLoss(0.5*volume)
if(show_message)
M << "<span class='notice'>You probably shouldn't have eaten that. Maybe you should of splashed it on, or applied a patch?</span>"
M << "<span class='warning'>You feel sick...</span>"
..()
return
@@ -34,7 +34,7 @@ datum/reagent/silver_sulfadiazine/on_mob_life(var/mob/living/M as mob)
datum/reagent/styptic_powder
name = "Styptic Powder"
id = "styptic_powder"
description = "On touch, quickly heals brute damage. Basic anti-brute healing drug. On ingestion, deals minor toxin damage."
description = "Styptic (aluminium sulfate) powder helps control bleeding and heal physical wounds."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 2
@@ -44,12 +44,12 @@ datum/reagent/styptic_powder/reaction_mob(var/mob/living/M as mob, var/method=TO
if(method == TOUCH)
M.adjustBruteLoss(-volume)
if(show_message)
M << "<span class='notice'>You feel your wounds knitting back together!</span>"
M << "<span class='notice'>The styptic powder stings like hell as it closes some of your wounds!</span>"
M.emote("scream")
if(method == INGEST)
M.adjustToxLoss(0.5*volume)
if(show_message)
M << "<span class='notice'>You probably shouldn't have eaten that. Maybe you should of splashed it on, or applied a patch?</span>"
M << "<span class='warning'>You feel gross!</span>"
..()
return
@@ -63,7 +63,7 @@ datum/reagent/styptic_powder/on_mob_life(var/mob/living/M as mob)
datum/reagent/salglu_solution
name = "Saline-Glucose Solution"
id = "salglu_solution"
description = "Has a 33% chance per metabolism cycle to heal brute and burn damage."
description = "This saline and glucose solution can help stabilize critically injured patients and cleanse wounds."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 0.15
@@ -79,9 +79,9 @@ datum/reagent/salglu_solution/on_mob_life(var/mob/living/M as mob)
datum/reagent/synthflesh
name = "Synthflesh"
id = "synthflesh"
description = "Has a 100% chance of instantly healing brute and burn damage. One unit of the chemical will heal one point of damage. Touch application only."
description = "A resorbable microfibrillar collagen and protein mixture that can rapidly heal injuries when applied topically."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#FFEBEB"
datum/reagent/synthflesh/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume,var/show_message = 1)
if(!M) M = holder.my_atom
@@ -90,14 +90,14 @@ datum/reagent/synthflesh/reaction_mob(var/mob/living/M, var/method=TOUCH, var/vo
M.adjustBruteLoss(-1.5*volume)
M.adjustFireLoss(-1.5*volume)
if(show_message)
M << "<span class='notice'>You feel your burns healing and your flesh knitting together!</span>"
M << "<span class='notice'>The synthetic flesh integrates itself into your wounds, healing you.</span>"
..()
return
datum/reagent/charcoal
name = "Charcoal"
id = "charcoal"
description = "Heals toxin damage, and will also slowly remove any other chemicals."
description = "Activated charcoal helps to absorb toxins."
reagent_state = LIQUID
color = "#C8A5DC"
@@ -125,6 +125,7 @@ datum/reagent/charcoal/on_mob_life(var/mob/living/M as mob)
result = "silver_sulfadiazine"
required_reagents = list("ammonia" = 1, "silver" = 1, "sulfur" = 1, "oxygen" = 1, "chlorine" = 1)
result_amount = 5
mix_message = "A strong and cloying odor begins to bubble from the mixture."
/datum/chemical_reaction/salglu_solution
name = "Saline-Glucose Solution"
@@ -151,7 +152,7 @@ datum/reagent/charcoal/on_mob_life(var/mob/living/M as mob)
datum/reagent/omnizine
name = "Omnizine"
id = "omnizine"
description = "Heals 1 of each damage type a cycle. If overdosed it will deal significant amounts of each damage type."
description = "Omnizine is a highly potent healing medication that can be used to treat a wide range of injuries."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 0.2
@@ -177,9 +178,9 @@ datum/reagent/omnizine/overdose_process(var/mob/living/M as mob)
datum/reagent/calomel
name = "Calomel"
id = "calomel"
description = "Quickly purges the body of all chemicals. If your health is above 20, toxin damage is dealt. When you hit 20 health or lower, the damage will cease."
description = "This potent purgative rids the body of impurities. It is highly toxic however and close supervision is required."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#1EA532"
datum/reagent/calomel/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -204,9 +205,9 @@ datum/reagent/calomel/on_mob_life(var/mob/living/M as mob)
datum/reagent/potass_iodide
name = "Potassium Iodide"
id = "potass_iodide"
description = "Reduces low radiation damage very effectively."
description = "Potassium Iodide is a medicinal drug used to counter the effects of radiation poisoning."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#B4DCBE"
datum/reagent/potass_iodide/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -224,11 +225,12 @@ datum/reagent/potass_iodide/on_mob_life(var/mob/living/M as mob)
result = "potass_iodide"
required_reagents = list("potassium" = 1, "iodine" = 1)
result_amount = 2
mix_message = "The solution settles calmly and emits gentle fumes."
datum/reagent/pen_acid
name = "Pentetic Acid"
id = "pen_acid"
description = "Reduces massive amounts of radiation and toxin damage while purging other chemicals from the body. Has a chance of dealing brute damage."
description = "Pentetic Acid is an aggressive chelation agent. May cause tissue damage. Use with caution."
reagent_state = LIQUID
color = "#C8A5DC"
@@ -254,11 +256,12 @@ datum/reagent/pen_acid/on_mob_life(var/mob/living/M as mob)
result = "pen_acid"
required_reagents = list("fuel" = 1, "chlorine" = 1, "ammonia" = 1, "formaldehyde" = 1, "sodium" = 1, "cyanide" = 1)
result_amount = 6
mix_message = "The substance becomes very still, emitting a curious haze."
datum/reagent/sal_acid
name = "Salicylic Acid"
id = "sal_acid"
description = "If you have less than 50 brute damage, there is a 50% chance to heal one unit. If overdosed it will have a 50% chance to deal 2 brute damage if the patient has less than 50 brute damage already."
description = "This is a is a standard salicylate pain reliever and fever reducer."
reagent_state = LIQUID
color = "#C8A5DC"
overdose_threshold = 25
@@ -284,13 +287,14 @@ datum/reagent/sal_acid/overdose_process(var/mob/living/M as mob)
result = "sal_acid"
required_reagents = list("sodium" = 1, "phenol" = 1, "carbon" = 1, "oxygen" = 1, "sacid" = 1)
result_amount = 5
mix_message = "The mixture crystallizes."
datum/reagent/salbutamol
name = "Salbutamol"
id = "salbutamol"
description = "Quickly heals oxygen damage while slowing down suffocation. Great for stabilizing critical patients!"
description = "Salbutamol is a common bronchodilation medication for asthmatics. It may help with other breathing problems as well."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#A5F0EE"
metabolization_rate = 0.2
datum/reagent/salbutamol/on_mob_life(var/mob/living/M as mob)
@@ -307,11 +311,12 @@ datum/reagent/salbutamol/on_mob_life(var/mob/living/M as mob)
result = "salbutamol"
required_reagents = list("sal_acid" = 1, "lithium" = 1, "aluminum" = 1, "bromine" = 1, "ammonia" = 1)
result_amount = 5
mix_message = "The solution bubbles freely, creating a head of bluish foam."
datum/reagent/perfluorodecalin
name = "Perfluorodecalin"
id = "perfluorodecalin"
description = "Heals suffocation damage so quickly that you could have a spacewalk, but it mutes your voice. Has a 33% chance of healing brute and burn damage per cycle as well."
description = "This experimental perfluoronated solvent has applications in liquid breathing and tissue oxygenation. Use with caution."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 0.2
@@ -338,7 +343,7 @@ datum/reagent/perfluorodecalin/on_mob_life(var/mob/living/carbon/human/M as mob)
datum/reagent/ephedrine
name = "Ephedrine"
id = "ephedrine"
description = "Reduces stun times, increases run speed. If overdosed it will deal toxin and oxyloss damage."
description = "Ephedrine is a plant-derived stimulant."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 0.3
@@ -397,9 +402,9 @@ datum/reagent/ephedrine/addiction_act_stage4(var/mob/living/M as mob)
datum/reagent/diphenhydramine
name = "Diphenhydramine"
id = "diphenhydramine"
description = "Purges body of lethal Histamine and reduces jitteriness while causing minor drowsiness."
description = "Anti-allergy medication. May cause drowsiness, do not operate heavy machinery while using this."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#A5F0EE"
datum/reagent/diphenhydramine/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.drowsyness += 1
@@ -414,25 +419,30 @@ datum/reagent/diphenhydramine/on_mob_life(var/mob/living/M as mob)
result = "diphenhydramine"
required_reagents = list("oil" = 1, "carbon" = 1, "bromine" = 1, "diethylamine" = 1, "ethanol" = 1)
result_amount = 4
mix_message = "The mixture dries into a pale blue powder."
mix_message = "The mixture fizzes gently."
datum/reagent/morphine
name = "Morphine"
id = "morphine"
description = "Will allow you to ignore slowdown from equipment and damage. Will eventually knock you out if you take too much. If overdosed it will cause jitteriness, dizziness, force the victim to drop items in their hands and eventually deal toxin damage."
description = "A strong but highly addictive opiate painkiller with sedative side effects."
reagent_state = LIQUID
color = "#C8A5DC"
var/cycle_count = 0
overdose_threshold = 30
addiction_threshold = 25
shock_reduction = 60
datum/reagent/morphine/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.status_flags |= IGNORESLOWDOWN
if(cycle_count >= 36)
M.sleeping += 3
cycle_count++
switch(current_cycle)
if(0 to 15)
if(prob(5))
M.emote("yawn")
if(16 to 35)
M.drowsyness = max(M.drowsyness, 10)
if(36 to INFINITY)
M.Paralyse(10)
M.drowsyness = max(M.drowsyness, 15)
..()
return
@@ -502,14 +512,14 @@ datum/reagent/oculine/on_mob_life(var/mob/living/M as mob)
name = "Oculine"
id = "oculine"
result = "oculine"
required_reagents = list("charcoal" = 1, "carbon" = 1, "hydrogen" = 1)
required_reagents = list("atropine" = 1, "spaceacillin" = 1, "salglu_solution" = 1)
result_amount = 3
mix_message = "The mixture sputters loudly and becomes a pale pink color."
mix_message = "The mixture settles, becoming a milky white."
datum/reagent/oculine
name = "Oculine"
id = "oculine"
description = "Cures blindness and heals eye damage over time."
description = "Oculine is a saline eye medication with mydriatic and antibiotic effects."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 0.4
@@ -518,9 +528,9 @@ datum/reagent/oculine
datum/reagent/atropine
name = "Atropine"
id = "atropine"
description = "If patients health is below -25 it will heal 3 brute and burn damage per cycle, as well as stop any oxyloss. Good for stabilising critical patients."
description = "Atropine is a potent cardiac resuscitant but it can causes confusion, dizzyness and hyperthermia."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#000000"
metabolization_rate = 0.2
overdose_threshold = 35
@@ -556,11 +566,12 @@ datum/reagent/atropine/overdose_process(var/mob/living/M as mob)
result = "atropine"
required_reagents = list("ethanol" = 1, "acetone" = 1, "diethylamine" = 1, "phenol" = 1, "sacid" = 1)
result_amount = 5
mix_message = "A horrid smell like something died drifts from the mixture."
datum/reagent/epinephrine
name = "Epinephrine"
id = "epinephrine"
description = "Reduces most of the knockout/stun effects, minor stamina regeneration buff. Attempts to stop you taking too much oxygen damage. If the patient is in low to severe crit, heals toxins, brute, and burn very effectively. Will not heal patients who are almost dead. If overdosed will stun and deal toxin damage"
description = "Epinephrine is a potent neurotransmitter, used in medical emergencies to halt anaphylactic shock and prevent cardiac arrest."
reagent_state = LIQUID
color = "#C8A5DC"
metabolization_rate = 0.2
@@ -578,11 +589,6 @@ datum/reagent/epinephrine/on_mob_life(var/mob/living/M as mob)
M.losebreath -= 4
if(M.losebreath < 0)
M.losebreath = 0
M.adjustStaminaLoss(-1*REM)
if(prob(30))
M.AdjustParalysis(-1)
M.AdjustStunned(-1)
M.AdjustWeakened(-1)
..()
return
@@ -600,22 +606,24 @@ datum/reagent/epinephrine/overdose_process(var/mob/living/M as mob)
result = "epinephrine"
required_reagents = list("phenol" = 1, "acetone" = 1, "diethylamine" = 1, "oxygen" = 1, "chlorine" = 1, "hydrogen" = 1)
result_amount = 6
mix_message = "Tiny white crystals precipitate out of the solution."
datum/reagent/strange_reagent
name = "Strange Reagent"
id = "strange_reagent"
description = "A miracle drug that can bring a dead body back to life! If the corpse has suffered too much damage, however, no change will occur to the body. If used on a living person it will deal Brute and Burn damage."
description = "A glowing green fluid highly reminiscent of nuclear waste."
reagent_state = LIQUID
color = "#C8A5DC"
color = "#60A584"
datum/reagent/strange_reagent/reaction_mob(var/mob/living/carbon/human/M as mob, var/method=TOUCH, var/volume)
if(M.stat == DEAD)
if(M.getBruteLoss() >= 100 || M.getFireLoss() >= 100)
M.visible_message("<span class='warning'>[M]'s body convulses a bit, and then falls still once more.</span>")
M.visible_message("<span class='warning'>[M]'s body starts convulsing!</span>")
M.gib()
return
var/mob/dead/observer/ghost = M.get_ghost()
M.visible_message("<span class='warning'>[M]'s body convulses a bit.</span>")
if(!M.suiciding && !ghost && !(NOCLONE in M.mutations))
M.visible_message("<span class='warning'>[M]'s appears to rise from the dead!</span>")
M.stat = 1
M.adjustOxyLoss(-20)
M.adjustToxLoss(-20)
@@ -721,12 +729,12 @@ proc/chemical_mob_spawn(var/datum/reagents/holder, var/amount_to_spawn, var/reac
result = "mannitol"
required_reagents = list("sugar" = 1, "hydrogen" = 1, "water" = 1)
result_amount = 3
mix_message = "The solution slightly bubbles, becoming thicker."
mix_message = "The mixture bubbles slowly, making a slightly sweet odor."
/datum/reagent/mannitol
name = "Mannitol"
id = "mannitol"
description = "Heals brain damage effectively. Use it in cyro tubes alongside Cryoxadone."
description = "Mannitol is a sugar alcohol that can help alleviate cranial swelling."
color = "#C8A5DC"
/datum/reagent/mutadone/on_mob_life(var/mob/living/carbon/human/M as mob)
@@ -753,19 +761,20 @@ proc/chemical_mob_spawn(var/datum/reagents/holder, var/amount_to_spawn, var/reac
result = "mutadone"
required_reagents = list("mutagen" = 1, "acetone" = 1, "bromine" = 1)
result_amount = 3
mix_message = "A foul astringent liquid emerges from the reaction."
/datum/reagent/mutadone
name = "Mutadone"
id = "mutadone"
description = "Heals your genetic defects."
color = "#C8A5DC"
description = "Mutadone is an experimental bromide that can cure genetic abnomalities."
color = "#5096C8"
datum/reagent/antihol
name = "Antihol"
id = "antihol"
description = "Helps remove Alcohol from someone's body, as well as eliminating its side effects."
color = "#C8A5DC"
description = "A medicine which quickly eliminates alcohol in the body."
color = "#009CA8"
datum/reagent/antihol/on_mob_life(var/mob/living/M as mob)
M.dizziness = 0
@@ -781,13 +790,7 @@ datum/reagent/antihol/on_mob_life(var/mob/living/M as mob)
result = "antihol"
required_reagents = list("ethanol" = 1, "charcoal" = 1)
result_amount = 2
/datum/chemical_reaction/cryoxadone
name = "Cryoxadone"
id = "cryoxadone"
result = "cryoxadone"
required_reagents = list("plasma" = 1, "acetone" = 1, "mutagen" = 1)
result_amount = 3
mix_message = "A minty and refreshing smell drifts from the effervescent mixture."
/datum/reagent/stimulants
name = "Stimulants"
@@ -819,13 +822,88 @@ datum/reagent/stimulants/reagent_deleted(var/mob/living/M as mob)
datum/reagent/insulin
name = "Insulin"
id = "insulin"
description = "Increases sugar depletion rates."
description = "A hormone generated by the pancreas responsible for metabolizing carbohydrates and fat in the bloodstream."
reagent_state = LIQUID
color = "#C8A5DC"
datum/reagent/insulin/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(M.sleeping)
M.sleeping--
M.reagents.remove_reagent("sugar", 5)
..()
return
/datum/reagent/simethicone
name = "Simethicone"
id = "simethicone"
description = "This strange liquid seems to have no bubbles on the surface."
color = "#14AA46"
/datum/chemical_reaction/Simethicone
name = "Simethicone"
id = "simethicone"
result = "simethicone"
required_reagents = list("hydrogen" = 1, "chlorine" = 1, "silicon" = 1, "oxygen" = 1)
result_amount = 4
datum/reagent/teporone
name = "Teporone"
id = "teporone"
description = "This experimental plasma-based compound seems to regulate body temperature."
reagent_state = LIQUID
color = "#D782E6"
datum/reagent/teporone/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
if(M.bodytemperature > 310)
M.bodytemperature -= 10
if(M.bodytemperature < 310)
M.bodytemperature += 10
..()
return
/datum/chemical_reaction/teporone
name = "Teporone"
id = "teporone"
result = "teporone"
required_reagents = list("acetone" = 1, "silicon" = 1, "plasma" = 1)
result_amount = 2
mix_message = "The mixture turns an odd lavender color."
datum/reagent/haloperidol
name = "Haloperidol"
id = "haloperidol"
description = "Haloperidol is a powerful antipsychotic and sedative. Will help control psychiatric problems, but may cause brain damage."
reagent_state = LIQUID
color = "#FFDCFF"
datum/reagent/haloperidol/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.reagents.remove_reagent("crank",5)
M.reagents.remove_reagent("methamphetamine",5)
M.reagents.remove_reagent("space_drugs",5)
M.reagents.remove_reagent("psilocybin",5)
M.reagents.remove_reagent("ephedrine",5)
M.reagents.remove_reagent("epinephrine",5)
M.reagents.remove_reagent("stimulants",5)
M.reagents.remove_reagent("bath_salts",5)
M.reagents.remove_reagent("mindbreaker",5)
M.druggy -= 5
M.hallucination -= 5
M.jitteriness -= 5
if(prob(40))
M.drowsyness = max(M.drowsyness, 2)
if(prob(10))
M.emote("drool")
if(prob(20))
M.adjustBrainLoss(1)
..()
return
/datum/chemical_reaction/haloperidol
name = "Haloperidol"
id = "haloperidol"
result = "haloperidol"
required_reagents = list("chlorine" = 1, "fluorine" = 1, "aluminum" = 1, "potass_iodide" = 1, "oil" = 1)
result_amount = 4
mix_message = "The chemicals mix into an odd pink slush."
-75
View File
@@ -119,17 +119,6 @@ datum/reagent/colorful_reagent
required_reagents = list("plasma" = 1, "radium" = 1, "space_drugs" = 1, "cryoxadone" = 1, "triple_citrus" = 1)
result_amount = 5
datum/reagent/colorful_reagent/on_mob_life(var/mob/living/M as mob)
if(M && isliving(M))
M.color = pick(random_color_list)
..()
return
datum/reagent/colorful_reagent/reaction_mob(var/mob/living/M, var/volume)
if(M && isliving(M))
M.color = pick(random_color_list)
..()
return
datum/reagent/colorful_reagent/reaction_obj(var/obj/O, var/volume)
if(O)
O.color = pick(random_color_list)
@@ -141,70 +130,6 @@ datum/reagent/colorful_reagent/reaction_turf(var/turf/T, var/volume)
..()
return
datum/reagent/triple_citrus
name = "Triple Citrus"
id = "triple_citrus"
description = "A solution."
reagent_state = LIQUID
color = "#C8A5DC"
/datum/chemical_reaction/triple_citrus
name = "triple_citrus"
id = "triple_citrus"
result = "triple_citrus"
required_reagents = list("lemonjuice" = 1, "limejuice" = 1, "orangejuice" = 1)
result_amount = 5
datum/reagent/corn_starch
name = "Corn Starch"
id = "corn_starch"
description = "The powdered starch of maize, derived from the kernel's endosperm. Used as a thickener for gravies and puddings."
reagent_state = LIQUID
color = "#C8A5DC"
/datum/chemical_reaction/corn_syrup
name = "corn_syrup"
id = "corn_syrup"
result = "corn_syrup"
required_reagents = list("corn_starch" = 1, "sacid" = 1)
result_amount = 2
required_temp = 374
datum/reagent/corn_syrup
name = "Corn Syrup"
id = "corn_syrup"
description = "A sweet syrup derived from corn starch that has had its starches converted into maltose and other sugars."
reagent_state = LIQUID
color = "#C8A5DC"
datum/reagent/corn_syrup/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.reagents.add_reagent("sugar", 1.2)
..()
return
/datum/chemical_reaction/vhfcs
name = "vhfcs"
id = "vhfcs"
result = "vhfcs"
required_reagents = list("corn_syrup" = 1)
required_catalysts = list("enzyme" = 1)
result_amount = 1
datum/reagent/vhfcs
name = "Very-high-fructose corn syrup"
id = "vhfcs"
description = "An incredibly sweet syrup, created from corn syrup treated with enzymes to convert its sugars into fructose."
reagent_state = LIQUID
color = "#C8A5DC"
datum/reagent/vhfcs/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.reagents.add_reagent("sugar", 2.4)
..()
return
/datum/chemical_reaction/corgium
name = "corgium"
id = "corgium"
+3 -2
View File
@@ -7,9 +7,9 @@
/datum/reagent/stabilizing_agent
name = "Stabilizing Agent"
id = "stabilizing_agent"
description = "Keeps unstable chemicals stable. This does not work on everything."
description = "A chemical that stabilises normally volatile compounds, preventing them from reacting immediately."
reagent_state = LIQUID
color = "#FFFFFF"
color = "#FFFF00"
/datum/chemical_reaction/stabilizing_agent
name = "stabilizing_agent"
@@ -17,6 +17,7 @@
result = "stabilizing_agent"
required_reagents = list("iron" = 1, "oxygen" = 1, "hydrogen" = 1)
result_amount = 3
mix_message = "The mixture becomes a yellow liquid!"
/datum/reagent/clf3
name = "Chlorine Trifluoride"
+22 -14
View File
@@ -44,6 +44,7 @@ datum/reagent/histamine/on_mob_life(var/mob/living/M as mob)
M.adjustBruteLoss(2*REM)
..()
return
datum/reagent/histamine/overdose_process(var/mob/living/M as mob)
M.adjustOxyLoss(pick(1,3)*REM)
M.adjustBruteLoss(pick(1,3)*REM)
@@ -54,7 +55,7 @@ datum/reagent/histamine/overdose_process(var/mob/living/M as mob)
datum/reagent/formaldehyde
name = "Formaldehyde"
id = "formaldehyde"
description = "Deals a moderate amount of Toxin damage over time. 10% chance to decay into 10-15 histamine."
description = "Formaldehyde is a common industrial chemical and is used to preserve corpses and medical samples. It is highly toxic and irritating."
reagent_state = LIQUID
color = "#CF3600"
@@ -62,8 +63,7 @@ datum/reagent/formaldehyde/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.adjustToxLoss(1*REM)
if(prob(10))
M.reagents.add_reagent("histamine",pick(5,15))
M.reagents.remove_reagent("formaldehyde",1)
M.reagents.add_reagent("histamine",rand(5,15))
..()
return
@@ -74,6 +74,7 @@ datum/reagent/formaldehyde/on_mob_life(var/mob/living/M as mob)
required_reagents = list("ethanol" = 1, "oxygen" = 1, "silver" = 1)
result_amount = 3
required_temp = 420
mix_message = "Ugh, it smells like the morgue in here."
datum/reagent/venom
name = "Venom"
@@ -82,32 +83,38 @@ datum/reagent/venom
reagent_state = LIQUID
color = "#CF3600"
metabolization_rate = 0.2
overdose_threshold = 40
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)
if(prob(25))
M.reagents.add_reagent("histamine",pick(5,10))
M.reagents.remove_reagent("venom",1)
M.reagents.add_reagent("histamine",rand(5,10))
..()
return
datum/reagent/venom/overdose_process(var/mob/living/M as mob)
if(volume >= 40)
if(prob(4))
M.gib()
..()
return
datum/reagent/neurotoxin2
name = "Neurotoxin"
id = "neurotoxin2"
description = "Deals toxin and brain damage up to 60 before it slows down, causing confusion and a knockout after 17 elapsed cycles."
description = "A dangerous toxin that attacks the nervous system."
reagent_state = LIQUID
color = "#CF3600"
var/cycle_count = 0
color = "#60A584"
metabolization_rate = 1
datum/reagent/neurotoxin2/on_mob_life(var/mob/living/M as mob)
cycle_count++
if(M.brainloss < 60)
M.adjustBrainLoss(1*REM)
M.adjustToxLoss(1*REM)
if(cycle_count == 17)
M.sleeping += 10 // buffed so it works
if(current_cycle >= 17)
M.Paralyse(10)
..()
return
@@ -122,7 +129,7 @@ datum/reagent/neurotoxin2/on_mob_life(var/mob/living/M as mob)
datum/reagent/cyanide
name = "Cyanide"
id = "cyanide"
description = "Deals toxin damage, alongside some oxygen loss. 8% chance of stun and some extra toxin damage."
description = "A highly toxic chemical with some uses as a building block for other things."
reagent_state = LIQUID
color = "#CF3600"
metabolization_rate = 0.1
@@ -146,6 +153,7 @@ datum/reagent/cyanide/on_mob_life(var/mob/living/M as mob)
required_reagents = list("oil" = 1, "ammonia" = 1, "oxygen" = 1)
result_amount = 3
required_temp = 380
mix_message = "The mixture gives off a faint scent of almonds."
/datum/reagent/questionmark // food poisoning
name = "????"
@@ -324,9 +332,9 @@ datum/reagent/initropidril/on_mob_life(var/mob/living/M as mob)
datum/reagent/pancuronium
name = "Pancuronium"
id = "pancuronium"
description = "Knocks you out after 30 seconds, 7% chance to cause some oxygen loss."
description = "Pancuronium bromide is a powerful skeletal muscle relaxant."
reagent_state = LIQUID
color = "#CF3600"
color = "#1E4664"
metabolization_rate = 0.2
datum/reagent/pancuronium/on_mob_life(var/mob/living/M as mob)
@@ -14,14 +14,14 @@
var/recharge_time = 5 //Time it takes for shots to recharge (in seconds)
var/list/datum/reagents/reagent_list = list()
var/list/reagent_ids = list("doctorsdelight", "inaprovaline", "spaceacillin")
//var/list/reagent_ids = list("dexalin", "kelotane", "bicaridine", "anti_toxin", "inaprovaline", "spaceacillin")
var/list/reagent_ids = list("salglu_solution", "epinephrine", "spaceacillin")
//var/list/reagent_ids = list("salbutamol", "silver_sulfadiazine", "styptic_powder", "charcoal", "epinephrine", "spaceacillin")
/obj/item/weapon/reagent_containers/borghypo/surgeon
reagent_ids = list("bicaridine", "inaprovaline", "dexalin")
reagent_ids = list("styptic_powder", "epinephrine", "salbutamol")
/obj/item/weapon/reagent_containers/borghypo/crisis
reagent_ids = list("doctorsdelight", "inaprovaline", "tramadol")
reagent_ids = list("salglu_solution", "epinephrine", "acetaminophen")
/obj/item/weapon/reagent_containers/borghypo/New()
..()
@@ -78,7 +78,7 @@
user << "\blue You inject [M] with the injector."
M << "\red You feel a tiny prick!"
R.reaction(M, INGEST)
R.add_reagent(M)
if(M.reagents)
var/trans = R.trans_to(M, amount_per_transfer_from_this)
user << "\blue [trans] units injected. [R.total_volume] units remaining."
@@ -147,4 +147,4 @@
/obj/item/weapon/reagent_containers/drugs/baggie/meth
New()
..()
reagents.add_reagent("hyperzine", 10)
reagents.add_reagent("methamphetamine", 10)
@@ -181,7 +181,7 @@
..()
reagents.add_reagent("admorinazine", 5)
reagents.add_reagent("capsaicin", 5)
reagents.add_reagent("hyperzine", 20)
reagents.add_reagent("methamphetamine", 20)
reagents.add_reagent("thirteenloko", 20)
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)
@@ -205,7 +205,7 @@
New()
..()
reagents.add_reagent("mutagen", 25)
reagents.add_reagent("anti_toxin", 10)
reagents.add_reagent("charcoal", 10)
reagents.add_reagent("thirteenloko", 15)
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)
@@ -316,7 +316,7 @@
New()
..()
reagents.add_reagent("nutriment", 8)
reagents.add_reagent("tricordrazine", 8)
reagents.add_reagent("omnizine", 8)
bitesize = 3
/*
@@ -457,7 +457,7 @@
if(9)
reagents.add_reagent("berryjuice", 3)
if(10)
reagents.add_reagent("tricordrazine", 3)
reagents.add_reagent("omnizine", 3)
if(prob(30))
src.icon_state = "donut2"
src.name = "Frosted Chaos Donut"
@@ -524,6 +524,7 @@
New()
..()
reagents.add_reagent("nutriment", 1)
reagents.add_reagent("egg", 5)
throw_impact(atom/hit_atom)
..()
@@ -649,7 +650,7 @@
New()
..()
reagents.add_reagent("nutriment", 12)
reagents.add_reagent("stoxin", 3)
reagents.add_reagent("morphine", 3)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/stuffing
@@ -719,7 +720,7 @@
New()
..()
reagents.add_reagent("nutriment", 12)
reagents.add_reagent("hyperzine", 5)
reagents.add_reagent("methamphetamine", 5)
src.bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/xenomeat
@@ -789,7 +790,7 @@
if (src.warm)
spawn( 4200 )
src.warm = 0
src.reagents.del_reagent("tricordrazine")
src.reagents.del_reagent("omnizine")
src.name = "donk-pocket"
return
@@ -802,7 +803,7 @@
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("alkysine", 6)
reagents.add_reagent("mannitol", 6)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/ghostburger
@@ -1072,7 +1073,7 @@
New()
..()
reagents.add_reagent("nutriment", 5)
reagents.add_reagent("amatoxin", 3)
reagents.add_reagent("amanitin", 3)
reagents.add_reagent("psilocybin", 1)
bitesize = 3
@@ -1088,7 +1089,7 @@
name = "exceptional plump pie"
desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump pie!"
reagents.add_reagent("nutriment", 8)
reagents.add_reagent("tricordrazine", 5)
reagents.add_reagent("omnizine", 5)
bitesize = 2
else
reagents.add_reagent("nutriment", 8)
@@ -1282,7 +1283,7 @@
New()
..()
reagents.add_reagent("nutriment", 4)
reagents.add_reagent("doctorsdelight", 5)
reagents.add_reagent("salglu_solution", 5)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato
@@ -1407,7 +1408,7 @@
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("amatoxin", 6)
reagents.add_reagent("amanitin", 6)
reagents.add_reagent("psilocybin", 3)
bitesize = 3
@@ -1499,7 +1500,7 @@
..()
reagents.add_reagent("nutriment", 8)
reagents.add_reagent("water", 5)
reagents.add_reagent("tricordrazine", 5)
reagents.add_reagent("omnizine", 5)
bitesize = 5
/obj/item/weapon/reagent_containers/food/snacks/mysterysoup
@@ -1524,7 +1525,7 @@
if(3)
reagents.add_reagent("nutriment", 5)
reagents.add_reagent("water", 5)
reagents.add_reagent("tricordrazine", 5)
reagents.add_reagent("omnizine", 5)
if(4)
reagents.add_reagent("nutriment", 5)
reagents.add_reagent("water", 10)
@@ -1546,7 +1547,7 @@
if(10)
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("tomatojuice", 5)
reagents.add_reagent("imidazoline", 5)
reagents.add_reagent("oculine", 5)
bitesize = 5
/obj/item/weapon/reagent_containers/food/snacks/wishsoup
@@ -1860,7 +1861,7 @@
..()
reagents.add_reagent("nutriment", 10)
reagents.add_reagent("tomatojuice", 5)
reagents.add_reagent("imidazoline", 5)
reagents.add_reagent("oculine", 5)
reagents.add_reagent("water", 5)
bitesize = 10
@@ -2021,7 +2022,7 @@
New()
..()
reagents.add_reagent("nutriment", 3)
reagents.add_reagent("imidazoline", 3)
reagents.add_reagent("oculine", 3)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/superbiteburger
@@ -2146,7 +2147,7 @@
name = "exceptional plump helmet biscuit"
desc = "Microwave is taken by a fey mood! It has cooked an exceptional plump helmet biscuit!"
reagents.add_reagent("nutriment", 8)
reagents.add_reagent("tricordrazine", 5)
reagents.add_reagent("omnizine", 5)
bitesize = 2
else
reagents.add_reagent("nutriment", 5)
@@ -2211,7 +2212,7 @@
New()
..()
reagents.add_reagent("nutriment", 8)
reagents.add_reagent("doctorsdelight", 5)
reagents.add_reagent("omnizine", 5)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/appletart
@@ -2383,7 +2384,7 @@
New()
..()
reagents.add_reagent("nutriment", 25)
reagents.add_reagent("imidazoline", 10)
reagents.add_reagent("oculine", 10)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice
@@ -2404,7 +2405,7 @@
New()
..()
reagents.add_reagent("nutriment", 25)
reagents.add_reagent("alkysine", 10)
reagents.add_reagent("mannitol", 10)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/braincakeslice
@@ -2746,7 +2747,7 @@
..()
reagents.add_reagent("nutriment", 30)
reagents.add_reagent("tomatojuice", 6)
reagents.add_reagent("imidazoline", 12)
reagents.add_reagent("oculine", 12)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/vegetablepizzaslice
@@ -3026,7 +3027,7 @@
New()
..()
reagents.add_reagent("nutriment", 12)
reagents.add_reagent("stoxin", 3)
reagents.add_reagent("morphine", 3)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/stuffing
@@ -704,7 +704,7 @@
New()
..()
reagents.add_reagent("tricordrazine", 20)
reagents.add_reagent("omnizine", 20)
reagents.del_reagent("sugar")
reagents.update_total()
bitesize = 4
@@ -55,29 +55,6 @@
var/image/lid = image(icon, src, "lid_bottle")
overlays += lid
/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline
name = "inaprovaline bottle"
desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle16"
New()
..()
reagents.add_reagent("inaprovaline", 30)
/obj/item/weapon/reagent_containers/glass/bottle/hyperzine
name = "hyperzine bottle"
desc = "A small bottle. Contains hyperzine - a powerful stimulant."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle18"
New()
..()
reagents.add_reagent("hyperzine", 30)
/obj/item/weapon/reagent_containers/glass/bottle/toxin
name = "toxin bottle"
desc = "A small bottle of toxins. Do not drink, it is poisonous."
@@ -98,36 +75,6 @@
..()
reagents.add_reagent("cyanide", 30)
/obj/item/weapon/reagent_containers/glass/bottle/stoxin
name = "sleep-toxin bottle"
desc = "A small bottle of sleep toxins. Just the fumes make you sleepy."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle20"
New()
..()
reagents.add_reagent("stoxin", 30)
/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate
name = "Chloral Hydrate Bottle"
desc = "A small bottle of Choral Hydrate. Mickey's Favorite!"
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle20"
New()
..()
reagents.add_reagent("chloralhydrate", 15) //Intentionally low since it is so strong. Still enough to knock someone out.
/obj/item/weapon/reagent_containers/glass/bottle/antitoxin
name = "anti-toxin bottle"
desc = "A small bottle of Anti-toxins. Counters poisons, and repairs damage, a wonder drug."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle17"
New()
..()
reagents.add_reagent("anti_toxin", 30)
/obj/item/weapon/reagent_containers/glass/bottle/mutagen
name = "unstable mutagen bottle"
desc = "A small bottle of unstable mutagen. Randomly changes the DNA structure of whoever comes in contact."
@@ -158,14 +105,14 @@
..()
reagents.add_reagent("diethylamine", 30)
/obj/item/weapon/reagent_containers/glass/bottle/pacid
name = "Polytrinic Acid Bottle"
desc = "A small bottle. Contains a small amount of Polytrinic Acid"
/obj/item/weapon/reagent_containers/glass/bottle/facid
name = "Fluorosulfuric Acid Bottle"
desc = "A small bottle. Contains a small amount of Fluorosulfuric Acid"
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle17"
New()
..()
reagents.add_reagent("pacid", 30)
reagents.add_reagent("facid", 30)
/obj/item/weapon/reagent_containers/glass/bottle/adminordrazine
name = "Adminordrazine Bottle"
@@ -201,4 +148,98 @@
icon_state = "bottle17"
New()
..()
reagents.add_reagent("morphine", 30)
reagents.add_reagent("morphine", 30)
/obj/item/weapon/reagent_containers/glass/bottle/charcoal
name = "Charcoal Bottle"
desc = "A small bottle. Contains charcoal."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle17"
New()
..()
reagents.add_reagent("charcoal", 30)
/obj/item/weapon/reagent_containers/glass/bottle/epinephrine
name = "Epinephrine Bottle"
desc = "A small bottle. Contains epinephrine."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle17"
New()
..()
reagents.add_reagent("epinephrine", 30)
/obj/item/weapon/reagent_containers/glass/bottle/pancuronium
name = "Pancuronium Bottle"
desc = "A small bottle of pancuronium."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle14"
New()
..()
reagents.add_reagent("pancuronium", 30)
/obj/item/weapon/reagent_containers/glass/bottle/sulfonal
name = "Sulfonal Bottle"
desc = "A small bottle of Sulfonal."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle19"
New()
..()
reagents.add_reagent("sulfonal", 30)
//Reagent bottles
/obj/item/weapon/reagent_containers/glass/bottle/reagent
name = "Reagent Bottle"
desc = "A bottle for storing reagents"
icon_state = "rbottle"
volume = 50
/obj/item/weapon/reagent_containers/glass/bottle/reagent/oil
name = "Oil Bottle"
desc = "A reagent bottle. Contains oil."
icon_state = "rbottle1"
New()
..()
reagents.add_reagent("oil", 50)
/obj/item/weapon/reagent_containers/glass/bottle/reagent/phenol
name = "Phenol Bottle"
desc = "A reagent bottle. Contains phenol."
icon_state = "rbottle2"
New()
..()
reagents.add_reagent("phenol", 50)
/obj/item/weapon/reagent_containers/glass/bottle/reagent/acetone
name = "Acetone Bottle"
desc = "A reagent bottle. Contains acetone."
icon_state = "rbottle3"
New()
..()
reagents.add_reagent("acetone", 50)
/obj/item/weapon/reagent_containers/glass/bottle/reagent/ammonia
name = "Ammonia Bottle"
desc = "A reagent bottle. Contains ammonia."
icon_state = "rbottle4"
New()
..()
reagents.add_reagent("ammonia", 50)
/obj/item/weapon/reagent_containers/glass/bottle/reagent/diethylamine
name = "Diethylamine Bottle"
desc = "A reagent bottle. Contains diethylamine."
icon_state = "rbottle5"
New()
..()
reagents.add_reagent("diethylamine", 50)
/obj/item/weapon/reagent_containers/glass/bottle/reagent/acid
name = "Acid Bottle"
desc = "A reagent bottle. Contains sulfuric acid."
icon_state = "rbottle6"
New()
..()
reagents.add_reagent("sacid", 50)
@@ -7,27 +7,27 @@
var/reagent = ""
/obj/item/weapon/reagent_containers/glass/bottle/robot/inaprovaline
name = "internal inaprovaline bottle"
desc = "A small bottle. Contains inaprovaline - used to stabilize patients."
/obj/item/weapon/reagent_containers/glass/bottle/robot/epinephrine
name = "internal epinephrine bottle"
desc = "A small bottle. Contains epinephrine - used to stabilize patients."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle16"
reagent = "inaprovaline"
reagent = "epinephrine"
New()
..()
reagents.add_reagent("inaprovaline", 60)
reagents.add_reagent("epinephrine", 60)
return
/obj/item/weapon/reagent_containers/glass/bottle/robot/antitoxin
name = "internal anti-toxin bottle"
desc = "A small bottle of Anti-toxins. Counters poisons, and repairs damage, a wonder drug."
/obj/item/weapon/reagent_containers/glass/bottle/robot/charcoal
name = "internal charcoal bottle"
desc = "A small bottle of charcoal. Counters poisons and repairs damage."
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle17"
reagent = "anti_toxin"
reagent = "charcoal"
New()
..()
reagents.add_reagent("anti_toxin", 60)
reagents.add_reagent("charcoal", 60)
return
@@ -30,7 +30,7 @@
user << "\blue You inject [M] with [src]."
M << "\red You feel a tiny prick!"
src.reagents.reaction(M, INGEST)
src.reagents.add_reagent(M)
if(M.reagents)
var/list/injected = list()
@@ -53,7 +53,7 @@
/obj/item/weapon/reagent_containers/hypospray/CMO/New()
..()
reagents.add_reagent("doctorsdelight", 30)
reagents.add_reagent("omnizine", 30)
/obj/item/weapon/reagent_containers/hypospray/combat
name = "combat stimulant injector"
@@ -112,15 +112,15 @@
else
usr << "\blue It is spent."
/obj/item/weapon/reagent_containers/hypospray/autoinjector/leporazine //basilisks
name = "leporazine autoinjector"
/obj/item/weapon/reagent_containers/hypospray/autoinjector/teporone //basilisks
name = "teporone autoinjector"
desc = "A rapid way to regulate your body's temperature in the event of a hardsuit malfunction at the cost of some shortness of breath."
icon_state = "lepopen"
/obj/item/weapon/reagent_containers/hypospray/autoinjector/leporazine/New()
/obj/item/weapon/reagent_containers/hypospray/autoinjector/teporone/New()
..()
reagents.remove_reagent("epinephrine", 10)
reagents.add_reagent("leporazine", 9)
reagents.add_reagent("teporone", 9)
reagents.add_reagent("lexorin", 1)
update_icon()
return
@@ -133,7 +133,7 @@
/obj/item/weapon/reagent_containers/hypospray/autoinjector/stimpack/New()
..()
reagents.remove_reagent("epinephrine", 10)
reagents.add_reagent("hyperzine", 9)
reagents.add_reagent("methamphetamine", 9)
reagents.add_reagent("lexorin", 1)
update_icon()
return
@@ -97,14 +97,6 @@
////////////////////////////////////////////////////////////////////////////////
//Pills
/obj/item/weapon/reagent_containers/pill/antitox
name = "Anti-toxins pill"
desc = "Neutralizes many common toxins."
icon_state = "pill17"
New()
..()
reagents.add_reagent("anti_toxin", 25)
/obj/item/weapon/reagent_containers/pill/tox
name = "Toxins pill"
desc = "Highly toxic."
@@ -129,39 +121,6 @@
..()
reagents.add_reagent("adminordrazine", 50)
/obj/item/weapon/reagent_containers/pill/stox
name = "Sleeping pill"
desc = "Commonly used to treat insomnia."
icon_state = "pill8"
New()
..()
reagents.add_reagent("stoxin", 30)
/obj/item/weapon/reagent_containers/pill/kelotane
name = "Kelotane pill"
desc = "Used to treat burns."
icon_state = "pill11"
New()
..()
reagents.add_reagent("kelotane", 30)
/obj/item/weapon/reagent_containers/pill/dermaline
name = "Dermaline pill"
desc = "Used to treat severe burns."
icon_state = "pill12"
New()
..()
reagents.add_reagent("dermaline", 30)
/obj/item/weapon/reagent_containers/pill/tramadol
name = "Tramadol pill"
desc = "A simple painkiller."
icon_state = "pill8"
New()
..()
reagents.add_reagent("tramadol", 15)
/obj/item/weapon/reagent_containers/pill/methamphetamine
name = "Methamphetamine pill"
desc = "Helps improve the ability to concentrate."
@@ -170,13 +129,13 @@
..()
reagents.add_reagent("methamphetamine", 5)
/obj/item/weapon/reagent_containers/pill/diphenhydramine
name = "Diphenhydramine pill"
desc = "A mild tranquilizer and anti-psychotic."
/obj/item/weapon/reagent_containers/pill/haloperidol
name = "Haloperidol pill"
desc = "Haloperidol is an anti-psychotic use to treat psychiatric problems."
icon_state = "pill8"
New()
..()
reagents.add_reagent("diphenhydramine", 15)
reagents.add_reagent("haloperidol", 15)
/obj/item/weapon/reagent_containers/pill/paroxetine
name = "Paroxetine pill"
@@ -186,29 +145,6 @@
..()
reagents.add_reagent("paroxetine", 15)
/obj/item/weapon/reagent_containers/pill/inaprovaline
name = "Inaprovaline pill"
desc = "Used to stabilize patients."
icon_state = "pill20"
New()
..()
reagents.add_reagent("inaprovaline", 30)
/obj/item/weapon/reagent_containers/pill/dexalin
name = "Dexalin pill"
desc = "Used to treat oxygen deprivation."
icon_state = "pill16"
New()
..()
reagents.add_reagent("dexalin", 30)
/obj/item/weapon/reagent_containers/pill/bicaridine
name = "Bicaridine pill"
desc = "Used to treat physical injuries."
icon_state = "pill18"
New()
..()
reagents.add_reagent("bicaridine", 30)
/obj/item/weapon/reagent_containers/pill/happy
name = "Happy pill"
@@ -225,9 +161,8 @@
icon_state = "pill18"
New()
..()
reagents.add_reagent("impedrezene", 10)
reagents.add_reagent("synaptizine", 5)
reagents.add_reagent("hyperzine", 5)
reagents.add_reagent("methamphetamine", 5)
/obj/item/weapon/reagent_containers/pill/charcoal
name = "Chacoal pill"
@@ -15,7 +15,7 @@
amount_per_transfer_from_this = 5
volume = 250
possible_transfer_amounts = null
banned_reagents = list("pacid","sacid")
banned_reagents = list("facid","sacid")
/obj/item/weapon/reagent_containers/spray/afterattack(atom/A as mob|obj, mob/user as mob)
@@ -51,9 +51,9 @@
if(reagents.has_reagent("sacid"))
message_admins("[key_name_admin(user)] fired sulphuric acid from \a [src].")
log_game("[key_name(user)] fired sulphuric acid from \a [src].")
if(reagents.has_reagent("pacid"))
message_admins("[key_name_admin(user)] fired Polyacid from \a [src].")
log_game("[key_name(user)] fired Polyacid from \a [src].")
if(reagents.has_reagent("facid"))
message_admins("[key_name_admin(user)] fired Fluorosulfuric Acid from \a [src].")
log_game("[key_name(user)] fired Fluorosulfuric Acid from \a [src].")
if(reagents.has_reagent("lube"))
message_admins("[key_name_admin(user)] fired Space lube from \a [src].")
log_game("[key_name(user)] fired Space lube from \a [src].")
@@ -211,7 +211,7 @@
reagents.add_reagent("spores", 150)
reagents.add_reagent("cryptobiolin", 150)
reagents.add_reagent("mutagen", 150)
reagents.add_reagent("chloralhydrate", 150)
reagents.add_reagent("pancuronium", 150)
// Plant-B-Gone
@@ -442,25 +442,6 @@
////////////////////////////////////////////////////////////////////////////////
/obj/item/weapon/reagent_containers/syringe/inaprovaline
name = "Syringe (inaprovaline)"
desc = "Contains inaprovaline - used to stabilize patients."
New()
..()
reagents.add_reagent("inaprovaline", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/antitoxin
name = "Syringe (anti-toxin)"
desc = "Contains anti-toxins."
New()
..()
reagents.add_reagent("anti_toxin", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/antiviral
name = "Syringe (spaceacillin)"
desc = "Contains antiviral agents."
@@ -470,41 +451,43 @@
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/ld50_syringe/choral
/obj/item/weapon/reagent_containers/ld50_syringe/lethal
New()
..()
reagents.add_reagent("chloralhydrate", 50)
reagents.add_reagent("sulfonal", 4)
reagents.add_reagent("pancuronium", 6)
reagents.add_reagent("neurotoxin2", 40)
mode = SYRINGE_INJECT
update_icon()
//Robot syringes
//Not special in any way, code wise. They don't have added variables or procs.
/obj/item/weapon/reagent_containers/syringe/robot/antitoxin
name = "Syringe (anti-toxin)"
desc = "Contains anti-toxins."
/obj/item/weapon/reagent_containers/syringe/robot/charcoal
name = "Syringe (charcoal)"
desc = "Contains charcoal."
New()
..()
reagents.add_reagent("anti_toxin", 15)
reagents.add_reagent("charcoal", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/robot/inoprovaline
name = "Syringe (inoprovaline)"
desc = "Contains inaprovaline - used to stabilize patients."
/obj/item/weapon/reagent_containers/syringe/robot/epinephrine
name = "Syringe (Epinephrine)"
desc = "Contains epinephrine - used to stabilize patients."
New()
..()
reagents.add_reagent("inaprovaline", 15)
reagents.add_reagent("epinephrine", 15)
mode = SYRINGE_INJECT
update_icon()
/obj/item/weapon/reagent_containers/syringe/robot/mixed
name = "Syringe (mixed)"
desc = "Contains inaprovaline & anti-toxins."
desc = "Contains epinephrine & charcoal."
New()
..()
reagents.add_reagent("inaprovaline", 7)
reagents.add_reagent("anti_toxin", 8)
reagents.add_reagent("epinephrine", 7)
reagents.add_reagent("charcoal", 8)
mode = SYRINGE_INJECT
update_icon()
@@ -252,7 +252,7 @@ var/list/valid_secondary_effect_types = list(\
my_effect.ToggleActivate()
if(secondary_effect && secondary_effect.trigger == TRIGGER_WATER && prob(25))
secondary_effect.ToggleActivate(0)
else if(W.reagents.has_reagent("acid", 1) || W.reagents.has_reagent("pacid", 1) || W.reagents.has_reagent("diethylamine", 1))
else if(W.reagents.has_reagent("acid", 1) || W.reagents.has_reagent("facid", 1) || W.reagents.has_reagent("diethylamine", 1))
if(my_effect.trigger == TRIGGER_ACID)
my_effect.ToggleActivate()
if(secondary_effect && secondary_effect.trigger == TRIGGER_ACID && prob(25))
@@ -8,7 +8,7 @@
/obj/item/weapon/reagent_containers/glass/replenishing/New()
..()
processing_objects.Add(src)
spawning_id = pick("blood","holywater","lube","stoxin","ethanol","ice","glycerol","fuel","cleaner")
spawning_id = pick("blood","holywater","lube","morphine","ethanol","ice","glycerol","fuel","cleaner")
/obj/item/weapon/reagent_containers/glass/replenishing/process()
reagents.add_reagent(spawning_id, 0.3)
@@ -38,7 +38,6 @@
icon_state = "amaurifruit"
New(var/loc, var/potency)
..()
reagents.add_reagent("zombiepowder", potency * 10)
reagents.add_reagent("condensedcapsaicin", potency * 5)
reagents.add_reagent("nutriment", potency)
bitesize = 1+round(reagents.total_volume / 2, 1)
@@ -51,7 +50,7 @@
New(var/loc, var/potency)
..()
//this may prove a little strong
reagents.add_reagent("stoxin", (potency * potency) / 5)
reagents.add_reagent("morphine", (potency * potency) / 5)
reagents.add_reagent("capsaicin", (potency * potency) / 5)
reagents.add_reagent("nutriment", potency)
bitesize = 1+round(reagents.total_volume / 2, 1)
@@ -63,8 +62,8 @@
icon_state = "valeleaves"
New(var/loc, var/potency)
..()
reagents.add_reagent("paracetamol", potency * 5)
reagents.add_reagent("dexalin", potency * 2)
reagents.add_reagent("acetaminophen", potency * 5)
reagents.add_reagent("salbutamol", potency * 2)
reagents.add_reagent("nutriment", potency)
bitesize = 1+round(reagents.total_volume / 2, 1)
@@ -75,7 +74,7 @@
icon_state = "surikfruit"
New(var/loc, var/potency)
..()
reagents.add_reagent("impedrezene", potency * 3)
reagents.add_reagent("haloperidol", potency * 3)
reagents.add_reagent("synaptizine", potency * 2)
reagents.add_reagent("nutriment", potency)
bitesize = 1+round(reagents.total_volume / 2, 1)
@@ -51,11 +51,8 @@
coolant_reagents_purity["icecoffee"] = 0.6
coolant_reagents_purity["icetea"] = 0.6
coolant_reagents_purity["milkshake"] = 0.6
coolant_reagents_purity["leporazine"] = 0.7
coolant_reagents_purity["kelotane"] = 0.7
coolant_reagents_purity["teporone"] = 0.7
coolant_reagents_purity["sterilizine"] = 0.7
coolant_reagents_purity["dermaline"] = 0.7
coolant_reagents_purity["hyperzine"] = 0.8
coolant_reagents_purity["cryoxadone"] = 0.9
coolant_reagents_purity["coolant"] = 1
coolant_reagents_purity["adminordrazine"] = 2
@@ -144,15 +141,15 @@
data["radiation"] = round(radiation)
data["t_left_radspike"] = round(t_left_radspike)
data["rad_shield_on"] = rad_shield
// update the ui if it exists, returns null if no ui is passed/found
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if (!ui)
// the ui does not exist, so we'll create a new() one
// for a list of parameters and their descriptions see the code docs in \code\modules\nano\nanoui.dm
ui = new(user, src, ui_key, "geoscanner.tmpl", "High Res Radiocarbon Spectrometer", 900, 825)
// when the ui is first opened this is the data it will use
ui.set_initial_data(data)
ui.set_initial_data(data)
// open the new ui window
ui.open()
// auto update every Master Controller tick
+12 -41
View File
@@ -104,12 +104,12 @@
////////////////////////STAGE 4/////////////////////////////////
/datum/disease2/effect/doctorsdelight
/datum/disease2/effect/omnizine
name = "Panacea Effect"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount("doctorsdelight") < 1)
mob.reagents.add_reagent("doctorsdelight", 1)
if (mob.reagents.get_reagent_amount("omnizine") < 1)
mob.reagents.add_reagent("omnizine", 1)
/datum/disease2/effect/viralsputum_major
name = "Hemoptysis"
@@ -291,7 +291,7 @@
name = "Spontaneous Cellular Collapse"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
mob.reagents.add_reagent("pacid", 1)
mob.reagents.add_reagent("facid", 1)
mob << "<span class = 'warning'> Your body burns as your cells break down.</span>"
shake_camera(mob,5*multiplier)
@@ -419,8 +419,8 @@
name = "Regenerative Synapse Effect"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount("alkysine") < 1)
mob.reagents.add_reagent("alkysine", 1)
if (mob.reagents.get_reagent_amount("mannitol") < 1)
mob.reagents.add_reagent("mannitol", 1)
/datum/disease2/effect/paroxetine
name = "Psyche Collapse Syndrome"
@@ -686,37 +686,8 @@ var/list/compatible_mobs = list(/mob/living/carbon/human, /mob/living/carbon/mon
flags |= NODROP //curses!
..()
//Lets not make people nearly immortal. ~Alex-gh
/*
/datum/disease2/effect/spaceadapt
name = "Space Adaptation Effect"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
var/mob/living/carbon/human/H = mob
if (mob.reagents.get_reagent_amount("dexalinp") < 10)
mob.reagents.add_reagent("dexalinp", 4)
if (mob.reagents.get_reagent_amount("leporazine") < 10)
mob.reagents.add_reagent("leporazine", 4)
if (mob.reagents.get_reagent_amount("bicaridine") < 10)
mob.reagents.add_reagent("bicaridine", 4)
if (mob.reagents.get_reagent_amount("dermaline") < 10)
mob.reagents.add_reagent("dermaline", 4)
mob.emote("me",1,"exhales slowly.")
var/datum/organ/external/chest/chest = H.get_organ("chest")
for(var/datum/organ/internal/I in chest.internal_organs)
I.damage = 0
*/
////////////////////////STAGE 2/////////////////////////////////
/datum/disease2/effect/methylphenidate
name = "Mental Stability Phenomenon"
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount("methylphenidate") < 5)
mob.reagents.add_reagent("methylphenidate", 1)
/datum/disease2/effect/pain
name = "Acute Muscle Ache"
@@ -827,8 +798,8 @@ var/list/compatible_mobs = list(/mob/living/carbon/human, /mob/living/carbon/mon
name = "Adrenal Overload"
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount("hyperzine") < 40)
mob.reagents.add_reagent("hyperzine", 4)
if (mob.reagents.get_reagent_amount("methamphetamine") < 40)
mob.reagents.add_reagent("methamphetamine", 4)
if (prob(30))
mob << "<span class='notice'>You feel a rush of energy inside you!</span>"
mob.jitteriness += 10
@@ -904,8 +875,8 @@ var/list/compatible_mobs = list(/mob/living/carbon/human, /mob/living/carbon/mon
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier)
mob << "<span class = 'notice'> You feel optimistic!</span>"
if (mob.reagents.get_reagent_amount("tricordrazine") < 1)
mob.reagents.add_reagent("tricordrazine", 1)
if (mob.reagents.get_reagent_amount("salglu_solution") < 1)
mob.reagents.add_reagent("salglu_solution", 1)
////////////////////////STAGE 1/////////////////////////////////
@@ -929,8 +900,8 @@ var/list/compatible_mobs = list(/mob/living/carbon/human, /mob/living/carbon/mon
name = "Adrenaline Extra"
stage = 1
activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount("hyperzine") < 10)
mob.reagents.add_reagent("hyperzine", 4)
if (mob.reagents.get_reagent_amount("ephedrine") < 10)
mob.reagents.add_reagent("ephedrine", 4)
if (prob(30))
mob << "<span class='notice'>You feel a rush of energy inside you!</span>"
mob.jitteriness += 10