//helper that ensures the reaction rate holds after iterating //Ex. REACTION_RATE(0.3) means that 30% of the reagents will react each chemistry tick (~2 seconds by default). #define REACTION_RATE(rate) (1.0 - (1.0-rate)**(1.0/PROCESS_REACTION_ITER)) //helper to define reaction rate in terms of half-life //Ex. //HALF_LIFE(0) -> Reaction completes immediately (default chems) //HALF_LIFE(1) -> Half of the reagents react immediately, the rest over the following ticks. //HALF_LIFE(2) -> Half of the reagents are consumed after 2 chemistry ticks. //HALF_LIFE(2.2) -> Half of the reagents are consumed after 2.2 chemistry ticks. #define HALF_LIFE(ticks) (ticks? 1.0 - (0.5)**(1.0/(ticks*PROCESS_REACTION_ITER)) : 1.0) /datum/chemical_reaction var/name = null var/id = null var/result = null var/list/required_reagents = list() var/required_temperature_min // Temperatures must exceed this value to trigger. var/required_temperature_max // Temperatures must be less than this value to trigger. var/list/catalysts = list() var/list/inhibitors = list() var/result_amount = 0 //how far the reaction proceeds each time it is processed. Used with either REACTION_RATE or HALF_LIFE macros. var/reaction_rate = HALF_LIFE(0) //if less than 1, the reaction will be inhibited if the ratio of products/reagents is too high. //0.5 = 50% yield -> reaction will only proceed halfway until products are removed. var/yield = 1.0 //If limits on reaction rate would leave less than this amount of any reagent (adjusted by the reaction ratios), //the reaction goes to completion. This is to prevent reactions from going on forever with tiny reagent amounts. var/min_reaction = 2 var/mix_message = "The solution begins to bubble." var/reaction_sound = 'sound/effects/bubbles.ogg' var/log_is_important = 0 // If this reaction should be considered important for logging. Important recipes message admins when mixed, non-important ones just log to file. /datum/chemical_reaction/proc/can_happen(var/datum/reagents/holder) //check that all the required reagents are present if(!holder.has_all_reagents(required_reagents)) return 0 //check that all the required catalysts are present in the required amount if(!holder.has_all_reagents(catalysts)) return 0 //check that none of the inhibitors are present in the required amount if(holder.has_any_reagent(inhibitors)) return 0 var/temp = holder.get_temperature() if(required_temperature_min && (temp < required_temperature_min)) return 0 if(required_temperature_max && (temp > required_temperature_max)) return 0 return 1 /datum/chemical_reaction/proc/calc_reaction_progress(var/datum/reagents/holder, var/reaction_limit) var/progress = reaction_limit * reaction_rate //simple exponential progression //calculate yield if(1-yield > 0.001) //if yield ratio is big enough just assume it goes to completion /* Determine the max amount of product by applying the yield condition: (max_product/result_amount) / reaction_limit == yield/(1-yield) We make use of the fact that: reaction_limit = (REAGENT_VOLUME(holder, reactant) / required_reagents[reactant]) of the limiting reagent. */ var/yield_ratio = yield/(1-yield) var/max_product = yield_ratio * reaction_limit * result_amount //rearrange to obtain max_product var/yield_limit = max(0, max_product - REAGENT_VOLUME(holder, result))/result_amount progress = min(progress, yield_limit) //apply yield limit //apply min reaction progress - wasn't sure if this should go before or after applying yield //I guess people can just have their miniscule reactions go to completion regardless of yield. for(var/reactant in required_reagents) var/remainder = REAGENT_VOLUME(holder, reactant) - progress*required_reagents[reactant] if(remainder <= min_reaction*required_reagents[reactant]) progress = reaction_limit break return progress /datum/chemical_reaction/process(var/datum/reagents/holder) //determine how far the reaction can proceed var/list/reaction_limits = list() for(var/reactant in required_reagents) reaction_limits += REAGENT_VOLUME(holder, reactant) / required_reagents[reactant] //determine how far the reaction proceeds var/reaction_limit = min(reaction_limits) var/progress_limit = calc_reaction_progress(holder, reaction_limit) var/reaction_progress = min(reaction_limit, progress_limit) //no matter what, the reaction progress cannot exceed the stoichiometric limit. //need to obtain the new reagent's data before anything is altered var/data = send_data(holder, reaction_progress) //remove the reactants var/total_thermal_energy = 0 for(var/reactant in required_reagents) var/amt_used = required_reagents[reactant] * reaction_progress var/singleton/reagent/removing_reagent = GET_SINGLETON(reactant) var/energy_transfered = removing_reagent.get_thermal_energy(holder) * (amt_used / holder.reagent_volumes[reactant]) total_thermal_energy += energy_transfered holder.remove_reagent(reactant, amt_used, safety = 1) //add the product var/amt_produced = result_amount * reaction_progress if(result) holder.add_reagent(result, amt_produced, data, safety = 1, new_thermal_energy = total_thermal_energy) on_reaction(holder, amt_produced, total_thermal_energy) return reaction_progress //called when a reaction processes /datum/chemical_reaction/proc/on_reaction(var/datum/reagents/holder, var/created_volume, var/created_thermal_energy) return //called after processing reactions, if they occurred /datum/chemical_reaction/proc/post_reaction(var/datum/reagents/holder) var/atom/container = holder.my_atom if(container && !ismob(container)) var/turf/T = get_turf(container) if(mix_message) var/list/seen = viewers(4, T) for(var/mob/M in seen) M.show_message(SPAN_NOTICE("[icon2html(container, viewers(get_turf(src)))] [mix_message]"), 1) if(reaction_sound) playsound(T, reaction_sound, 80, 1) //obtains any special data that will be provided to the reaction products //this is called just before reactants are removed. /datum/chemical_reaction/proc/send_data(var/datum/reagents/holder, var/reaction_limit) return null /* Common reactions */ /datum/chemical_reaction/inaprovaline name = "Inaprovaline" id = "inaprovaline" result = /singleton/reagent/inaprovaline required_reagents = list(/singleton/reagent/acetone = 1, /singleton/reagent/carbon = 1, /singleton/reagent/sugar = 1) result_amount = 3 /datum/chemical_reaction/dylovene name = "Dylovene" id = "dylovene" result = /singleton/reagent/dylovene required_reagents = list(/singleton/reagent/silicon = 1, /singleton/reagent/potassium = 1, /singleton/reagent/ammonia = 1) result_amount = 3 /datum/chemical_reaction/mortaphenyl name = "Mortaphenyl" id = "mortaphenyl" result = /singleton/reagent/mortaphenyl required_reagents = list(/singleton/reagent/inaprovaline = 1, /singleton/reagent/alcohol/ethanol = 1, /singleton/reagent/acetone = 1) result_amount = 3 /datum/chemical_reaction/perconol name = "Perconol" id = "perconol" result = /singleton/reagent/perconol required_reagents = list(/singleton/reagent/mortaphenyl = 1, /singleton/reagent/sugar = 1, /singleton/reagent/hydrazine = 1) result_amount = 3 /datum/chemical_reaction/oxycomorphine name = "Oxycomorphine" id = "oxycomorphine" result = /singleton/reagent/oxycomorphine required_reagents = list(/singleton/reagent/morphine = 1, /singleton/reagent/mortaphenyl = 1) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 2 /datum/chemical_reaction/tramarineoxycomorphine name = "Oxycomorphine (Artificial)" id = "oxycomorphineartificial" result = /singleton/reagent/oxycomorphine required_reagents = list(/singleton/reagent/tramarine = 1, /singleton/reagent/mortaphenyl = 1) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 1 /datum/chemical_reaction/heroin name = "Heroin" id = "heroin" result = /singleton/reagent/drugs/heroin required_reagents = list(/singleton/reagent/morphine = 2, /singleton/reagent/acetone = 2) result_amount = 1 /datum/chemical_reaction/tramarineheroin name = "Heroin (Artificial)" id = "heroinartificial" result = /singleton/reagent/drugs/heroin required_reagents = list(/singleton/reagent/tramarine = 3, /singleton/reagent/acetone = 2) result_amount = 1 /datum/chemical_reaction/sterilizine name = "Sterilizine" id = "sterilizine" result = /singleton/reagent/sterilizine required_reagents = list(/singleton/reagent/alcohol/ethanol = 1, /singleton/reagent/dylovene = 1, /singleton/reagent/acid/hydrochloric = 1) result_amount = 3 /datum/chemical_reaction/silicate name = "Silicate" id = "silicate" result = /singleton/reagent/silicate required_reagents = list(/singleton/reagent/aluminum = 1, /singleton/reagent/silicon = 1, /singleton/reagent/acetone = 1) result_amount = 3 /datum/chemical_reaction/mutagen name = "Unstable mutagen" id = "mutagen" result = /singleton/reagent/mutagen required_reagents = list(/singleton/reagent/radium = 1, /singleton/reagent/phosphorus = 1, /singleton/reagent/acid/hydrochloric = 1) result_amount = 3 /datum/chemical_reaction/thermite name = "Thermite" id = "thermite" result = /singleton/reagent/thermite required_reagents = list(/singleton/reagent/aluminum = 1, /singleton/reagent/iron = 1, /singleton/reagent/acetone = 1) result_amount = 3 /datum/chemical_reaction/mms name = "Mercury Monolithium Sucrose" id = "space_drugs" result = /singleton/reagent/drugs/mms required_reagents = list(/singleton/reagent/mercury = 1, /singleton/reagent/sugar = 1, /singleton/reagent/lithium = 1) result_amount = 3 /datum/chemical_reaction/snowflake name = "Snowflake" id = "snowflake" result = /singleton/reagent/drugs/snowflake required_reagents = list(/singleton/reagent/frostoil = 1, /singleton/reagent/fuel = 1, /singleton/reagent/sulfur = 1) result_amount = 1 /datum/chemical_reaction/cocaine name = "Cocaine" id = "cocaine" result = /singleton/reagent/drugs/cocaine required_reagents = list(/singleton/reagent/nutriment/cocagrounds = 1, /singleton/reagent/acid/hydrochloric = 1) result_amount = 1 /datum/chemical_reaction/contemplus name = "Contemplus" id = "contemplus" result = /singleton/reagent/drugs/cocaine/contemplus required_reagents = list(/singleton/reagent/drugs/cocaine = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/mental/emoxanyl = 1) result_amount = 2 /datum/chemical_reaction/spotlight name = "Spotlight" id = "spotlight" result = /singleton/reagent/drugs/cocaine/spotlight required_reagents = list(/singleton/reagent/drugs/cocaine = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/mental/parvosil = 1) result_amount = 2 /datum/chemical_reaction/sparkle name = "Sparkle" id = "sparkle" result = /singleton/reagent/drugs/cocaine/sparkle required_reagents = list(/singleton/reagent/drugs/cocaine = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/mental/minaphobin = 1) result_amount = 2 /datum/chemical_reaction/lube name = "Space Lube" id = "lube" result = /singleton/reagent/lube required_reagents = list(/singleton/reagent/water = 1, /singleton/reagent/silicon = 1, /singleton/reagent/acetone = 1) result_amount = 4 /datum/chemical_reaction/pacid name = "Polytrinic acid" id = "pacid" result = /singleton/reagent/acid/polyacid required_reagents = list(/singleton/reagent/acid = 1, /singleton/reagent/acid/hydrochloric = 1, /singleton/reagent/potassium = 1) result_amount = 3 /datum/chemical_reaction/synaptizine name = "Synaptizine" id = "synaptizine" result = /singleton/reagent/synaptizine required_reagents = list(/singleton/reagent/sugar = 1, /singleton/reagent/lithium = 1, /singleton/reagent/water = 1) result_amount = 3 /datum/chemical_reaction/hyronalin name = "Hyronalin" id = "hyronalin" result = /singleton/reagent/hyronalin required_reagents = list(/singleton/reagent/radium = 1, /singleton/reagent/dylovene = 1) result_amount = 2 /datum/chemical_reaction/arithrazine name = "Arithrazine" id = "arithrazine" result = /singleton/reagent/arithrazine required_reagents = list(/singleton/reagent/hyronalin = 1, /singleton/reagent/hydrazine = 1) result_amount = 2 /datum/chemical_reaction/impedrezene name = "Impedrezene" id = "impedrezene" result = /singleton/reagent/drugs/impedrezene required_reagents = list(/singleton/reagent/mercury = 1, /singleton/reagent/acetone = 1, /singleton/reagent/sugar = 1) result_amount = 2 /datum/chemical_reaction/kelotane name = "Kelotane" id = "kelotane" result = /singleton/reagent/kelotane required_reagents = list(/singleton/reagent/silicon = 1, /singleton/reagent/carbon = 1) result_amount = 2 log_is_important = 1 /datum/chemical_reaction/peridaxon name = "Peridaxon" id = "peridaxon" result = /singleton/reagent/peridaxon required_reagents = list(/singleton/reagent/bicaridine = 1, /singleton/reagent/clonexadone = 1) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 1 /datum/chemical_reaction/virus_food name = "Virus Food" id = "virusfood" result = /singleton/reagent/nutriment/virusfood required_reagents = list(/singleton/reagent/water = 1, /singleton/reagent/drink/milk = 1, /singleton/reagent/sugar = 1) result_amount = 6 /datum/chemical_reaction/leporazine name = "Leporazine" id = "leporazine" result = /singleton/reagent/leporazine required_reagents = list(/singleton/reagent/silicon = 1, /singleton/reagent/copper = 1) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 2 /datum/chemical_reaction/cryptobiolin name = "Cryptobiolin" id = "cryptobiolin" result = /singleton/reagent/drugs/cryptobiolin required_reagents = list(/singleton/reagent/potassium = 1, /singleton/reagent/acetone = 1, /singleton/reagent/sugar = 1) result_amount = 3 /datum/chemical_reaction/tricordrazine name = "Tricordrazine" id = "tricordrazine" result = /singleton/reagent/tricordrazine required_reagents = list(/singleton/reagent/water = 1, /singleton/reagent/inaprovaline = 1, /singleton/reagent/dylovene = 1) result_amount = 3 /datum/chemical_reaction/alkysine name = "Alkysine" id = "alkysine" result = /singleton/reagent/alkysine required_reagents = list(/singleton/reagent/acid/hydrochloric = 1, /singleton/reagent/ammonia = 1, /singleton/reagent/dylovene = 1) result_amount = 2 /datum/chemical_reaction/dexalin name = "Dexalin" id = "dexalin" result = /singleton/reagent/dexalin required_reagents = list(/singleton/reagent/acetone = 2, /singleton/reagent/toxin/phoron = 0.1) catalysts = list(/singleton/reagent/toxin/phoron = 1) inhibitors = list(/singleton/reagent/water = 1) // Messes with cryox result_amount = 1 /datum/chemical_reaction/dermaline name = "Dermaline" id = "dermaline" result = /singleton/reagent/dermaline required_reagents = list(/singleton/reagent/acetone = 1, /singleton/reagent/phosphorus = 1, /singleton/reagent/kelotane = 1) result_amount = 3 /datum/chemical_reaction/dexalinp name = "Dexalin Plus" id = "dexalinp" result = /singleton/reagent/dexalin/plus required_reagents = list(/singleton/reagent/dexalin = 1, /singleton/reagent/carbon = 1, /singleton/reagent/iron = 1) result_amount = 3 /datum/chemical_reaction/butazoline name = "Butazoline" id = "butazoline" result = /singleton/reagent/butazoline required_reagents = list(/singleton/reagent/bicaridine = 1, /singleton/reagent/aluminum = 1, /singleton/reagent/acid/hydrochloric = 1) result_amount = 3 /datum/chemical_reaction/bicaridine name = "Bicaridine" id = "bicaridine" result = /singleton/reagent/bicaridine required_reagents = list(/singleton/reagent/inaprovaline = 1, /singleton/reagent/carbon = 1) inhibitors = list(/singleton/reagent/sugar = 1) //Messes with inaprovaline result_amount = 2 /datum/chemical_reaction/hyperzine name = "Hyperzine" id = "hyperzine" result = /singleton/reagent/hyperzine required_reagents = list(/singleton/reagent/sugar = 1, /singleton/reagent/phosphorus = 1, /singleton/reagent/sulfur = 1) result_amount = 3 /datum/chemical_reaction/ryetalyn name = "Ryetalyn" id = "ryetalyn" result = /singleton/reagent/ryetalyn required_reagents = list(/singleton/reagent/arithrazine = 1, /singleton/reagent/carbon = 1) result_amount = 2 /datum/chemical_reaction/cryoxadone name = "Cryoxadone" id = "cryoxadone" result = /singleton/reagent/cryoxadone required_reagents = list(/singleton/reagent/dexalin = 1, /singleton/reagent/water = 1, /singleton/reagent/acetone = 1) result_amount = 3 /datum/chemical_reaction/clonexadone name = "Clonexadone" id = "clonexadone" result = /singleton/reagent/clonexadone required_reagents = list(/singleton/reagent/cryoxadone = 1, /singleton/reagent/sodium = 1, /singleton/reagent/toxin/phoron = 0.1) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 2 /datum/chemical_reaction/thetamycin name = "Thetamycin" id = "thetamycin" result = /singleton/reagent/thetamycin required_reagents = list(/singleton/reagent/drugs/cryptobiolin = 1, /singleton/reagent/dylovene = 1) result_amount = 2 /datum/chemical_reaction/steramycin name = "Steramycin" id = "steramycin" result = /singleton/reagent/steramycin required_reagents = list(/singleton/reagent/thetamycin = 2, /singleton/reagent/sterilizine = 1, /singleton/reagent/radium = 1) result_amount = 2 /datum/chemical_reaction/cytophenolate name = "Cytophenolate" id = "cytophenolate" result = /singleton/reagent/cytophenolate required_reagents = list(/singleton/reagent/fluvectionem = 1, /singleton/reagent/alcohol/ethanol = 1, /singleton/reagent/sugar = 1) result_amount = 3 /datum/chemical_reaction/antiparasitic name = "Helmizole" id = "helmizole" result = /singleton/reagent/antiparasitic required_reagents = list(/singleton/reagent/dylovene = 1, /singleton/reagent/fluvectionem = 1, /singleton/reagent/leporazine = 1) result_amount = 2 /datum/chemical_reaction/cetahydramine name = "Cetahydramine" id = "cetahydramine" result = /singleton/reagent/cetahydramine required_reagents = list(/singleton/reagent/drugs/cryptobiolin = 1, /singleton/reagent/inaprovaline = 1) result_amount = 2 /datum/chemical_reaction/asinodryl name = "Asinodryl" id = "asinodryl" result = /singleton/reagent/asinodryl required_reagents = list(/singleton/reagent/cetahydramine = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/water = 3) catalysts = list(/singleton/reagent/tungsten = 5) result_amount = 3 /datum/chemical_reaction/oculine name = "oculine" id = "oculine" result = /singleton/reagent/oculine required_reagents = list(/singleton/reagent/carbon = 1, /singleton/reagent/hydrazine = 1, /singleton/reagent/dylovene = 1) result_amount = 2 /datum/chemical_reaction/ethylredoxrazine name = "Ethylredoxrazine" id = "ethylredoxrazine" result = /singleton/reagent/ethylredoxrazine required_reagents = list(/singleton/reagent/acetone = 1, /singleton/reagent/dylovene = 1, /singleton/reagent/carbon = 1) result_amount = 3 /datum/chemical_reaction/verunol name = "Verunol Syrup" id = "verunol" result = /singleton/reagent/verunol required_reagents = list(/singleton/reagent/hydrazine = 1, /singleton/reagent/dylovene = 1, /singleton/reagent/alcohol/ethanol = 1) result_amount = 3 /datum/chemical_reaction/adipemcina name = "Adipemcina" id = "adipemcina" result = /singleton/reagent/adipemcina required_reagents = list(/singleton/reagent/lithium = 1, /singleton/reagent/dylovene = 1, /singleton/reagent/potassium = 1) result_amount = 3 /datum/chemical_reaction/soporific name = "Soporific" id = "stoxin" result = /singleton/reagent/soporific required_reagents = list(/singleton/reagent/polysomnine = 1, /singleton/reagent/sugar = 4) inhibitors = list(/singleton/reagent/phosphorus) // Messes with the smoke result_amount = 5 /datum/chemical_reaction/polysomnine name = "Polysomnine" id = "polysomnine" result = /singleton/reagent/polysomnine required_reagents = list(/singleton/reagent/alcohol/ethanol = 1, /singleton/reagent/acid/hydrochloric = 3, /singleton/reagent/water = 1) result_amount = 1 /datum/chemical_reaction/potassium_chloride name = "Potassium Chloride" id = "potassium_chloride" result = /singleton/reagent/toxin/potassium_chloride required_reagents = list(/singleton/reagent/sodiumchloride = 1, /singleton/reagent/potassium = 1) result_amount = 2 /datum/chemical_reaction/potassium_chlorophoride name = "Potassium Chlorophoride" id = "potassium_chlorophoride" result = /singleton/reagent/toxin/potassium_chlorophoride required_reagents = list(/singleton/reagent/toxin/potassium_chloride = 1, /singleton/reagent/toxin/phoron = 1, /singleton/reagent/polysomnine = 1) result_amount = 4 /datum/chemical_reaction/zombiepowder name = "Zombie Powder" id = "zombiepowder" result = /singleton/reagent/toxin/zombiepowder required_reagents = list(/singleton/reagent/toxin/carpotoxin = 5, /singleton/reagent/soporific = 5, /singleton/reagent/copper = 5) result_amount = 2 /datum/chemical_reaction/dextrotoxin name = "Dextrotoxin" id = "dextrotoxin" result = /singleton/reagent/toxin/dextrotoxin required_reagents = list(/singleton/reagent/toxin/carpotoxin = 3, /singleton/reagent/soporific = 10, /singleton/reagent/toxin/phoron = 5) result_amount = 5 /datum/chemical_reaction/mindbreaker name = "Mindbreaker Toxin" id = "mindbreaker" result = /singleton/reagent/drugs/mindbreaker required_reagents = list(/singleton/reagent/silicon = 1, /singleton/reagent/hydrazine = 1, /singleton/reagent/dylovene = 1) result_amount = 3 /datum/chemical_reaction/lipozine name = "Lipozine" id = "Lipozine" result = /singleton/reagent/lipozine required_reagents = list(/singleton/reagent/sodiumchloride = 1, /singleton/reagent/alcohol/ethanol = 1, /singleton/reagent/radium = 1) result_amount = 3 /datum/chemical_reaction/coagzolug name = "Coagzolug" id = "coagzolug" result = /singleton/reagent/coagzolug required_reagents = list(/singleton/reagent/tricordrazine = 1, /singleton/reagent/antidexafen = 1) result_amount = 1 // result is 1. i imagine it's because of some whacky reaction /datum/chemical_reaction/surfactant name = "Azosurfactant" id = "surfactant" result = /singleton/reagent/surfactant required_reagents = list(/singleton/reagent/hydrazine = 2, /singleton/reagent/carbon = 2, /singleton/reagent/acid = 1) result_amount = 5 /datum/chemical_reaction/diethylamine name = "Diethylamine" id = "diethylamine" result = /singleton/reagent/diethylamine required_reagents = list(/singleton/reagent/ammonia = 1, /singleton/reagent/alcohol/ethanol = 1) result_amount = 2 /datum/chemical_reaction/space_cleaner name = "Space cleaner" id = "cleaner" result = /singleton/reagent/spacecleaner required_reagents = list(/singleton/reagent/ammonia = 1, /singleton/reagent/water = 1) result_amount = 2 /datum/chemical_reaction/antifuel name = "Antifuel" id = "antifuel" result = /singleton/reagent/antifuel required_reagents = list(/singleton/reagent/spacecleaner = 1, /singleton/reagent/sodium = 1) result_amount = 2 /datum/chemical_reaction/plantbgone name = "Plant-B-Gone" id = "plantbgone" result = /singleton/reagent/toxin/plantbgone required_reagents = list(/singleton/reagent/toxin = 1, /singleton/reagent/water = 4) result_amount = 5 /datum/chemical_reaction/foaming_agent name = "Foaming Agent" id = "foaming_agent" result = /singleton/reagent/foaming_agent required_reagents = list(/singleton/reagent/lithium = 1, /singleton/reagent/hydrazine = 1) result_amount = 1 /datum/chemical_reaction/glycerol name = "Glycerol" id = "glycerol" result = /singleton/reagent/glycerol required_reagents = list(/singleton/reagent/nutriment/triglyceride = 1, /singleton/reagent/alcohol/ethanol = 2) // transesterification of triglycerides into butanol and glycerol catalysts = list(/singleton/reagent/acid = 5) // using acid as a catalyst result_amount = 3 //each triglyceride has 3 glycerin chains. /datum/chemical_reaction/glycerol/butanol name = "Glycerol" id = "glycerol-butane" result = /singleton/reagent/glycerol required_reagents = list(/singleton/reagent/nutriment/triglyceride = 1, /singleton/reagent/alcohol/butanol = 2) /datum/chemical_reaction/glycerol/on_reaction(var/datum/reagents/holder, var/created_volume) holder.add_reagent(/singleton/reagent/acetone, 2 * created_volume / 3) // closest we can get to biofuel, sorry /datum/chemical_reaction/glucose name = "Glucose" id = "glucose" result = /singleton/reagent/nutriment/glucose required_reagents = list(/singleton/reagent/nutriment = 5) // thank you, Gottlieb Kirchhoff catalysts = list(/singleton/reagent/acid = 5 )//starch into sugar with sulfuric acid catalyst /datum/chemical_reaction/sodiumchloride name = "Sodium Chloride" id = "sodiumchloride" result = /singleton/reagent/sodiumchloride required_reagents = list(/singleton/reagent/sodium = 1, /singleton/reagent/acid/hydrochloric = 1) result_amount = 2 /datum/chemical_reaction/condensedcapsaicin name = "Condensed Capsaicin" id = "condensedcapsaicin" result = /singleton/reagent/capsaicin/condensed required_reagents = list(/singleton/reagent/capsaicin = 2) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 1 /datum/chemical_reaction/coolant name = "Coolant" id = "coolant" result = /singleton/reagent/coolant required_reagents = list(/singleton/reagent/tungsten = 1, /singleton/reagent/acetone = 1, /singleton/reagent/water = 1) result_amount = 3 log_is_important = 1 /datum/chemical_reaction/rezadone name = "Rezadone" id = "rezadone" result = /singleton/reagent/rezadone required_reagents = list(/singleton/reagent/toxin/carpotoxin = 1, /singleton/reagent/drugs/cryptobiolin = 1, /singleton/reagent/copper = 1) result_amount = 3 /datum/chemical_reaction/lexorin name = "Lexorin" id = "lexorin" result = /singleton/reagent/lexorin required_reagents = list(/singleton/reagent/tungsten = 1, /singleton/reagent/hydrazine = 1, /singleton/reagent/ammonia = 1) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 3 /datum/chemical_reaction/fluvectionem name = "Fluvectionem" id = "fluvectionem" result = /singleton/reagent/fluvectionem required_reagents = list(/singleton/reagent/mercury = 1, /singleton/reagent/sodiumchloride = 1, /singleton/reagent/ammonia = 1) result_amount = 3 /datum/chemical_reaction/cardox name = "Cardox" id = "cardox" result = /singleton/reagent/toxin/cardox required_reagents = list(/singleton/reagent/platinum = 1, /singleton/reagent/carbon = 1, /singleton/reagent/sterilizine = 1) result_amount = 3 /datum/chemical_reaction/cardox_removal name = "Cardox Removal" id = "cardox_removal" result = /singleton/reagent/carbon required_reagents = list(/singleton/reagent/toxin/cardox = 0.1, /singleton/reagent/toxin/phoron = 1) result_amount = 0 /datum/chemical_reaction/monoammoniumphosphate name = "Monoammoniumphosphate" id = "monoammoniumphosphate" result = /singleton/reagent/toxin/fertilizer/monoammoniumphosphate required_reagents = list(/singleton/reagent/ammonia = 1, /singleton/reagent/acid = 1, /singleton/reagent/sodium = 1, /singleton/reagent/phosphorus = 1) result_amount = 4 /datum/chemical_reaction/koispasteclean name = "Filtered K'ois" id = "koispasteclean" result = /singleton/reagent/kois/clean required_reagents = list(/singleton/reagent/kois = 2,/singleton/reagent/toxin/cardox = 0.1) catalysts = list(/singleton/reagent/toxin/cardox = 5) result_amount = 1 /datum/chemical_reaction/pulmodeiectionem name = "Pulmodeiectionem" id = "pulmodeiectionem" result = /singleton/reagent/pulmodeiectionem required_reagents = list(/singleton/reagent/fluvectionem = 1, /singleton/reagent/lexorin = 1) result_amount = 2 /datum/chemical_reaction/pneumalin name = "Pneumalin" id = "pneumalin" result = /singleton/reagent/pneumalin required_reagents = list(/singleton/reagent/antidexafen = 1, /singleton/reagent/copper = 1, /singleton/reagent/pulmodeiectionem = 1) result_amount = 2 /datum/chemical_reaction/saline name = "Saline Plus" id = "saline" result = /singleton/reagent/saline required_reagents = list(/singleton/reagent/water = 2, /singleton/reagent/sugar = 0.5, /singleton/reagent/sodiumchloride = 1) catalysts = list(/singleton/reagent/toxin/phoron = 5) result_amount = 2 /datum/chemical_reaction/cataleptinol name = "Cataleptinol" id = "cataleptinol" result = /singleton/reagent/cataleptinol required_reagents = list(/singleton/reagent/toxin/phoron = 0.5, /singleton/reagent/alkysine = 2, /singleton/reagent/clonexadone = 1) catalysts = list(/singleton/reagent/cryosilicate = 5) result_amount = 1 /datum/chemical_reaction/coughsyrup name = "Cough Syrup" id = "coughsyrup" result = /singleton/reagent/antidexafen required_reagents = list(/singleton/reagent/carbon = 1, /singleton/reagent/tungsten = 1, /singleton/reagent/water = 1) result_amount = 3 /datum/chemical_reaction/inacusiate name = "Inacusiate" id = "inacusiate" result = /singleton/reagent/inacusiate required_reagents = list(/singleton/reagent/dylovene = 1, /singleton/reagent/carbon = 1, /singleton/reagent/sulfur = 1) result_amount = 2 /datum/chemical_reaction/tramarine name = "Tramarine" id = "tramarine" result = /singleton/reagent/tramarine required_reagents = list(/singleton/reagent/toxin/potassium_chloride = 1, /singleton/reagent/polysomnine = 1) catalysts = list(/singleton/reagent/sodium = 5) result_amount = 1 //Mental Medication /datum/chemical_reaction/corophenidate name = "Corophenidate" id = "corophenidate" result = /singleton/reagent/mental/corophenidate required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/hydrazine = 1) result_amount = 2 /datum/chemical_reaction/minaphobin name = "Minaphobin" id = "minaphobin" result = /singleton/reagent/mental/minaphobin required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/carbon = 1) result_amount = 2 /datum/chemical_reaction/adrenaline name = "Adrenaline" result = /singleton/reagent/adrenaline required_reagents = list(/singleton/reagent/inaprovaline = 1, /singleton/reagent/hyperzine = 1, /singleton/reagent/dexalin/plus = 1) result_amount = 3 /datum/chemical_reaction/neurostabin name = "Neurostabin" id = "neurostabin" result = /singleton/reagent/mental/neurostabin required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/iron = 1, /singleton/reagent/potassium = 1) result_amount = 3 /datum/chemical_reaction/parvosil name = "Parvosil" id = "parvosil" result = /singleton/reagent/mental/parvosil required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/aluminum = 1, /singleton/reagent/potassium = 1) result_amount = 3 /datum/chemical_reaction/emoxanyl name = "Emoxanyl" id = "emoxanyl" result = /singleton/reagent/mental/emoxanyl required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/silicon = 1, /singleton/reagent/alcohol/ethanol = 1) result_amount = 3 /datum/chemical_reaction/orastabin name = "Orastabin" id = "orastabin" result = /singleton/reagent/mental/orastabin required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/sodium = 1, /singleton/reagent/tungsten = 1) result_amount = 3 /datum/chemical_reaction/neurapan name = "Neurapan" id = "neurapan" result = /singleton/reagent/mental/neurapan required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/drugs/mms = 1, /singleton/reagent/alcohol/ethanol = 1) result_amount = 3 /datum/chemical_reaction/nerospectan name = "Nerospectan" id = "nerospectan" result = /singleton/reagent/mental/nerospectan required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/drugs/mms = 1, /singleton/reagent/silicon = 1) result_amount = 3 /datum/chemical_reaction/truthserum name = "Truthserum" id = "truthserum" result = /singleton/reagent/mental/truthserum required_reagents = list(/singleton/reagent/drugs/mindbreaker = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/toxin/phoron = 0.1) result_amount = 2 /datum/chemical_reaction/pacifier name = "Paxazide" id = "paxazide" result = /singleton/reagent/pacifier required_reagents = list(/singleton/reagent/mental/truthserum = 1, /singleton/reagent/mental/parvosil = 1) result_amount = 1 /datum/chemical_reaction/berserk name = "Red Nightshade" id = "berserk" result = /singleton/reagent/toxin/berserk required_reagents = list(/singleton/reagent/toxin/stimm = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/toxin/phoron = 0.1) result_amount = 1 /datum/chemical_reaction/joy name = "Joy" id = "joy" result = /singleton/reagent/drugs/joy required_reagents = list(/singleton/reagent/mental/neurapan = 1, /singleton/reagent/drugs/heroin = 2) result_amount = 1 /datum/chemical_reaction/xuxigas name = "Xu'Xi Gas" id = "xuxigas" result = /singleton/reagent/drugs/xuxigas required_reagents = list(/singleton/reagent/dexalin = 2, /singleton/reagent/drugs/mms = 2, /singleton/reagent/mental/truthserum = 1) required_temperature_min = T0C + 134 result_amount = 5 /datum/chemical_reaction/skrell_nootropic name = "Co'qnixq Wuxi" id = "skrell_nootropic" result = /singleton/reagent/drugs/skrell_nootropic required_reagents = list(/singleton/reagent/wulumunusha = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/mental/emoxanyl = 1) result_amount = 3 /* Makeshift Chemicals and Drugs */ /datum/chemical_reaction/stimm name = "Stimm" id = "stimm" result = /singleton/reagent/toxin/stimm required_reagents = list(/singleton/reagent/fuel = 1, /singleton/reagent/drink/rewriter = 5) result_amount = 6 /datum/chemical_reaction/krokjuice name = "Krok Juice" id = "krok" result = /singleton/reagent/toxin/krok required_reagents = list(/singleton/reagent/drink/orangejuice = 2, /singleton/reagent/fuel = 1, /singleton/reagent/iron = 1) result_amount = 4 /datum/chemical_reaction/raskara_dust name = "Raskara Dust" id = "raskara_dust" result = /singleton/reagent/drugs/raskara_dust required_reagents = list(/singleton/reagent/toxin/fertilizer/monoammoniumphosphate = 1, /singleton/reagent/spacecleaner = 1, /singleton/reagent/sodiumchloride = 2) // extinguisher, cleaner, salt required_temperature_min = T0C + 127 // barely over boiling point of water, 400C result_amount = 2 /datum/chemical_reaction/nightjuice name = "Nightlife" id = "night_juice" result = /singleton/reagent/drugs/night_juice required_reagents = list(/singleton/reagent/mental/corophenidate = 1, /singleton/reagent/synaptizine = 1, /singleton/reagent/nitroglycerin = 1) required_temperature_min = T0C + 200 result_amount = 3 /datum/chemical_reaction/dionae_stimulant name = "Diesel" id = "dionae_stimulant" result = /singleton/reagent/drugs/dionae_stimulant required_reagents = list(/singleton/reagent/uranium = 2, /singleton/reagent/toxin/fertilizer/robustharvest = 2, /singleton/reagent/nutriment/caramel = 3, /singleton/reagent/fuel = 1) required_temperature_min = T0C + 621 //Mix reactants with 10u salt, then pour 30u of solution in one go into 30u of pyrosilicate. Pyrosilicate will be consumed; salt must be separated. result_amount = 3 /datum/chemical_reaction/colorspace name = "Colorspace" id = "colorspace" result = /singleton/reagent/drugs/colorspace required_reagents = list(/singleton/reagent/hydrazine = 1, /singleton/reagent/alcohol/ethanol = 1, /singleton/reagent/silicon = 1) result_amount = 1 /* Solidification */ /datum/chemical_reaction/phoronsolidification name = "Solid Phoron" id = "solidphoron" result = null required_reagents = list(/singleton/reagent/iron = 5, /singleton/reagent/frostoil = 5, /singleton/reagent/toxin/phoron = 20) result_amount = 1 /datum/chemical_reaction/phoronsolidification/on_reaction(var/datum/reagents/holder, var/created_volume) new /obj/item/stack/material/phoron(get_turf(holder.my_atom), created_volume) return /datum/chemical_reaction/plastication name = "Plastic" id = "solidplastic" result = null required_reagents = list(/singleton/reagent/acid/polyacid = 1, /singleton/reagent/toxin/plasticide = 2) result_amount = 1 /datum/chemical_reaction/plastication/on_reaction(var/datum/reagents/holder, var/created_volume) new /obj/item/stack/material/plastic(get_turf(holder.my_atom), created_volume) return /datum/chemical_reaction/uraniumsolidification name = "Uranium" id = "soliduranium" result = null required_reagents = list(/singleton/reagent/potassium = 5, /singleton/reagent/frostoil = 5, /singleton/reagent/uranium = 20) result_amount = 1 /datum/chemical_reaction/uraniumsolidification/on_reaction(var/datum/reagents/holder, var/created_volume) new /obj/item/stack/material/uranium(get_turf(holder.my_atom), created_volume) return /* Grenade reactions */ /datum/chemical_reaction/explosion_potassium name = "Explosion" id = "explosion_potassium" result = null required_reagents = list(/singleton/reagent/water = 1, /singleton/reagent/potassium = 1) result_amount = 2 mix_message = null /datum/chemical_reaction/explosion_potassium/on_reaction(var/datum/reagents/holder, var/created_volume) var/datum/effect/effect/system/reagents_explosion/e = new() var/turf/location = get_turf(holder.my_atom) e.set_up(round (created_volume/10, 1), location, 0, 0) if(isliving(holder.my_atom)) e.amount *= 0.5 var/mob/living/L = holder.my_atom if(L.stat != DEAD) e.amount *= 0.5 e.start() holder.clear_reagents() return /datum/chemical_reaction/flash_powder name = "Flash powder" id = "flash_powder" result = null required_reagents = list(/singleton/reagent/aluminum = 1, /singleton/reagent/potassium = 1, /singleton/reagent/sulfur = 1 ) result_amount = null /datum/chemical_reaction/flash_powder/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) spark(location, 2, GLOB.alldirs) for(var/mob/living/M in viewers(world.view, location)) if(!M.flash_act()) continue switch(get_dist(M, location)) if(0 to 3) M.Weaken(15) if(4 to 5) M.Stun(5) /datum/chemical_reaction/emp_pulse name = "EMP Pulse" id = "emp_pulse" result = null required_reagents = list(/singleton/reagent/uranium = 1, /singleton/reagent/iron = 1) // Yes, laugh, it's the best recipe I could think of that makes a little bit of sense result_amount = 2 /datum/chemical_reaction/emp_pulse/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) // 100 created volume = ~1 heavy range & ~2 light range. // 200 created volume = ~2 heavy range & ~4 light range. empulse(location, round(created_volume / 6), round(created_volume / 3), 1) holder.clear_reagents() return /datum/chemical_reaction/nitroglycerin name = "Nitroglycerin" id = "nitroglycerin" result = /singleton/reagent/nitroglycerin required_reagents = list(/singleton/reagent/glycerol = 1, /singleton/reagent/acid/polyacid = 1, /singleton/reagent/acid = 1) result_amount = 2 /datum/chemical_reaction/napalm name = "Napalm" id = "napalm" result = null required_reagents = list(/singleton/reagent/aluminum = 1, /singleton/reagent/fuel = 1, /singleton/reagent/acid = 1 ) result_amount = 1 log_is_important = TRUE /datum/chemical_reaction/zoragel name = "Inert Gel" id = "zoragel" result = /singleton/reagent/fuel/zoragel required_reagents = list(/singleton/reagent/acid = 1, /singleton/reagent/aluminum = 1, /singleton/reagent/sugar = 1, /singleton/reagent/surfactant = 3) result_amount = 1 /datum/chemical_reaction/zorafire name = "Zo'rane Fire" id = "greekfire" result = /singleton/reagent/fuel/zorane_fire required_reagents = list(/singleton/reagent/nitroglycerin = 2, /singleton/reagent/pyrosilicate = 2, /singleton/reagent/toxin/phoron = 3, /singleton/reagent/fuel/zoragel = 3) result_amount = 1 log_is_important = TRUE /datum/chemical_reaction/chemsmoke name = "Chemsmoke" id = "chemsmoke" result = null required_reagents = list(/singleton/reagent/potassium = 1, /singleton/reagent/sugar = 1, /singleton/reagent/phosphorus = 1) result_amount = 0.4 /datum/chemical_reaction/chemsmoke/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) var/datum/effect/effect/system/smoke_spread/chem/S = new /datum/effect/effect/system/smoke_spread/chem S.attach(location) S.set_up(holder, created_volume, 0, location, 80) playsound(location, 'sound/effects/smoke.ogg', 50, 1, -3) S.start() holder.clear_reagents() return /datum/chemical_reaction/foam name = "Foam" id = "foam" result = null required_reagents = list(/singleton/reagent/surfactant = 1, /singleton/reagent/water = 1) result_amount = 2 mix_message = "The solution violently bubbles!" /datum/chemical_reaction/foam/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/mob/M in viewers(5, location)) to_chat(M, SPAN_WARNING("The solution spews out foam!")) var/datum/effect/effect/system/foam_spread/s = new() s.set_up(created_volume, location, holder, 0) s.start() holder.clear_reagents() return /datum/chemical_reaction/metalfoam name = "Metal Foam" id = "metalfoam" result = null required_reagents = list(/singleton/reagent/aluminum = 3, /singleton/reagent/foaming_agent = 1, /singleton/reagent/acid/polyacid = 1) result_amount = 5 /datum/chemical_reaction/metalfoam/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/mob/M in viewers(5, location)) to_chat(M, SPAN_WARNING("The solution spews out a metalic foam!")) var/datum/effect/effect/system/foam_spread/s = new() s.set_up(created_volume, location, holder, 1) s.start() return /datum/chemical_reaction/ironfoam name = "Iron Foam" id = "ironlfoam" result = null required_reagents = list(/singleton/reagent/iron = 3, /singleton/reagent/foaming_agent = 1, /singleton/reagent/acid/polyacid = 1) result_amount = 5 /datum/chemical_reaction/ironfoam/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/mob/M in viewers(5, location)) to_chat(M, SPAN_WARNING("The solution spews out a metalic foam!")) var/datum/effect/effect/system/foam_spread/s = new() s.set_up(created_volume, location, holder, 2) s.start() return /datum/chemical_reaction/luminol name = "Luminol" id = "luminol" result = /singleton/reagent/luminol required_reagents = list(/singleton/reagent/hydrazine = 2, /singleton/reagent/carbon = 2, /singleton/reagent/ammonia = 2) result_amount = 6 /* Paint */ /datum/chemical_reaction/paint name = "Paint" id = "paint" result = /singleton/reagent/paint required_reagents = list(/singleton/reagent/toxin/plasticide = 1, /singleton/reagent/water = 3) result_amount = 4 /* Slime cores */ /datum/chemical_reaction/slime var/required = null /datum/chemical_reaction/slime/can_happen(var/datum/reagents/holder) if(holder.my_atom && istype(holder.my_atom, required)) var/obj/item/slime_extract/T = holder.my_atom if(T.uses > 0) return ..() return FALSE /datum/chemical_reaction/slime/on_reaction(var/datum/reagents/holder) var/obj/item/slime_extract/T = holder.my_atom T.uses-- if(T.uses <= 0) T.visible_message("[icon2html(T, viewers(get_turf(src)))]\The [T]'s power is consumed in the reaction.") T.name = "used slime extract" T.desc = "This extract has been used up." if(istype(T.loc, /obj/item/storage)) var/obj/item/storage/storage = T.loc storage.update_storage_ui() //Grey /datum/chemical_reaction/slime/spawn name = "Slime Spawn" id = "m_spawn" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/grey /datum/chemical_reaction/slime/spawn/on_reaction(var/datum/reagents/holder) holder.my_atom.visible_message(SPAN_WARNING("Infused with phoron, the core begins to quiver and grow, and soon a new baby slime emerges from it!")) new /mob/living/carbon/slime(get_turf(holder.my_atom)) ..() /datum/chemical_reaction/slime/monkey name = "Slime Monkey" id = "m_monkey" result = null required_reagents = list(/singleton/reagent/blood = 1) result_amount = 1 required = /obj/item/slime_extract/grey /datum/chemical_reaction/slime/monkey/on_reaction(var/datum/reagents/holder) new /obj/effect/portal/spawner/monkey_cube(get_turf(holder.my_atom)) ..() //Green /datum/chemical_reaction/slime/teleportation name = "Slime Teleportation" id = "slimeteleportation" required_reagents = list(/singleton/reagent/toxin/phoron = 5) result_amount = 1 required = /obj/item/slime_extract/green /datum/chemical_reaction/slime/teleportation/on_reaction(var/datum/reagents/holder) ..() addtimer(CALLBACK(src, PROC_REF(do_reaction), holder), 50) /datum/chemical_reaction/slime/teleportation/proc/do_reaction(var/datum/reagents/holder) for(var/atom/movable/AM in circle_range(get_turf(holder.my_atom),7)) if(AM.anchored) continue var/area/A = random_station_area() var/turf/target = A.random_space() to_chat(AM, SPAN_WARNING("Bluespace energy teleports you somewhere else!")) do_teleport(AM, target) AM.visible_message("\The [AM] phases in!") /datum/chemical_reaction/slime/bluespace_crystal name = "Slime Bluespace Crystal" id = "slime_bscrystal" required_reagents = list(/singleton/reagent/carbon = 10, /singleton/reagent/silver = 10) result_amount = 1 required = /obj/item/slime_extract/green /datum/chemical_reaction/slime/bluespace_crystal/on_reaction(var/datum/reagents/holder) var/turf/location = get_turf(holder.my_atom) playsound(location, 'sound/effects/phasein.ogg', 100, 1) for(var/mob/living/M in viewers(world.view, location)) M.flash_act() new /obj/item/bluespace_crystal(get_turf(holder.my_atom)) ..() //Metal /datum/chemical_reaction/slime/metal name = "Slime Metal" id = "m_metal" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/metal /datum/chemical_reaction/slime/metal/on_reaction(var/datum/reagents/holder) new /obj/effect/portal/spawner/metal(get_turf(holder.my_atom)) ..() //Gold - added back in /datum/chemical_reaction/slime/crit name = "Slime Crit" id = "m_tele" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 10) result_amount = 1 required = /obj/item/slime_extract/gold /datum/chemical_reaction/slime/crit/on_reaction(var/datum/reagents/holder) //exclusion list for things you don't want the reaction to create var/blocked = list( /mob/living/simple_animal/hostile, /mob/living/simple_animal/hostile/pirate, /mob/living/simple_animal/hostile/pirate/ranged, /mob/living/simple_animal/hostile/russian, /mob/living/simple_animal/hostile/russian/ranged, /mob/living/simple_animal/hostile/syndicate, /mob/living/simple_animal/hostile/syndicate/melee, /mob/living/simple_animal/hostile/syndicate/melee/space, /mob/living/simple_animal/hostile/syndicate/ranged, /mob/living/simple_animal/hostile/syndicate/ranged/space, /mob/living/simple_animal/hostile/faithless, /mob/living/simple_animal/hostile/retaliate/clown, /mob/living/simple_animal/hostile/true_changeling, /mob/living/simple_animal/hostile/commanded/dog, /mob/living/simple_animal/hostile/commanded/dog/amaskan, /mob/living/simple_animal/hostile/commanded/dog/columbo, /mob/living/simple_animal/hostile/commanded/dog/pug, /mob/living/simple_animal/hostile/commanded/bear, /mob/living/simple_animal/hostile/commanded/baby_harvester, /mob/living/simple_animal/hostile/greatworm, /mob/living/simple_animal/hostile/lesserworm, /mob/living/simple_animal/hostile/greatwormking, /mob/living/simple_animal/hostile/krampus, /mob/living/simple_animal/hostile/gift, /mob/living/simple_animal/hostile/hivebotbeacon, /mob/living/simple_animal/hostile/hivebotbeacon/incendiary, /mob/living/simple_animal/hostile/hivebotbeacon/weakened, /mob/living/simple_animal/hostile/republicon, /mob/living/simple_animal/hostile/republicon/ranged, /mob/living/simple_animal/hostile/giant_spider/nurse/spider_queen, /mob/living/simple_animal/hostile/tree, /mob/living/simple_animal/hostile/mimic, /mob/living/simple_animal/hostile/cavern_geist, /mob/living/simple_animal/hostile/cavern_geist/augmented, /mob/living/simple_animal/hostile/retaliate/pra_exploration_drone ) var/list/critters = typesof(/mob/living/simple_animal/hostile) - blocked // list of possible hostile mobs var/turf/location = get_turf(holder.my_atom) playsound(location, 'sound/effects/phasein.ogg', 100, 1) for(var/mob/living/M in viewers(world.view, location)) M.flash_act(ignore_inherent = TRUE) for(var/i = 1, i <= 5, i++) var/chosen = pick(critters) //No abstract mobs while(is_abstract(chosen)) critters -= chosen if(!length(critters)) crash_with("No critters left to pick from!") return chosen = pick(critters) var/mob/living/simple_animal/hostile/C = new chosen C.faction = "slimesummon" C.forceMove(location) if(prob(50)) for(var/j = 1, j <= rand(1, 3), j++) step(C, pick(NORTH,SOUTH,EAST,WEST)) ..() //Silver /datum/chemical_reaction/slime/bork name = "Slime Bork" id = "m_tele2" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/silver /datum/chemical_reaction/slime/bork/on_reaction(var/datum/reagents/holder) var/list/blocked = list( /obj/item/reagent_containers/food/snacks, /obj/item/reagent_containers/food/snacks/meat/undead, /obj/item/reagent_containers/food/snacks/meatbreadslice, /obj/item/reagent_containers/food/snacks/xenomeatbreadslice, /obj/item/reagent_containers/food/snacks/bananabreadslice, /obj/item/reagent_containers/food/snacks/tofubreadslice, /obj/item/reagent_containers/food/snacks/cakeslice/carrot, /obj/item/reagent_containers/food/snacks/cakeslice/cheese, /obj/item/reagent_containers/food/snacks/cakeslice/plain, /obj/item/reagent_containers/food/snacks/cakeslice/orange, /obj/item/reagent_containers/food/snacks/cakeslice/lime, /obj/item/reagent_containers/food/snacks/cakeslice/lemon, /obj/item/reagent_containers/food/snacks/cakeslice/chocolate, /obj/item/reagent_containers/food/snacks/cheesewedge, /obj/item/reagent_containers/food/snacks/cakeslice/birthday, /obj/item/reagent_containers/food/snacks/sliceable/bread, /obj/item/reagent_containers/food/snacks/breadslice, /obj/item/reagent_containers/food/snacks/sliceable/creamcheesebread, /obj/item/reagent_containers/food/snacks/creamcheesebreadslice, /obj/item/reagent_containers/food/snacks/watermelonslice, /obj/item/reagent_containers/food/snacks/cakeslice/apple, /obj/item/reagent_containers/food/snacks/pumpkinpieslice, /obj/item/reagent_containers/food/snacks/keylimepieslice, /obj/item/reagent_containers/food/snacks/quicheslice, /obj/item/reagent_containers/food/snacks/browniesslice, /obj/item/reagent_containers/food/snacks/cosmicbrowniesslice, /obj/item/reagent_containers/food/snacks/margheritaslice, /obj/item/reagent_containers/food/snacks/meatpizzaslice, /obj/item/reagent_containers/food/snacks/mushroompizzaslice, /obj/item/reagent_containers/food/snacks/vegetablepizzaslice, /obj/item/reagent_containers/food/snacks/pineappleslice ) var/list/borks = typesof(/obj/item/reagent_containers/food/snacks) - blocked var/turf/location = get_turf(holder.my_atom) playsound(location, 'sound/effects/phasein.ogg', 100, 1) for(var/mob/living/M in viewers(world.view, location)) M.flash_act(ignore_inherent = TRUE) for(var/i = 1, i <= 4 + rand(1,2), i++) var/chosen = pick(borks) var/obj/B = new chosen if(B) B.forceMove(get_turf(holder.my_atom)) if(prob(50)) for(var/j = 1, j <= rand(1, 3), j++) step(B, pick(NORTH, SOUTH, EAST, WEST)) ..() //Blue /datum/chemical_reaction/slime/frost name = "Slime Frost Oil" id = "m_frostoil" result = /singleton/reagent/frostoil required_reagents = list(/singleton/reagent/water = 1) result_amount = 10 required = /obj/item/slime_extract/blue //Dark Blue /datum/chemical_reaction/slime/freeze name = "Slime Freeze" id = "m_freeze" result = null required_reagents = list(/singleton/reagent/water = 1) result_amount = 1 required = /obj/item/slime_extract/darkblue mix_message = "The slime extract begins to vibrate violently!" /datum/chemical_reaction/slime/freeze/on_reaction(var/datum/reagents/holder) ..() addtimer(CALLBACK(src, PROC_REF(do_reaction), holder), 50) /datum/chemical_reaction/slime/freeze/proc/do_reaction(var/datum/reagents/holder) playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) for(var/mob/living/M in range(7, get_turf(holder.my_atom))) M.bodytemperature -= 140 to_chat(M, SPAN_WARNING("You feel a cold chill!")) //Orange /datum/chemical_reaction/slime/casp name = "Slime Capsaicin Oil" id = "m_capsaicinoil" result = /singleton/reagent/capsaicin required_reagents = list(/singleton/reagent/blood = 1) result_amount = 10 required = /obj/item/slime_extract/orange /datum/chemical_reaction/slime/fire name = "Slime fire" id = "m_fire" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/orange mix_message = "The slime extract begins to vibrate violently!" /datum/chemical_reaction/slime/fire/on_reaction(var/datum/reagents/holder) ..() addtimer(CALLBACK(src, PROC_REF(do_reaction), holder), 50) /datum/chemical_reaction/slime/fire/proc/do_reaction(var/datum/reagents/holder) var/turf/location = get_turf(holder.my_atom) for(var/turf/simulated/floor/target_tile in range(1, location)) target_tile.assume_gas(GAS_PHORON, 25, 1400) target_tile.hotspot_expose(700, 400) //Yellow /datum/chemical_reaction/slime/overload name = "Slime EMP" id = "m_emp" result = null required_reagents = list(/singleton/reagent/blood = 1) result_amount = 1 required = /obj/item/slime_extract/yellow mix_message = "The slime extract begins to vibrate violently!" /datum/chemical_reaction/slime/overload/on_reaction(var/datum/reagents/holder, var/created_volume) ..() addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(empulse), get_turf(holder.my_atom), 3, 7), 50) /datum/chemical_reaction/slime/cell name = "Slime Powercell" id = "m_cell" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/yellow mix_message = "A small sparking part of the extract core falls onto the floor." /datum/chemical_reaction/slime/cell/on_reaction(var/datum/reagents/holder, var/created_volume) new /obj/item/cell/slime(get_turf(holder.my_atom)) ..() /datum/chemical_reaction/slime/glow name = "Slime Glow" id = "m_glow" result = null required_reagents = list(/singleton/reagent/water = 1) result_amount = 1 required = /obj/item/slime_extract/yellow mix_message = "The contents of the slime core harden and begin to emit a warm, bright light." /datum/chemical_reaction/slime/glow/on_reaction(var/datum/reagents/holder, var/created_volume) ..() new /obj/item/flashlight/slime(get_turf(holder.my_atom)) //Purple /datum/chemical_reaction/slime/psteroid name = "Slime Steroid" id = "m_steroid" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/purple /datum/chemical_reaction/slime/psteroid/on_reaction(var/datum/reagents/holder, var/created_volume) ..() new /obj/item/slimesteroid(get_turf(holder.my_atom)) /datum/chemical_reaction/slime/jam name = "Slime Jam" id = "m_jam" result = /singleton/reagent/slimejelly required_reagents = list(/singleton/reagent/sugar = 1) result_amount = 10 required = /obj/item/slime_extract/purple //Dark Purple /datum/chemical_reaction/slime/rare_metal name = "Slime Rare Metal" id = "rm_metal" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/darkpurple /datum/chemical_reaction/slime/rare_metal/on_reaction(var/datum/reagents/holder) ..() new /obj/effect/portal/spawner/rare_metal(get_turf(holder.my_atom)) //Red /datum/chemical_reaction/slime/glycerol name = "Slime Glycerol" id = "m_glycerol" result = /singleton/reagent/glycerol required_reagents = list(/singleton/reagent/sugar = 1) result_amount = 8 required = /obj/item/slime_extract/red /datum/chemical_reaction/slime/bloodlust name = "Bloodlust" id = "m_bloodlust" result = null required_reagents = list(/singleton/reagent/blood = 1) result_amount = 1 required = /obj/item/slime_extract/red /datum/chemical_reaction/slime/bloodlust/on_reaction(var/datum/reagents/holder) ..() for(var/mob/living/carbon/slime/slime in viewers(get_turf(holder.my_atom), null)) slime.rabid = TRUE slime.visible_message(SPAN_WARNING("[icon2html(slime, viewers(get_turf(slime)))] \The [slime] is driven into a frenzy!")) /datum/chemical_reaction/slime/nightshade name = "Slime Nightshade" id = "slime_nightshade" result = /singleton/reagent/toxin/berserk required_reagents = list(/singleton/reagent/toxin/phoron = 10) result_amount = 1 required = /obj/item/slime_extract/red //Pink /datum/chemical_reaction/slime/docility_serum name = "Docility Serum" id = "docility_serum" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/pink /datum/chemical_reaction/slime/docility_serum/on_reaction(var/datum/reagents/holder) ..() new /obj/item/docility_serum(get_turf(holder.my_atom)) /datum/chemical_reaction/slime/paxazide name = "Slime Paxazide" id = "slime_paxazide" result = /singleton/reagent/pacifier required_reagents = list(/singleton/reagent/water = 1) result_amount = 5 required = /obj/item/slime_extract/pink //Black /datum/chemical_reaction/slime/mutate2 name = "Advanced Mutation Toxin" id = "mutationtoxin2" result = /singleton/reagent/aslimetoxin required_reagents = list(/singleton/reagent/toxin/phoron = 5) result_amount = 1 required = /obj/item/slime_extract/black //Oil /datum/chemical_reaction/slime/explosion name = "Slime Explosion" id = "m_explosion" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/oil mix_message = "The slime extract begins to vibrate violently!" /datum/chemical_reaction/slime/explosion/on_reaction(var/datum/reagents/holder) ..() addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(explosion), get_turf(holder.my_atom), 1, 3, 6), 50) /datum/chemical_reaction/slime/plasticglass name = "Slime Plastic & Glass" id = "slime_plasticglass" result = null required_reagents = list(/singleton/reagent/water = 1) result_amount = 1 required = /obj/item/slime_extract/oil /datum/chemical_reaction/slime/plasticglass/on_reaction(var/datum/reagents/holder) ..() new /obj/effect/portal/spawner/plasticglass(get_turf(holder.my_atom)) //Light Pink /datum/chemical_reaction/slime/advanced_docility_serum name = "Advanced Docility Serum" id = "advanced_docility_serum" result = null result_amount = 1 required = /obj/item/slime_extract/lightpink required_reagents = list(/singleton/reagent/toxin/phoron = 5) /datum/chemical_reaction/slime/advanced_docility_serum/on_reaction(var/datum/reagents/holder) ..() new /obj/item/advanced_docility_serum(get_turf(holder.my_atom)) //Adamantine /datum/chemical_reaction/slime/golem name = "Slime Golem" id = "m_golem" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 5) result_amount = 1 required = /obj/item/slime_extract/adamantine mix_message = "A soft fizzle is heard within the slime extract, and mystic runes suddenly appear on the floor beneath it!" /datum/chemical_reaction/slime/golem/on_reaction(var/datum/reagents/holder) ..() new /obj/effect/golemrune(get_turf(holder.my_atom)) //Sepia /datum/chemical_reaction/slime/wood name = "Slime Wood" id = "slime_wood" result = null required_reagents = list(/singleton/reagent/water = 1) result_amount = 1 required = /obj/item/slime_extract/sepia /datum/chemical_reaction/slime/wood/on_reaction(var/datum/reagents/holder) ..() new /obj/effect/portal/spawner/wood(get_turf(holder.my_atom)) /datum/chemical_reaction/slime/hide name = "Slime Hides" id = "slime_hide" result = null required_reagents = list(/singleton/reagent/blood = 1) result_amount = 1 required = /obj/item/slime_extract/sepia /datum/chemical_reaction/slime/hide/on_reaction(var/datum/reagents/holder) ..() new /obj/effect/portal/spawner/hide(get_turf(holder.my_atom)) //Pyrite /datum/chemical_reaction/slime/pyrite/cryo_to_clonex name = "Pyrite Transmutation: Cryoxadone to Clonexadone" id = "cryo_to_clonex" result = /singleton/reagent/clonexadone required_reagents = list(/singleton/reagent/cryoxadone = 5) result_amount = 5 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/inap_to_coag name = "Pyrite Transmutation: Inaprovaline to Coagzolug" id = "inap_to_coag" result = /singleton/reagent/coagzolug required_reagents = list(/singleton/reagent/inaprovaline = 5) result_amount = 10 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/kelo_to_derm name = "Pyrite Transmutation: Kelotane to Dermaline" id = "kelo_to_derm" result = /singleton/reagent/dermaline required_reagents = list(/singleton/reagent/kelotane = 5) result_amount = 10 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/bica_to_buta name = "Pyrite Transmutation: Bicaridine_to_Butazoline" id = "bica_to_buta" result = /singleton/reagent/butazoline required_reagents = list(/singleton/reagent/bicaridine = 5) result_amount = 10 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/dex_to_plus name = "Pyrite Transmutation: Dexalin to Dexalin Plus" id = "dex_to_plus" result = /singleton/reagent/dexalin/plus required_reagents = list(/singleton/reagent/dexalin = 5) result_amount = 10 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/merc_to_dextro name = "Pyrite Transmutation: Mercury to Dextrotoxin" id = "merc_to_dextro" result = /singleton/reagent/toxin/dextrotoxin required_reagents = list(/singleton/reagent/mercury = 5) result_amount = 1 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/ez_to_diethyl name = "Pyrite Transmutation: EZ Nutrient to Diethylamine" id = "ez_to_diethyl" result = /singleton/reagent/diethylamine required_reagents = list(/singleton/reagent/toxin/fertilizer/eznutrient = 5) result_amount = 10 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/radium_to_mutagen name = "Pyrite Transmutation: Radium to Mutagen" id = "radium_to_mutagen" result = /singleton/reagent/mutagen required_reagents = list(/singleton/reagent/radium = 5) result_amount = 10 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/slime/pyrite/sugar_to_hyperzine name = "Pyrite Transmutation: Sugar to Hyperzine" id = "sugar_to_hyper" result = /singleton/reagent/hyperzine required_reagents = list(/singleton/reagent/sugar = 5) result_amount = 10 required = /obj/item/slime_extract/pyrite /datum/chemical_reaction/soap_key name = "Soap Key" id = "skey" result = null required_reagents = list(/singleton/reagent/nutriment/triglyceride = 2, /singleton/reagent/water = 2, /singleton/reagent/spacecleaner = 3) var/strength = 3 /datum/chemical_reaction/soap_key/can_happen(var/datum/reagents/holder) if(holder.my_atom && istype(holder.my_atom, /obj/item/soap)) return ..() return 0 /datum/chemical_reaction/soap_key/on_reaction(var/datum/reagents/holder) var/obj/item/soap/S = holder.my_atom if(S.key_data) var/obj/item/key/soap/key = new(get_turf(holder.my_atom), S.key_data) key.uses = strength ..() //Cerulean /datum/chemical_reaction/slime/extract_enhancer name = "Extract Enhancer" id = "extract_enhancer" result = null required_reagents = list(/singleton/reagent/toxin/phoron = 1) result_amount = 1 required = /obj/item/slime_extract/cerulean /datum/chemical_reaction/slime/extract_enhancer/on_reaction(var/datum/reagents/holder, var/created_volume) ..() new /obj/item/extract_enhancer(get_turf(holder.my_atom)) /* ==================== Food ==================== */ /datum/chemical_reaction/tofu name = "Tofu" id = "tofu" result = null required_reagents = list(/singleton/reagent/drink/milk/soymilk = 10) catalysts = list(/singleton/reagent/enzyme = 5) inhibitors = list(/singleton/reagent/sodiumchloride = 1) // To prevent conflict with Soy Sauce recipe. result_amount = 1 /datum/chemical_reaction/tofu/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/tofu(location) return /datum/chemical_reaction/chocolate_bar name = "Chocolate Bar" id = "chocolate_bar" result = null required_reagents = list(/singleton/reagent/drink/milk/soymilk = 2, /singleton/reagent/nutriment/coco = 2, /singleton/reagent/sugar = 2) result_amount = 1 /datum/chemical_reaction/chocolate_bar/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/chocolatebar(location) return /datum/chemical_reaction/chocolate_bar2 name = "Chocolate Bar" id = "chocolate_bar" result = null required_reagents = list(/singleton/reagent/drink/milk = 2, /singleton/reagent/nutriment/coco = 2, /singleton/reagent/sugar = 2) result_amount = 1 /datum/chemical_reaction/chocolate_bar2/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/chocolatebar(location) return /datum/chemical_reaction/hot_coco name = "Hot Coco" id = "hot_coco" result = /singleton/reagent/drink/hot_coco required_reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/coco = 1) result_amount = 5 /datum/chemical_reaction/grapejuice name = "Grape Juice" result = /singleton/reagent/drink/grapejuice required_reagents = list(/singleton/reagent/water = 3, /singleton/reagent/nutriment/instantjuice/grape = 1) result_amount = 3 mix_message = "The solution settles into a purplish-red beverage." /datum/chemical_reaction/orangejuice name = "Orange Juice" result = /singleton/reagent/drink/orangejuice required_reagents = list(/singleton/reagent/water = 3, /singleton/reagent/nutriment/instantjuice/orange = 1) result_amount = 3 mix_message = "The solution settles into an orange beverage." /datum/chemical_reaction/watermelonjuice name = "Watermelon Juice" result = /singleton/reagent/drink/watermelonjuice required_reagents = list(/singleton/reagent/water = 3, /singleton/reagent/nutriment/instantjuice/watermelon = 1) result_amount = 3 mix_message = "The solution settles into a red beverage." /datum/chemical_reaction/applejuice name = "Apple Juice" result = /singleton/reagent/drink/applejuice required_reagents = list(/singleton/reagent/water = 3, /singleton/reagent/nutriment/instantjuice/apple = 1) result_amount = 3 mix_message = "The solution settles into a clear brown beverage." /datum/chemical_reaction/soysauce name = "Soy Sauce" id = "soysauce" result = /singleton/reagent/nutriment/soysauce required_reagents = list(/singleton/reagent/drink/milk/soymilk = 4, /singleton/reagent/sodiumchloride = 1) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 5 /datum/chemical_reaction/ketchup name = "Ketchup" id = "ketchup" result = /singleton/reagent/nutriment/ketchup required_reagents = list(/singleton/reagent/drink/tomatojuice = 2, /singleton/reagent/water = 1, /singleton/reagent/sugar = 1) result_amount = 4 /datum/chemical_reaction/barbecue name = "Barbecue Sauce" id = "barbecue" result = /singleton/reagent/nutriment/barbecue required_reagents = list(/singleton/reagent/nutriment/ketchup = 2, /singleton/reagent/nutriment/garlicsauce = 1, /singleton/reagent/sugar = 1) result_amount = 4 /datum/chemical_reaction/garlicsauce name = "Garlic Sauce" id = "garlicsauce" result = /singleton/reagent/nutriment/garlicsauce required_reagents = list(/singleton/reagent/drink/garlicjuice = 1, /singleton/reagent/nutriment/triglyceride/oil/corn = 1) result_amount = 2 /datum/chemical_reaction/sweet_chili name = "Sweet Chili Sauce" id = "sweet_chili" result = /singleton/reagent/nutriment/sweet_chili required_reagents = list(/singleton/reagent/sugar = 1, /singleton/reagent/capsaicin = 1) result_amount = 2 /datum/chemical_reaction/peanutbutter // Yes, this doesn't make sense. No, I don't know how to do this better name = "Peanut Butter" id = "peanutbutter" result = /singleton/reagent/nutriment/peanutbutter required_reagents = list(/singleton/reagent/nutriment/groundpeanuts = 5, /singleton/reagent/sugar = 1, /singleton/reagent/sodiumchloride = 1) result_amount = 5 /datum/chemical_reaction/choconutspread //Nutella? I hardly know 'er! Seriously though if hazelnuts or ground agghrash are ever added to the game please update this. peanuts are a placeholder. name = "Choco-Nut Spread" id = "choconutspread" result = /singleton/reagent/nutriment/choconutspread required_reagents = list(/singleton/reagent/nutriment/groundpeanuts = 1, /singleton/reagent/sugar = 2, /singleton/reagent/nutriment/coco = 1, /singleton/reagent/drink/milk/soymilk = 1) result_amount = 5 /datum/chemical_reaction/mayonnaise name = "Mayonnaise" id = "mayonnaise" result = /singleton/reagent/nutriment/mayonnaise required_reagents = list(/singleton/reagent/nutriment/protein/egg = 3, /singleton/reagent/drink/lemonjuice = 2, /singleton/reagent/nutriment/triglyceride/oil/corn = 10) result_amount = 15 /datum/chemical_reaction/cheesewheel name = "Cheesewheel" id = "cheesewheel" result = null required_reagents = list(/singleton/reagent/drink/milk = 40) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 1 /datum/chemical_reaction/cheesewheel/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/sliceable/cheesewheel(location) return /datum/chemical_reaction/adhomian_cheesewheel name = "Adhomian Cheese" id = "adhomian cheese" result = null required_reagents = list(/singleton/reagent/drink/milk/adhomai/fermented = 40) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 1 /datum/chemical_reaction/adhomian_cheesewheel/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/sliceable/adhomian_cheese(location) return /datum/chemical_reaction/nakarka name = "Nakarka Cheese" id = "nakarka" result = null required_reagents = list(/singleton/reagent/drink/milk/nemiik = 40) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 1 /datum/chemical_reaction/nakarka/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/sliceable/nakarka(location) return /datum/chemical_reaction/meatball name = "Meatball" id = "meatball" result = null required_reagents = list(/singleton/reagent/nutriment/protein = 3, /singleton/reagent/nutriment/flour = 5) result_amount = 3 /datum/chemical_reaction/meatball/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/rawmeatball(location) return /datum/chemical_reaction/dough name = "Dough" id = "dough" result = null required_reagents = list(/singleton/reagent/nutriment/protein/egg = 3, /singleton/reagent/nutriment/flour = 10) inhibitors = list(/singleton/reagent/water = 1, /singleton/reagent/alcohol/beer = 1, /singleton/reagent/sugar = 1) //To prevent it messing with batter and pie recipes result_amount = 1 /datum/chemical_reaction/dough/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/dough(location) return /datum/chemical_reaction/syntiflesh name = "Syntiflesh" id = "syntiflesh" result = null required_reagents = list(/singleton/reagent/blood = 5, /singleton/reagent/clonexadone = 1) result_amount = 1 /datum/chemical_reaction/syntiflesh/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/meat/syntiflesh(location) return /datum/chemical_reaction/hot_ramen name = "Hot Ramen" id = "hot_ramen" result = /singleton/reagent/drink/hot_ramen required_reagents = list(/singleton/reagent/water = 1, /singleton/reagent/drink/dry_ramen = 3) result_amount = 3 /datum/chemical_reaction/hell_ramen name = "Hell Ramen" id = "hell_ramen" result = /singleton/reagent/drink/hell_ramen required_reagents = list(/singleton/reagent/capsaicin = 1, /singleton/reagent/drink/hot_ramen = 6) result_amount = 6 /datum/chemical_reaction/coating/batter name = "Batter" id = "batter" result = /singleton/reagent/nutriment/coating/batter required_reagents = list(/singleton/reagent/nutriment/protein/egg = 3, /singleton/reagent/nutriment/flour = 10, /singleton/reagent/water = 5, /singleton/reagent/sodiumchloride = 2) result_amount = 20 /datum/chemical_reaction/coating/beerbatter name = "Beer Batter" id = "beerbatter" result = /singleton/reagent/nutriment/coating/beerbatter required_reagents = list(/singleton/reagent/nutriment/protein/egg = 3, /singleton/reagent/nutriment/flour = 10, /singleton/reagent/alcohol/beer = 5, /singleton/reagent/sodiumchloride = 2) result_amount = 20 /datum/chemical_reaction/browniemix name = "Brownie Mix" id = "browniemix" result = /singleton/reagent/browniemix required_reagents = list(/singleton/reagent/nutriment/flour = 5, /singleton/reagent/nutriment/coco = 5, /singleton/reagent/sugar = 5) result_amount = 15 /datum/chemical_reaction/butter name = "Butter" id = "butter" result = null required_reagents = list(/singleton/reagent/drink/milk/cream = 20, /singleton/reagent/sodiumchloride = 1) result_amount = 1 /datum/chemical_reaction/butter/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/reagent_containers/food/snacks/spreads/butter(location) return /datum/chemical_reaction/cream_cheese name = "Cream Cheese" id = "creamcheese" result = /singleton/reagent/nutriment/protein/cream_cheese required_reagents = list(/singleton/reagent/drink/milk = 5, /singleton/reagent/drink/milk/cream = 5) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /* Todo in future: Cornmeal batter for corndogs KFC style coating for chicken breadcrumbs */ /* Food: Coatings ======================== */ /* ==================== Alcohol ==================== */ /datum/chemical_reaction/drink name = "Goldschlager" id = "goldschlager" result = /singleton/reagent/alcohol/goldschlager required_reagents = list(/singleton/reagent/alcohol/vodka = 10, /singleton/reagent/gold = 1) mix_message = null reaction_sound = SFX_POUR result_amount = 10 /datum/chemical_reaction/drink/patron name = "Patron" id = "patron" result = /singleton/reagent/alcohol/patron required_reagents = list(/singleton/reagent/alcohol/tequila = 10, /singleton/reagent/silver = 1) result_amount = 10 /datum/chemical_reaction/drink/bilk name = "Bilk" id = "bilk" result = /singleton/reagent/alcohol/bilk required_reagents = list(/singleton/reagent/drink/milk = 1, /singleton/reagent/alcohol/beer = 1) result_amount = 2 /datum/chemical_reaction/drink/tea name = "Tea" id = "tea" result = /singleton/reagent/drink/tea required_reagents = list(/singleton/reagent/nutriment/teagrounds = 1, /singleton/reagent/water = 5) result_amount = 6 /datum/chemical_reaction/drink/sencha name = "Sencha" id = "sencha" result = /singleton/reagent/drink/tea/sencha required_reagents = list(/singleton/reagent/nutriment/teagrounds/sencha = 1, /singleton/reagent/water = 5) result_amount = 6 /datum/chemical_reaction/drink/tieguanyin name = "Tieguanyin" id = "tieguanyin" result = /singleton/reagent/drink/tea/tieguanyin required_reagents = list(/singleton/reagent/nutriment/teagrounds/tieguanyin = 1, /singleton/reagent/water = 5) result_amount = 6 /datum/chemical_reaction/drink/jaekseol name = "jaekseol" id = "jaekseol" result = /singleton/reagent/drink/tea/jaekseol required_reagents = list(/singleton/reagent/nutriment/teagrounds/jaekseol = 1, /singleton/reagent/water = 5) result_amount = 6 /datum/chemical_reaction/drink/cocatea name = "Mate de Coca" id = "cocatea" result = /singleton/reagent/drink/tea/cocatea required_reagents = list(/singleton/reagent/nutriment/cocagrounds = 1, /singleton/reagent/water = 5) result_amount = 5 /datum/chemical_reaction/drink/greentea name = "Green Tea" id = "greentea" result = /singleton/reagent/drink/tea/greentea required_reagents = list(/singleton/reagent/drink/tea = 5, /singleton/reagent/nutriment/mint = 2) result_amount = 5 /datum/chemical_reaction/drink/icetea name = "Iced Tea" id = "icetea" result = /singleton/reagent/drink/icetea required_reagents = list(/singleton/reagent/drink/ice = 1, /singleton/reagent/drink/tea = 2) result_amount = 3 /datum/chemical_reaction/drink/icecoffee name = "Iced Coffee" id = "icecoffee" result = /singleton/reagent/drink/coffee/icecoffee required_reagents = list(/singleton/reagent/drink/ice = 1, /singleton/reagent/drink/coffee = 2) result_amount = 3 /datum/chemical_reaction/drink/nuka_cola name = "Nuka Cola" id = "nuka_cola" result = /singleton/reagent/drink/nuka_cola required_reagents = list(/singleton/reagent/uranium = 1, /singleton/reagent/drink/space_cola = 5) result_amount = 5 /datum/chemical_reaction/drink/coca_cola name = "Coca Cola" id = "coca_cola" result = /singleton/reagent/drink/coca_cola required_reagents = list(/singleton/reagent/nutriment/cocagrounds = 1, /singleton/reagent/drink/space_cola = 5) result_amount = 5 /datum/chemical_reaction/moonshine name = "Moonshine" id = "moonshine" result = /singleton/reagent/alcohol/moonshine required_reagents = list(/singleton/reagent/nutriment = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/butanol name = "Butanol" id = "butanol" result = /singleton/reagent/alcohol/butanol required_reagents = list(/singleton/reagent/nutriment/triglyceride/oil/corn = 10, /singleton/reagent/sugar = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 5 /datum/chemical_reaction/grenadine name = "Grenadine Syrup" id = "grenadine" result = /singleton/reagent/drink/grenadine required_reagents = list(/singleton/reagent/drink/berryjuice = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/wine name = "Wine" id = "wine" result = /singleton/reagent/alcohol/wine required_reagents = list(/singleton/reagent/drink/grapejuice = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/whitewine name = "White Wine" id = "whitewine" result = /singleton/reagent/alcohol/whitewine required_reagents = list(/singleton/reagent/drink/whitegrapejuice = 5) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 5 /datum/chemical_reaction/blushwine name = "Blush Wine" id = "blushwine" result = /singleton/reagent/alcohol/blushwine required_reagents = list(/singleton/reagent/alcohol/whitewine = 1, /singleton/reagent/alcohol/wine = 1) result_amount = 2 /datum/chemical_reaction/melonwine name = "Melon Wine" id = "melonwine" result = /singleton/reagent/alcohol/melonwine required_reagents = list(/singleton/reagent/alcohol/wine = 1, /singleton/reagent/alcohol/melonliquor = 1) result_amount = 2 /datum/chemical_reaction/pwine name = "Poison Wine" id = "pwine" result = /singleton/reagent/alcohol/pwine required_reagents = list(/singleton/reagent/toxin/poisonberryjuice = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/limoncello name = "Limoncello" id = "limoncello" result = /singleton/reagent/alcohol/limoncello required_reagents = list(/singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/condiment/syrup_simple = 1) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 2 /datum/chemical_reaction/bon_bon name = "Bon Bon" id = "bonbon" result = /singleton/reagent/alcohol/bon_bon required_reagents = list(/singleton/reagent/alcohol/limoncello = 1, /singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/condiment/syrup_vanilla = 1, /singleton/reagent/alcohol/vodka = 3) result_amount = 6 /datum/chemical_reaction/melonliquor name = "Melon Liquor" id = "melonliquor" result = /singleton/reagent/alcohol/melonliquor required_reagents = list(/singleton/reagent/drink/watermelonjuice = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/bluecuracao name = "Blue Curacao" id = "bluecuracao" result = /singleton/reagent/alcohol/bluecuracao required_reagents = list(/singleton/reagent/drink/orangejuice = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/spacebeer name = "Space Beer" id = "spacebeer" result = /singleton/reagent/alcohol/beer required_reagents = list(/singleton/reagent/nutriment/flour = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/snakebite name = "Snakebite" id = "snakebite" result = /singleton/reagent/alcohol/snakebite required_reagents = list(/singleton/reagent/alcohol/beer = 5, /singleton/reagent/alcohol/applejack = 5) result_amount = 10 /datum/chemical_reaction/light_beer name = "Light Beer" id = "spacebeer" result = /singleton/reagent/alcohol/beer required_reagents = list(/singleton/reagent/alcohol/beer = 5, /singleton/reagent/water = 5) result_amount = 10 /datum/chemical_reaction/rice_beer name = "Rice Beer" id = "rice_beer" result = /singleton/reagent/alcohol/rice_beer required_reagents = list(/singleton/reagent/nutriment/rice = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/vodka name = "Vodka" id = "vodka" result = /singleton/reagent/alcohol/vodka required_reagents = list(/singleton/reagent/drink/potatojuice = 10) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/sake name = "Sake" id = "sake" result = /singleton/reagent/alcohol/sake required_reagents = list(/singleton/reagent/alcohol/rice_beer = 5, /singleton/reagent/nutriment/moss = 5) // sake and shochu are characterized by the addition of koji, a cultivated mold that is used in the brewing process. catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 10 /datum/chemical_reaction/kahlua name = "Kahlua" id = "kahlua" result = /singleton/reagent/alcohol/coffee/kahlua required_reagents = list(/singleton/reagent/drink/coffee = 5, /singleton/reagent/sugar = 5) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 5 /datum/chemical_reaction/drink/gin_tonic name = "Gin and Tonic" id = "gintonic" result = /singleton/reagent/alcohol/gintonic required_reagents = list(/singleton/reagent/alcohol/gin = 2, /singleton/reagent/drink/tonic = 1) result_amount = 3 /datum/chemical_reaction/drink/rumandcola name = "Rum and Cola" id = "rumandcola" result = /singleton/reagent/alcohol/rumandcola required_reagents = list(/singleton/reagent/alcohol/rum = 2, /singleton/reagent/drink/space_cola = 1) result_amount = 3 /datum/chemical_reaction/drink/martini name = "Classic Martini" id = "martini" result = /singleton/reagent/alcohol/martini required_reagents = list(/singleton/reagent/alcohol/gin = 2, /singleton/reagent/alcohol/vermouth = 1) result_amount = 3 /datum/chemical_reaction/drink/vodkamartini name = "Vodka Martini" id = "vodkamartini" result = /singleton/reagent/alcohol/vodkamartini required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/alcohol/vermouth = 1) result_amount = 3 /datum/chemical_reaction/drink/white_russian name = "White Russian" id = "whiterussian" result = /singleton/reagent/alcohol/white_russian required_reagents = list(/singleton/reagent/alcohol/blackrussian = 2, /singleton/reagent/drink/milk/cream = 1) result_amount = 3 /datum/chemical_reaction/drink/whiskey_cola name = "Whiskey Cola" id = "whiskeycola" result = /singleton/reagent/alcohol/whiskeycola required_reagents = list(/singleton/reagent/alcohol/whiskey = 2, /singleton/reagent/drink/space_cola = 1) result_amount = 3 /datum/chemical_reaction/drink/screwdriver name = "Screwdriver" id = "screwdrivercocktail" result = /singleton/reagent/alcohol/screwdrivercocktail required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/drink/orangejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/sidewinderfang name = "Sidewinder Fang" id = "sidewinderfang" result = /singleton/reagent/alcohol/sidewinderfang required_reagents = list(/singleton/reagent/alcohol/rum = 2, /singleton/reagent/drink/sodawater = 2, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/limejuice = 1) /datum/chemical_reaction/drink/bloody_mary name = "Bloody Mary" id = "bloodymary" result = /singleton/reagent/alcohol/bloodymary required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/drink/tomatojuice = 3, /singleton/reagent/drink/limejuice = 1) result_amount = 6 /datum/chemical_reaction/drink/gargle_blaster name = "Pan-Galactic Gargle Blaster" id = "gargleblaster" result = /singleton/reagent/alcohol/gargleblaster required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/alcohol/cognac = 1, /singleton/reagent/drink/limejuice = 1) result_amount = 6 /datum/chemical_reaction/drink/brave_bull name = "Brave Bull" id = "bravebull" result = /singleton/reagent/alcohol/coffee/brave_bull required_reagents = list(/singleton/reagent/alcohol/tequila = 2, /singleton/reagent/alcohol/coffee/kahlua = 1) result_amount = 3 /datum/chemical_reaction/drink/tequila_sunrise name = "Tequila Sunrise" id = "tequilasunrise" result = /singleton/reagent/alcohol/tequila_sunrise required_reagents = list(/singleton/reagent/alcohol/tequila = 2, /singleton/reagent/drink/orangejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/phoron_special name = "Toxins Special" id = "phoronspecial" result = /singleton/reagent/alcohol/toxins_special required_reagents = list(/singleton/reagent/alcohol/rum = 2, /singleton/reagent/alcohol/vermouth = 2, /singleton/reagent/toxin/phoron = 2) result_amount = 6 /datum/chemical_reaction/drink/beepsky_smash name = "Beepsky Smash" id = "beepksysmash" result = /singleton/reagent/alcohol/beepsky_smash required_reagents = list(/singleton/reagent/drink/limejuice = 1, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/iron = 1) result_amount = 2 /datum/chemical_reaction/drink/doctor_delight name = "The Doctor's Delight" id = "doctordelight" result = /singleton/reagent/drink/doctorsdelight required_reagents = list(/singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/tomatojuice = 1, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/milk/cream = 2, /singleton/reagent/tricordrazine = 1) result_amount = 6 /datum/chemical_reaction/drink/irish_cream name = "Irish Cream" id = "irishcream" result = /singleton/reagent/alcohol/irishcream required_reagents = list(/singleton/reagent/alcohol/whiskey = 2, /singleton/reagent/drink/milk/cream = 1) result_amount = 3 /datum/chemical_reaction/drink/manly_dorf name = "The Manly Dorf" id = "manlydorf" result = /singleton/reagent/alcohol/manly_dorf required_reagents = list(/singleton/reagent/alcohol/beer = 1, /singleton/reagent/alcohol/ale = 2) result_amount = 3 /datum/chemical_reaction/drink/hooch name = "Hooch" id = "hooch" result = /singleton/reagent/alcohol/hooch required_reagents = list(/singleton/reagent/sugar = 1, /singleton/reagent/alcohol/moonshine = 1, /singleton/reagent/fuel = 1) result_amount = 3 /datum/chemical_reaction/drink/irish_coffee name = "Irish Coffee" id = "irishcoffee" result = /singleton/reagent/alcohol/coffee/irishcoffee required_reagents = list(/singleton/reagent/alcohol/irishcream = 1, /singleton/reagent/drink/coffee = 1) result_amount = 2 /datum/chemical_reaction/drink/b52 name = "B-52" id = "b52" result = /singleton/reagent/alcohol/coffee/b52 required_reagents = list(/singleton/reagent/alcohol/irishcream = 1, /singleton/reagent/alcohol/coffee/kahlua = 1, /singleton/reagent/alcohol/cognac = 1) result_amount = 3 /datum/chemical_reaction/drink/atomicbomb name = "Atomic Bomb" id = "atomicbomb" result = /singleton/reagent/alcohol/atomicbomb required_reagents = list(/singleton/reagent/alcohol/coffee/b52 = 10, /singleton/reagent/uranium = 1) result_amount = 10 /datum/chemical_reaction/drink/margarita name = "Margarita" id = "margarita" result = /singleton/reagent/alcohol/margarita required_reagents = list(/singleton/reagent/alcohol/tequila = 1, /singleton/reagent/alcohol/triplesec = 1, /singleton/reagent/drink/limejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/longislandicedtea name = "Long Island Iced Tea" id = "longislandicedtea" result = /singleton/reagent/alcohol/longislandicedtea required_reagents = list(/singleton/reagent/alcohol/vodka = 1, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/alcohol/tequila = 1, /singleton/reagent/alcohol/cubalibre = 3) result_amount = 6 /datum/chemical_reaction/drink/icedtea name = "Long Island Iced Tea" id = "longislandicedtea" result = /singleton/reagent/alcohol/longislandicedtea required_reagents = list(/singleton/reagent/alcohol/vodka = 1, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/alcohol/tequila = 1, /singleton/reagent/alcohol/cubalibre = 3) result_amount = 6 /datum/chemical_reaction/drink/threemileisland name = "Three Mile Island Iced Tea" id = "threemileisland" result = /singleton/reagent/alcohol/threemileisland required_reagents = list(/singleton/reagent/alcohol/longislandicedtea = 10, /singleton/reagent/uranium = 1) result_amount = 10 /datum/chemical_reaction/drink/whiskeysoda name = "Whiskey Soda" id = "whiskeysoda" result = /singleton/reagent/alcohol/whiskeysoda required_reagents = list(/singleton/reagent/alcohol/whiskey = 2, /singleton/reagent/drink/sodawater = 1) result_amount = 3 /datum/chemical_reaction/drink/black_russian name = "Black Russian" id = "blackrussian" result = /singleton/reagent/alcohol/blackrussian required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/alcohol/coffee/kahlua = 1) result_amount = 3 /datum/chemical_reaction/drink/manhattan name = "Manhattan" id = "manhattan" result = /singleton/reagent/alcohol/manhattan required_reagents = list(/singleton/reagent/alcohol/whiskey = 2, /singleton/reagent/alcohol/vermouth = 1) result_amount = 3 /datum/chemical_reaction/drink/manhattan_proj name = "Manhattan Project" id = "manhattan_proj" result = /singleton/reagent/alcohol/manhattan_proj required_reagents = list(/singleton/reagent/alcohol/manhattan = 10, /singleton/reagent/uranium = 1) result_amount = 10 /datum/chemical_reaction/drink/vodka_tonic name = "Vodka and Tonic" id = "vodkatonic" result = /singleton/reagent/alcohol/vodkatonic required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/drink/tonic = 1) result_amount = 3 /datum/chemical_reaction/drink/gin_fizz name = "Gin Fizz" id = "ginfizz" result = /singleton/reagent/alcohol/ginfizz required_reagents = list(/singleton/reagent/alcohol/gin = 1, /singleton/reagent/drink/sodawater = 1, /singleton/reagent/drink/limejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/bahama_mama name = "Bahama mama" id = "bahama_mama" result = /singleton/reagent/alcohol/bahama_mama required_reagents = list(/singleton/reagent/alcohol/rum = 2, /singleton/reagent/drink/orangejuice = 2, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/singulo name = "Singulo" id = "singulo" result = /singleton/reagent/alcohol/singulo required_reagents = list(/singleton/reagent/alcohol/vodka = 5, /singleton/reagent/radium = 1, /singleton/reagent/alcohol/wine = 5) result_amount = 10 /datum/chemical_reaction/drink/alliescocktail name = "Allies Cocktail" id = "alliescocktail" result = /singleton/reagent/alcohol/alliescocktail required_reagents = list(/singleton/reagent/alcohol/martini = 1, /singleton/reagent/alcohol/vodka = 1) result_amount = 2 /datum/chemical_reaction/drink/demonsblood name = "Demons Blood" id = "demonsblood" result = /singleton/reagent/alcohol/demonsblood required_reagents = list(/singleton/reagent/alcohol/rum = 3, /singleton/reagent/drink/spacemountainwind = 1, /singleton/reagent/blood = 1, /singleton/reagent/drink/dr_gibb = 1) result_amount = 6 /datum/chemical_reaction/drink/booger name = "Booger" id = "booger" result = /singleton/reagent/alcohol/booger required_reagents = list(/singleton/reagent/drink/milk/cream = 2, /singleton/reagent/drink/banana = 1, /singleton/reagent/alcohol/rum = 1, /singleton/reagent/drink/watermelonjuice = 1) result_amount = 5 /datum/chemical_reaction/drink/antifreeze name = "Anti-freeze" id = "antifreeze" result = /singleton/reagent/alcohol/antifreeze required_reagents = list(/singleton/reagent/alcohol/vodka = 1, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/drink/ice = 1) result_amount = 3 /datum/chemical_reaction/drink/barefoot name = "Barefoot" id = "barefoot" result = /singleton/reagent/alcohol/barefoot required_reagents = list(/singleton/reagent/drink/berryjuice = 1, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/alcohol/vermouth = 1) result_amount = 3 /datum/chemical_reaction/drink/grapesoda name = "Grape Soda" id = "grapesoda" result = /singleton/reagent/drink/grapesoda required_reagents = list(/singleton/reagent/drink/grapejuice = 2, /singleton/reagent/drink/space_cola = 1) result_amount = 3 /datum/chemical_reaction/drink/sbiten name = "Sbiten" id = "sbiten" result = /singleton/reagent/alcohol/sbiten required_reagents = list(/singleton/reagent/alcohol/mead = 10, /singleton/reagent/capsaicin = 1) result_amount = 10 /datum/chemical_reaction/drink/red_mead name = "Red Mead" id = "red_mead" result = /singleton/reagent/alcohol/red_mead required_reagents = list(/singleton/reagent/blood = 1, /singleton/reagent/alcohol/mead = 1) result_amount = 2 /datum/chemical_reaction/drink/mead name = "Mead" id = "mead" result = /singleton/reagent/alcohol/mead required_reagents = list(/singleton/reagent/sugar = 1, /singleton/reagent/water = 1) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 2 /datum/chemical_reaction/drink/iced_beer name = "Iced Beer" id = "frosted_beer" result = /singleton/reagent/alcohol/iced_beer required_reagents = list(/singleton/reagent/alcohol/beer = 10, /singleton/reagent/frostoil = 1) result_amount = 10 /datum/chemical_reaction/drink/iced_beer2 name = "Iced Beer" id = "iced_beer" result = /singleton/reagent/alcohol/iced_beer required_reagents = list(/singleton/reagent/alcohol/beer = 5, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/grog name = "Grog" id = "grog" result = /singleton/reagent/alcohol/grog required_reagents = list(/singleton/reagent/alcohol/rum = 1, /singleton/reagent/water = 1) result_amount = 2 /datum/chemical_reaction/drink/ration_coffee name = "Ration Coffee" id = "ration_coffee" result = /singleton/reagent/drink/coffee/ration required_reagents = list(/singleton/reagent/drink/coffee = 2, /singleton/reagent/water = 1) result_amount = 3 /datum/chemical_reaction/drink/soy_latte name = "Soy Latte" id = "soy_latte" result = /singleton/reagent/drink/coffee/soy_latte required_reagents = list(/singleton/reagent/drink/coffee/espresso = 1, /singleton/reagent/drink/milk/soymilk = 1) result_amount = 2 /datum/chemical_reaction/drink/steamed_milk name = "Steamed Milk" id = "steamed_milk" result = /singleton/reagent/drink/milk/steamed_milk required_temperature_min = T0C + 66 required_reagents = list(/singleton/reagent/drink/milk = 1) result_amount = 1 /datum/chemical_reaction/drink/milk/strawberry name = "Strawberry milk" id = "steamed_milk" result = /singleton/reagent/drink/milk/strawberry required_reagents = list(/singleton/reagent/drink/milk = 1, /singleton/reagent/drink/strawberryjuice = 1) result_amount = 2 /datum/chemical_reaction/drink/flat_white name = "Flat White" id = "flat_white" result = /singleton/reagent/drink/coffee/flat_white required_reagents = list(/singleton/reagent/drink/coffee/espresso = 1, /singleton/reagent/drink/milk = 1) result_amount = 2 /datum/chemical_reaction/drink/caffe_misto name = "Caffe Misto" id = "caffe_misto" result = /singleton/reagent/drink/coffee/caffe_misto required_reagents = list(/singleton/reagent/drink/coffee = 1, /singleton/reagent/drink/milk/steamed_milk = 1) result_amount = 2 /datum/chemical_reaction/drink/freddo_espresso name = "Freddo Espresso" id = "freddo_espresso" result = /singleton/reagent/drink/coffee/freddo_espresso required_reagents = list(/singleton/reagent/drink/coffee/espresso = 1, /singleton/reagent/drink/ice = 1) result_amount = 2 /datum/chemical_reaction/drink/caffe_americano name = "Caffe Americano" id = "caffe_americano" result = /singleton/reagent/drink/coffee/caffe_americano required_reagents = list(/singleton/reagent/drink/coffee/espresso = 1, /singleton/reagent/water = 1) result_amount = 2 /datum/chemical_reaction/drink/caffe_latte name = "Caffe Latte" id = "caffe_latte" result = /singleton/reagent/drink/coffee/latte required_reagents = list(/singleton/reagent/drink/coffee/flat_white = 1, /singleton/reagent/drink/milk/steamed_milk = 1) result_amount = 2 /datum/chemical_reaction/drink/cappuccino name = "Cappuccino" id = "cappuccino" result = /singleton/reagent/drink/coffee/cappuccino required_reagents = list(/singleton/reagent/drink/coffee/macchiato = 1, /singleton/reagent/drink/milk/steamed_milk = 1) result_amount = 2 /datum/chemical_reaction/drink/freddo_cappuccino name = "Freddo Cappuccino" id = "freddo_cappuccino" result = /singleton/reagent/drink/coffee/freddo_cappuccino required_reagents = list(/singleton/reagent/drink/coffee/cappuccino = 1, /singleton/reagent/drink/ice = 1) result_amount = 2 /datum/chemical_reaction/drink/macchiato name = "Macchiato" id = "macchiato" result = /singleton/reagent/drink/coffee/macchiato required_reagents = list(/singleton/reagent/drink/coffee/espresso = 1, /singleton/reagent/drink/milk/steamed_milk = 1) result_amount = 2 /datum/chemical_reaction/pumpkinspice name = "Pumpkin Spice" id = "pumpkinspce" result = /singleton/reagent/spacespice/pumpkinspice mix_message = "The spice brightens up." required_reagents = list(/singleton/reagent/spacespice = 4, /singleton/reagent/nutriment/pumpkinpulp = 1) result_amount = 5 /datum/chemical_reaction/drink/psfrappe name = "Pumpkin Spice Frappe" id = "psfrappe" result = /singleton/reagent/drink/coffee/icecoffee/psfrappe required_reagents = list(/singleton/reagent/drink/coffee/icecoffee = 4, /singleton/reagent/condiment/syrup_pumpkin = 1) result_amount = 5 /datum/chemical_reaction/drink/pslatte name = "Pumpkin Spice Latte" id = "pslatte" result = /singleton/reagent/drink/coffee/latte/pumpkinspice required_reagents = list(/singleton/reagent/drink/coffee/latte = 4, /singleton/reagent/condiment/syrup_pumpkin = 1) result_amount = 5 /datum/chemical_reaction/drink/caramel_latte name = "Caramel latte" id = "caramellatte" result = /singleton/reagent/drink/coffee/latte/caramel required_reagents = list(/singleton/reagent/drink/coffee/latte = 4, /singleton/reagent/condiment/syrup_caramel = 1) result_amount = 5 /datum/chemical_reaction/drink/mocha_latte name = "Mocha latte" id = "mochalatte" result = /singleton/reagent/drink/coffee/latte/mocha required_reagents = list(/singleton/reagent/drink/coffee/latte = 4, /singleton/reagent/condiment/syrup_chocolate = 1) result_amount = 5 /datum/chemical_reaction/drink/vanilla_latte name = "Vanilla latte" id = "vanillalatte" result = /singleton/reagent/drink/coffee/latte/vanilla required_reagents = list(/singleton/reagent/drink/coffee/latte = 4, /singleton/reagent/condiment/syrup_vanilla = 1) result_amount = 5 /datum/chemical_reaction/drink/acidspit name = "Acid Spit" id = "acidspit" result = /singleton/reagent/alcohol/acid_spit required_reagents = list(/singleton/reagent/acid = 1, /singleton/reagent/alcohol/wine = 5) result_amount = 6 /datum/chemical_reaction/drink/amasec name = "Amasec" id = "amasec" result = /singleton/reagent/alcohol/amasec required_reagents = list(/singleton/reagent/iron = 1, /singleton/reagent/alcohol/wine = 5, /singleton/reagent/alcohol/vodka = 5) result_amount = 10 /datum/chemical_reaction/drink/gibsonpunch name = "Gibson Punch" id = "gibsonpunch" result = /singleton/reagent/alcohol/gibsonpunch required_reagents = list(/singleton/reagent/alcohol/screwdrivercocktail = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/aloe name = "Aloe" id = "aloe" result = /singleton/reagent/alcohol/aloe required_reagents = list(/singleton/reagent/drink/milk/cream = 1, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/drink/watermelonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/andalusia name = "Andalusia" id = "andalusia" result = /singleton/reagent/alcohol/andalusia required_reagents = list(/singleton/reagent/alcohol/rum = 1, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/neurotoxin name = "Neurotoxin" id = "neurotoxin" result = /singleton/reagent/alcohol/neurotoxin required_reagents = list(/singleton/reagent/alcohol/gargleblaster = 1, /singleton/reagent/soporific = 1) result_amount = 2 /datum/chemical_reaction/drink/snowwhite name = "Snow White" id = "snowwhite" result = /singleton/reagent/alcohol/snowwhite required_reagents = list(/singleton/reagent/alcohol/beer = 1, /singleton/reagent/drink/lemon_lime = 1) result_amount = 2 /datum/chemical_reaction/drink/irishcarbomb name = "Irish Car Bomb" id = "irishcarbomb" result = /singleton/reagent/alcohol/irishcarbomb required_reagents = list(/singleton/reagent/alcohol/ale = 1, /singleton/reagent/alcohol/irishcream = 1) result_amount = 2 /datum/chemical_reaction/drink/gibsonhooch name = "Gibson Hooch" id = "gibsonhooch" result = /singleton/reagent/alcohol/gibsonhooch required_reagents = list(/singleton/reagent/alcohol/beer = 1, /singleton/reagent/alcohol/whiskeycola = 1) result_amount = 2 /datum/chemical_reaction/drink/erikasurprise name = "Erika Surprise" id = "erikasurprise" result = /singleton/reagent/alcohol/erikasurprise required_reagents = list(/singleton/reagent/alcohol/ale = 2, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/drink/banana = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/devilskiss name = "Devils Kiss" id = "devilskiss" result = /singleton/reagent/alcohol/devilskiss required_reagents = list(/singleton/reagent/blood = 1, /singleton/reagent/alcohol/coffee/kahlua = 1, /singleton/reagent/alcohol/rum = 1) result_amount = 3 /datum/chemical_reaction/drink/hippiesdelight name = "Hippies Delight" id = "hippiesdelight" result = /singleton/reagent/alcohol/hippiesdelight required_reagents = list(/singleton/reagent/drugs/psilocybin = 1, /singleton/reagent/alcohol/gargleblaster = 1) result_amount = 2 /datum/chemical_reaction/drink/bananahonk name = "Banana Honk" id = "bananahonk" result = /singleton/reagent/alcohol/bananahonk required_reagents = list(/singleton/reagent/drink/banana = 1, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/sugar = 1) result_amount = 3 /datum/chemical_reaction/drink/silencer name = "Silencer" id = "silencer" result = /singleton/reagent/alcohol/silencer required_reagents = list(/singleton/reagent/drink/nothing = 1, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/sugar = 1) result_amount = 3 /datum/chemical_reaction/drink/driestmartini name = "Driest Martini" id = "driestmartini" result = /singleton/reagent/alcohol/driestmartini required_reagents = list(/singleton/reagent/drink/nothing = 1, /singleton/reagent/alcohol/gin = 1) result_amount = 2 /datum/chemical_reaction/drink/lemonade name = "Lemonade" id = "lemonade" result = /singleton/reagent/drink/lemonade required_reagents = list(/singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/sugar = 1, /singleton/reagent/water = 1) result_amount = 3 /datum/chemical_reaction/drink/lemonade/pink name = "Pink Lemonade" id = "pinklemonade" result = /singleton/reagent/drink/lemonade/pink required_reagents = list(/singleton/reagent/drink/lemonade = 8, /singleton/reagent/drink/grenadine = 2) result_amount = 10 /datum/chemical_reaction/drink/kiraspecial name = "Kira Special" id = "kiraspecial" result = /singleton/reagent/drink/kiraspecial required_reagents = list(/singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/sodawater = 1) result_amount = 3 /datum/chemical_reaction/drink/brownstar name = "Brown Star" id = "brownstar" result = /singleton/reagent/drink/brownstar required_reagents = list(/singleton/reagent/drink/orangejuice = 2, /singleton/reagent/drink/space_cola = 1) result_amount = 3 /datum/chemical_reaction/drink/milkshake name = "Milkshake" id = "milkshake" result = /singleton/reagent/drink/milkshake required_reagents = list(/singleton/reagent/drink/milk/cream = 1, /singleton/reagent/drink/ice = 2, /singleton/reagent/drink/milk = 2) result_amount = 5 /datum/chemical_reaction/drink/cmojito name = "Champagne Mojito" id = "cmojito" result = /singleton/reagent/alcohol/cmojito required_reagents = list(/singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/alcohol/champagne = 1, /singleton/reagent/alcohol/rum = 1) result_amount = 3 /datum/chemical_reaction/drink/classic name = "The Classic" id = "classic" result = /singleton/reagent/alcohol/classic required_reagents = list(/singleton/reagent/alcohol/champagne = 2, /singleton/reagent/alcohol/bitters = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 4 /datum/chemical_reaction/drink/corkpopper name = "Cork Popper" id = "corkpopper" result = /singleton/reagent/alcohol/corkpopper required_reagents = list(/singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/alcohol/champagne = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/french75 name = "French 75" id = "french75" result = /singleton/reagent/alcohol/french75 required_reagents = list(/singleton/reagent/alcohol/champagne = 2, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 4 /datum/chemical_reaction/drink/muscmule name = "Muscovite Mule" id = "muscmule" result = /singleton/reagent/alcohol/muscmule required_reagents = list(/singleton/reagent/alcohol/vodka = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/mintsyrup = 1) result_amount = 3 /datum/chemical_reaction/drink/omimosa name = "Orange Mimosa" id = "omimosa" result = /singleton/reagent/alcohol/omimosa required_reagents = list(/singleton/reagent/drink/orangejuice = 1, /singleton/reagent/alcohol/champagne = 1) result_amount = 2 /datum/chemical_reaction/drink/pinkgin name = "Pink Gin" id = "pinkgin" result = /singleton/reagent/alcohol/pinkgin required_reagents = list(/singleton/reagent/alcohol/gin = 2, /singleton/reagent/alcohol/bitters = 1) result_amount = 3 /datum/chemical_reaction/drink/pinkgintonic name = "Pink Gin and Tonic" id = "pinkgintonic" result = /singleton/reagent/alcohol/pinkgintonic required_reagents = list(/singleton/reagent/alcohol/pinkgin = 2, /singleton/reagent/drink/tonic = 1) result_amount = 3 /datum/chemical_reaction/drink/piratepunch name = "Pirate's Punch" id = "piratepunch" result = /singleton/reagent/alcohol/piratepunch required_reagents = list(/singleton/reagent/alcohol/rum = 1, /singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/drink/grenadine = 1, /singleton/reagent/alcohol/bitters = 1) result_amount = 5 /datum/chemical_reaction/drink/planterpunch name = "Planter's Punch" id = "planterpunch" result = /singleton/reagent/alcohol/planterpunch required_reagents = list(/singleton/reagent/alcohol/rum = 2, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 4 /datum/chemical_reaction/drink/ssroyale name = "Southside Royale" id = "ssroyale" result = /singleton/reagent/alcohol/ssroyale required_reagents = list(/singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/alcohol/champagne = 1) result_amount = 4 /datum/chemical_reaction/drink/rewriter name = "Rewriter" id = "rewriter" result = /singleton/reagent/drink/rewriter required_reagents = list(/singleton/reagent/drink/spacemountainwind = 1, /singleton/reagent/drink/coffee = 1) result_amount = 2 /datum/chemical_reaction/drink/suidream name = "Sui Dream" id = "suidream" result = /singleton/reagent/alcohol/suidream required_reagents = list(/singleton/reagent/drink/spaceup = 1, /singleton/reagent/alcohol/bluecuracao = 1, /singleton/reagent/alcohol/melonliquor = 1) result_amount = 3 //aurora's drinks /datum/chemical_reaction/drink/daiquiri name = "Daiquiri" id = "daiquiri" result = /singleton/reagent/alcohol/daiquiri required_reagents = list(/singleton/reagent/drink/limejuice = 1, /singleton/reagent/alcohol/rum = 1) result_amount = 2 /datum/chemical_reaction/drink/icepick name = "Ice Pick" id = "icepick" result = /singleton/reagent/alcohol/icepick required_reagents = list(/singleton/reagent/drink/icetea = 1, /singleton/reagent/alcohol/vodka = 1) result_amount = 2 /datum/chemical_reaction/drink/poussecafe name = "Pousse-Cafe" id = "poussecafe" result = /singleton/reagent/alcohol/poussecafe required_reagents = list(/singleton/reagent/alcohol/brandy = 1, /singleton/reagent/alcohol/chartreusegreen = 1, /singleton/reagent/alcohol/chartreuseyellow = 1, /singleton/reagent/alcohol/cremewhite = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 5 /datum/chemical_reaction/drink/mintjulep name = "Mint Julep" id = "mintjulep" result = /singleton/reagent/alcohol/mintjulep required_reagents = list(/singleton/reagent/water = 1, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/drink/ice = 1) result_amount = 2 /datum/chemical_reaction/drink/johncollins name = "John Collins" id = "johncollins" result = /singleton/reagent/alcohol/johncollins required_reagents = list(/singleton/reagent/alcohol/whiskeysoda = 2, /singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/drink/grenadine = 1, /singleton/reagent/drink/ice = 1) result_amount = 5 /datum/chemical_reaction/drink/gimlet name = "Gimlet" id = "gimlet" result = /singleton/reagent/alcohol/gimlet required_reagents = list(/singleton/reagent/drink/limejuice = 1, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 3 /datum/chemical_reaction/drink/starsandstripes name = "Stars and Stripes" id = "starsandstripes" result = /singleton/reagent/alcohol/starsandstripes required_reagents = list(/singleton/reagent/drink/milk/cream = 1, /singleton/reagent/alcohol/cremeyvette = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 3 /datum/chemical_reaction/drink/cosmopolitan name = "Cosmopolitan" id = "cosmopolitan" result = /singleton/reagent/alcohol/cosmopolitan required_reagents = list(/singleton/reagent/alcohol/triplesec = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/cranberryjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/mendellian name = "Mendellian" id = "mendellian" result = /singleton/reagent/alcohol/mendellian required_reagents = list(/singleton/reagent/alcohol/bluecuracao = 1, /singleton/reagent/alcohol/triplesec = 1, /singleton/reagent/drink/limejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/metropolitan name = "Metropolitan" id = "metropolitan" result = /singleton/reagent/alcohol/metropolitan required_reagents = list(/singleton/reagent/alcohol/brandy = 1, /singleton/reagent/alcohol/vermouth = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 3 /datum/chemical_reaction/drink/red_dwarf_sangria name = "Red Dwarf Sangria" id = "reddwarfsangria" result = /singleton/reagent/alcohol/red_dwarf_sangria required_reagents = list(/singleton/reagent/alcohol/wine/assunzione = 1, /singleton/reagent/alcohol/applejack = 1, /singleton/reagent/drink/orangejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/forbidden_apple name = "Forbidden Apple" id = "forbiddenapple" result = /singleton/reagent/alcohol/forbidden_apple required_reagents = list(/singleton/reagent/alcohol/champagne = 1, /singleton/reagent/alcohol/triplesec = 1, /singleton/reagent/alcohol/applejack = 1) result_amount = 3 /datum/chemical_reaction/drink/caruso name = "Caruso" id = "caruso" result = /singleton/reagent/alcohol/caruso required_reagents = list(/singleton/reagent/alcohol/martini = 2, /singleton/reagent/alcohol/cremewhite = 1) result_amount = 3 /datum/chemical_reaction/drink/aprilshower name = "April Shower" id = "aprilshower" result = /singleton/reagent/alcohol/aprilshower required_reagents = list(/singleton/reagent/alcohol/brandy = 1, /singleton/reagent/alcohol/chartreuseyellow = 1, /singleton/reagent/drink/orangejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/carthusiansazerac name = "Carthusian Sazerac" id = "carthusiansazerac" result = /singleton/reagent/alcohol/carthusiansazerac required_reagents = list(/singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/alcohol/chartreusegreen = 1, /singleton/reagent/drink/grenadine = 1, /singleton/reagent/alcohol/absinthe = 1) result_amount = 4 /datum/chemical_reaction/drink/deweycocktail name = "Dewey Cocktail" id = "deweycocktail" result = /singleton/reagent/alcohol/deweycocktail required_reagents = list(/singleton/reagent/alcohol/cremeyvette = 1, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 3 /datum/chemical_reaction/drink/rustynail name = "Rusty Nail" id = "rustynail" result = /singleton/reagent/alcohol/rustynail required_reagents = list(/singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/alcohol/drambuie = 1) result_amount = 2 /datum/chemical_reaction/drink/oldfashioned name = "Old Fashioned" id = "oldfashioned" result = /singleton/reagent/alcohol/oldfashioned required_reagents = list(/singleton/reagent/alcohol/whiskeysoda = 3, /singleton/reagent/alcohol/bitters = 1, /singleton/reagent/sugar = 1) result_amount = 5 /datum/chemical_reaction/drink/blindrussian name = "Blind Russian" id = "blindrussian" result = /singleton/reagent/alcohol/blindrussian required_reagents = list(/singleton/reagent/alcohol/coffee/kahlua = 1, /singleton/reagent/alcohol/irishcream = 1, /singleton/reagent/drink/milk/cream = 1) result_amount = 3 /datum/chemical_reaction/drink/tallrussian name = "Tall Black Russian" id = "tallrussian" result = /singleton/reagent/alcohol/tallrussian required_reagents = list(/singleton/reagent/alcohol/blackrussian = 1, /singleton/reagent/drink/space_cola = 1) result_amount = 2 /datum/chemical_reaction/drink/cold_gate name = "Cold Gate" id = "cold_gate" result = /singleton/reagent/drink/toothpaste/cold_gate result_amount = 3 required_reagents = list(/singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/drink/ice = 1, /singleton/reagent/drink/toothpaste = 1) /datum/chemical_reaction/drink/waterfresh name = "Waterfresh" id = "waterfresh" result = /singleton/reagent/drink/toothpaste/waterfresh result_amount = 3 required_reagents = list(/singleton/reagent/drink/tonic = 1, /singleton/reagent/drink/sodawater = 1, /singleton/reagent/drink/toothpaste = 1) /datum/chemical_reaction/drink/sedantian_firestorm name = "Sedantian Firestorm" id = "sedantian_firestorm" result = /singleton/reagent/drink/toothpaste/sedantian_firestorm result_amount = 2 required_reagents = list(/singleton/reagent/toxin/phoron = 1, /singleton/reagent/drink/toothpaste = 1) /datum/chemical_reaction/drink/kois_odyne name = "Kois Odyne" id = "kois_odyne" result = /singleton/reagent/drink/toothpaste/kois_odyne result_amount = 3 required_reagents = list(/singleton/reagent/drink/tonic = 1, /singleton/reagent/kois = 1, /singleton/reagent/drink/toothpaste = 1) /datum/chemical_reaction/adhomai_milk name = "Fermented Fatshouters Milk" id = "adhomai_milk" result = /singleton/reagent/drink/milk/adhomai/fermented required_reagents = list(/singleton/reagent/drink/milk/adhomai = 1) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 1 /datum/chemical_reaction/drink/ntella_shake name = "NTella milkshake" id = "NTellamilkshake" result = /singleton/reagent/drink/ntella_milkshake required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/nutriment/choconutspread = 1) result_amount = 6 /datum/chemical_reaction/drink/caramelshake name = "Caramel Milkshake" id = "shake_caramel" result = /singleton/reagent/drink/shake_caramel required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_caramel = 1) result_amount = 6 /datum/chemical_reaction/drink/strawberryshake name = "Strawberry Milkshake" id = "shake_strawberry" result = /singleton/reagent/drink/shake_strawberry required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_strawberry = 1) result_amount = 6 /datum/chemical_reaction/drink/dirtberryshake name = "Dirtberry Milkshake" id = "shake_dirtberry" result = /singleton/reagent/drink/shake_dirtberry required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_dirtberry = 1) result_amount = 6 /datum/chemical_reaction/drink/blueberry_shake name = "Blueberry Milkshake" id = "shake_blueberry" result = /singleton/reagent/drink/shake_blueberry required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_blueberry = 1) result_amount = 6 /datum/chemical_reaction/drink/chocolate_shake name = "Chocolate Milkshake" id = "shake_chocolate" result = /singleton/reagent/drink/shake_chocolate required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_chocolate = 1) result_amount = 6 /datum/chemical_reaction/drink/blue_raspberry_shake name = "Blue Raspberry Milkshake" id = "shake_blue_raspberry" result = /singleton/reagent/drink/shake_blue_raspberry required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_blueraspberry = 1) result_amount = 6 /datum/chemical_reaction/drink/raspberry_shake name = "Raspberry Milkshake" id = "shake_raspberry" result = /singleton/reagent/drink/shake_raspberry required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_raspberry = 1) result_amount = 6 /datum/chemical_reaction/drink/ylpha_shake name = "Ylpha Berry Milkshake" id = "shake_ylpha" result = /singleton/reagent/drink/shake_ylpha required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_ylphaberry = 1) result_amount = 6 /datum/chemical_reaction/drink/berry_shake name = "Berry Milkshake" id = "shake_berry" result = /singleton/reagent/drink/shake_berry required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/condiment/syrup_berry = 1) result_amount = 6 /datum/chemical_reaction/drink/choco_mint_shake name = "Choco-Mint Milkshake" id = "shake_choco_mint" result = /singleton/reagent/drink/shake_choco_mint required_reagents = list(/singleton/reagent/drink/milkshake = 5, /singleton/reagent/drink/mintsyrup = 1) result_amount = 6 /datum/chemical_reaction/drink/ntella_hot_chocolate name = "NTella hot chocolate" id = "NTellahotchocolate" result = /singleton/reagent/drink/ntella_hot_chocolate required_reagents = list(/singleton/reagent/drink/milk = 1, /singleton/reagent/nutriment/choconutspread = 1, /singleton/reagent/drink/milk/cream = 1) result_amount = 3 /datum/chemical_reaction/drink/lights_edge name = "Light's Edge" id = "lights_edge" result = /singleton/reagent/alcohol/lights_edge required_reagents = list(/singleton/reagent/alcohol/wine/assunzione = 1, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/rose_tinted_glasses name = "Rose Tinted Glasses" id = "rose_tinted_glasses" result = /singleton/reagent/alcohol/rose_tinted_glasses required_reagents = list(/singleton/reagent/alcohol/wine/rose = 1, /singleton/reagent/drink/sodawater = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/twisted_lime name = "Twisted Lime" id = "twisted_lime" result = /singleton/reagent/alcohol/twisted_lime required_reagents = list(/singleton/reagent/alcohol/fernet = 1, /singleton/reagent/alcohol/ale = 1, /singleton/reagent/drink/limejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/cinnamon_orchard name = "Cinnamon Orchard" id = "cinnamon_orchard" result = /singleton/reagent/alcohol/cinnamon_orchard required_reagents = list(/singleton/reagent/alcohol/fireball = 1, /singleton/reagent/alcohol/applejack = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/harvest_moon name = "Harvest Moon" id = "harvest_moon" result = /singleton/reagent/alcohol/harvest_moon required_reagents = list(/singleton/reagent/alcohol/applejack = 1, /singleton/reagent/condiment/syrup_pumpkin = 0.5, /singleton/reagent/drink/sodawater = 1) result_amount = 3 /datum/chemical_reaction/drink/new_horizons name = "New Horizons" id = "new_horizons" result = /singleton/reagent/alcohol/new_horizons required_reagents = list(/singleton/reagent/alcohol/patron = 1, /singleton/reagent/alcohol/cremeyvette = 1, /singleton/reagent/drink/limejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/espratini name = "Espratini" id = "espratini" result = /singleton/reagent/alcohol/espratini required_reagents = list(/singleton/reagent/alcohol/coffee/kahlua = 1, /singleton/reagent/drink/coffee/espresso = 1, /singleton/reagent/alcohol/vodka = 1) result_amount = 3 /datum/chemical_reaction/drink/pretty_in_pink name = "Pretty in Pink" id = "pretty_in_pink" result = /singleton/reagent/alcohol/pretty_in_pink required_reagents = list(/singleton/reagent/alcohol/wine/rose = 1, /singleton/reagent/drink/lemonade/pink = 1) result_amount = 2 /datum/chemical_reaction/drink/weeping_stars name = "Weeping Stars" id = "weeping_stars" result = /singleton/reagent/alcohol/weeping_stars required_reagents = list(/singleton/reagent/alcohol/cremeyvette = 1, /singleton/reagent/drink/cranberryjuice = 1, /singleton/reagent/alcohol/champagne = 1) result_amount = 3 /datum/chemical_reaction/drink/verdant name = "Verdant Green" id = "verdant" result = /singleton/reagent/alcohol/verdant required_reagents = list(/singleton/reagent/alcohol/soju = 1, /singleton/reagent/drink/tea/greentea = 1, /singleton/reagent/drink/mintsyrup = 1) result_amount = 3 /datum/chemical_reaction/drink/lemonlimebitters name = "Lemon Lime & Bitters" id = "lemonlimebitters" result = /singleton/reagent/drink/lemonlimebitters required_reagents = list(/singleton/reagent/drink/lemonade = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/alcohol/bitters = 1) result_amount = 3 // Synnono Meme Drinks //============================== // Organized here because why not. /datum/chemical_reaction/drink/badtouch name = "Bad Touch" id = "badtouch" result = /singleton/reagent/alcohol/badtouch required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/alcohol/rum = 2, /singleton/reagent/alcohol/absinthe = 1, /singleton/reagent/drink/lemon_lime = 1) result_amount = 6 /datum/chemical_reaction/drink/bluelagoon name = "Blue Lagoon" id = "bluelagooon" result = /singleton/reagent/alcohol/bluelagoon required_reagents = list(/singleton/reagent/drink/lemonade = 3, /singleton/reagent/alcohol/vodka = 1, /singleton/reagent/alcohol/bluecuracao = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/cherrytreefireball name = "Cherry Tree Fireball" id = "cherrytreefireball" result = /singleton/reagent/alcohol/cherrytreefireball required_reagents = list(/singleton/reagent/drink/lemonade = 3, /singleton/reagent/alcohol/fireball = 1, /singleton/reagent/nutriment/cherryjelly = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/cobaltvelvet name = "Cobalt Velvet" id = "cobaltvelvet" result = /singleton/reagent/alcohol/cobaltvelvet required_reagents = list(/singleton/reagent/alcohol/champagne = 3, /singleton/reagent/alcohol/bluecuracao = 2, /singleton/reagent/drink/space_cola = 1) result_amount = 6 /datum/chemical_reaction/drink/fringeweaver name = "Fringe Weaver" id = "fringeweaver" result = /singleton/reagent/alcohol/fringeweaver required_reagents = list(/singleton/reagent/alcohol/ethanol = 2, /singleton/reagent/sugar = 1) result_amount = 3 /datum/chemical_reaction/drink/junglejuice name = "Jungle Juice" id = "junglejuice" result = /singleton/reagent/alcohol/junglejuice required_reagents = list(/singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/lemon_lime = 1, /singleton/reagent/alcohol/vodka = 1, /singleton/reagent/alcohol/rum = 1) result_amount = 5 /datum/chemical_reaction/drink/marsarita name = "Marsarita" id = "marsarita" result = /singleton/reagent/alcohol/marsarita required_reagents = list(/singleton/reagent/alcohol/margarita = 4, /singleton/reagent/alcohol/bluecuracao = 1, /singleton/reagent/capsaicin = 1) result_amount = 6 /datum/chemical_reaction/drink/meloncooler name = "Melon Cooler" id = "meloncooler" result = /singleton/reagent/drink/meloncooler required_reagents = list(/singleton/reagent/drink/watermelonjuice = 2, /singleton/reagent/drink/sodawater = 2, /singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/midnightkiss name = "Midnight Kiss" id = "midnightkiss" result = /singleton/reagent/alcohol/midnightkiss required_reagents = list(/singleton/reagent/alcohol/champagne = 3, /singleton/reagent/alcohol/vodka = 1, /singleton/reagent/alcohol/bluecuracao = 1) result_amount = 5 /datum/chemical_reaction/drink/millionairesour name = "Millionaire Sour" id = "millionairesour" result = /singleton/reagent/drink/millionairesour required_reagents = list(/singleton/reagent/drink/spacemountainwind = 3, /singleton/reagent/drink/grenadine = 1, /singleton/reagent/drink/limejuice = 1) result_amount = 5 /datum/chemical_reaction/drink/olympusmons name = "Olympus Mons" id = "olympusmons" result = /singleton/reagent/alcohol/olympusmons required_reagents = list(/singleton/reagent/alcohol/blackrussian = 1, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/alcohol/rum = 1) result_amount = 3 /datum/chemical_reaction/drink/europanail name = "Europa Nail" id = "europanail" result = /singleton/reagent/alcohol/europanail required_reagents = list(/singleton/reagent/alcohol/rustynail = 2, /singleton/reagent/alcohol/coffee/kahlua = 2, /singleton/reagent/drink/milk/cream = 2) result_amount = 6 /datum/chemical_reaction/drink/portsvilleminttea name = "Portsville Mint Tea" id = "portsvilleminttea" result = /singleton/reagent/drink/tea/portsvilleminttea required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/berryjuice = 1, /singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/sugar = 1) result_amount = 6 /datum/chemical_reaction/drink/shirleytemple name = "Shirley Temple" id = "shirleytemple" result = /singleton/reagent/drink/shirleytemple required_reagents = list(/singleton/reagent/drink/spaceup = 4, /singleton/reagent/drink/grenadine = 2) result_amount = 6 /datum/chemical_reaction/drink/sugarrush name = "Sugar Rush" id = "sugarrush" result = /singleton/reagent/alcohol/sugarrush required_reagents = list(/singleton/reagent/drink/brownstar = 4, /singleton/reagent/drink/grenadine = 1, /singleton/reagent/alcohol/vodka = 1) result_amount = 6 /datum/chemical_reaction/drink/sangria name = "Sangria" id = "sangria" result = /singleton/reagent/alcohol/sangria required_reagents = list(/singleton/reagent/alcohol/wine = 3, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/alcohol/brandy = 1) result_amount = 6 /datum/chemical_reaction/drink/bassline name = "Bassline" id = "bassline" result = /singleton/reagent/alcohol/bassline required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/alcohol/bluecuracao = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/grapejuice = 2) result_amount = 6 /datum/chemical_reaction/drink/bluebird name = "Bluebird" id = "bluebird" result = /singleton/reagent/alcohol/bluebird required_reagents = list(/singleton/reagent/alcohol/gintonic = 3, /singleton/reagent/alcohol/bluecuracao = 1) result_amount = 4 //Snowflake drinks /datum/chemical_reaction/drink/dr_gibb_diet name = "Diet Dr. Gibb" id = "dr_gibb_diet" result = /singleton/reagent/drink/dr_gibb_diet required_reagents = list(/singleton/reagent/drink/dr_gibb = 1, /singleton/reagent/water = 1) result_amount = 2 /datum/chemical_reaction/drink/dr_daniels name = "Dr. Daniels" id = "dr_daniels" result = /singleton/reagent/alcohol/drdaniels required_reagents = list(/singleton/reagent/drink/dr_gibb_diet = 3, /singleton/reagent/alcohol/whiskey = 1, /singleton/reagent/nutriment/honey = 1) result_amount = 5 /datum/chemical_reaction/drink/meatshake name = "Meatshake" id = "meatshake" result = /singleton/reagent/drink/meatshake required_reagents = list(/singleton/reagent/drink/milk/cream = 1, /singleton/reagent/nutriment/protein = 1,/singleton/reagent/water = 1) result_amount = 3 /datum/chemical_reaction/drink/eszkazalsbite name = "Eszkazal's Bite" id = "eszkazalsbite" result = /singleton/reagent/alcohol/butanol/eszkazalsbite required_reagents = list(/singleton/reagent/alcohol/butanol/sarezhiwine = 5, /singleton/reagent/toxin = 1) result_amount = 6 /datum/chemical_reaction/drink/messa_mead name = "Messa's Mead" id = "messa_mead" result = /singleton/reagent/alcohol/messa_mead required_reagents = list(/singleton/reagent/nutriment/honey = 1, /singleton/reagent/drink/earthenrootjuice = 1) result_amount = 2 /datum/chemical_reaction/drink/winter_offensive name = "Winter Offensive" id = "winter_offensive" result = /singleton/reagent/alcohol/winter_offensive required_reagents = list(/singleton/reagent/drink/ice = 1, /singleton/reagent/alcohol/victorygin = 1) result_amount = 2 /datum/chemical_reaction/drink/mars_coffee name = "Martian Special" id = "mars_coffee" result = /singleton/reagent/drink/coffee/mars required_reagents = list(/singleton/reagent/drink/coffee = 4, /singleton/reagent/blackpepper = 1) result_amount = 5 /datum/chemical_reaction/drink/mountain_marauder name = "Mountain Marauder" id = "mountain_marauder" result = /singleton/reagent/alcohol/mountain_marauder required_reagents = list(/singleton/reagent/drink/milk/adhomai/fermented = 1, /singleton/reagent/alcohol/victorygin = 1) result_amount = 2 //Unathi cocktails //======== /datum/chemical_reaction/drink/healerspride name = "Healer's Pride" id = "healerspride" result = /singleton/reagent/alcohol/butanol/healerspride required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 2, /singleton/reagent/drink/limejuice = 3) result_amount = 5 /datum/chemical_reaction/drink/forestsbounty name = "Forest's Bounty" id = "forestsbounty" result = /singleton/reagent/alcohol/butanol/forestsbounty required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 2, /singleton/reagent/drink/lemonjuice = 2, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/palacedelight name = "Palace Delight" id = "palacedelight" result = /singleton/reagent/alcohol/butanol/palacedelight required_reagents = list(/singleton/reagent/drink/berryjuice = 2, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/alcohol/butanol/xuizijuice = 2) result_amount = 5 /datum/chemical_reaction/drink/senssecret name = "Sens Secret" id = "senssecret" result = /singleton/reagent/alcohol/butanol/senssecret required_reagents = list(/singleton/reagent/drink/milk/cream = 2, /singleton/reagent/drink/banana = 1, /singleton/reagent/alcohol/butanol/xuizijuice = 1, /singleton/reagent/drink/watermelonjuice = 1) result_amount = 5 /datum/chemical_reaction/drink/fishersreward name = "Fisher's Reward" id = "fishersreward" result = /singleton/reagent/alcohol/butanol/fishersreward required_reagents = list(/singleton/reagent/drink/icetea = 1, /singleton/reagent/alcohol/butanol/xuizijuice = 1) result_amount = 2 /datum/chemical_reaction/drink/queensgift name = "Queen's Gift" id = "queensgift" result = /singleton/reagent/alcohol/butanol/queensgift required_reagents = list(/singleton/reagent/alcohol/butanol/sarezhiwine = 2, /singleton/reagent/alcohol/butanol/xuizijuice = 1, /singleton/reagent/drink/grenadine = 5) result_amount = 5 /datum/chemical_reaction/drink/janviriheat name = "Janviri Heat" id = "janviriheat" result = /singleton/reagent/alcohol/butanol/janviriheat required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 10, /singleton/reagent/capsaicin = 3) result_amount = 10 /datum/chemical_reaction/drink/tasteofvictory name = "tasteofvictory" id = "tasteofvictory" result = /singleton/reagent/alcohol/butanol/tasteofvictory required_reagents = list(/singleton/reagent/alcohol/butanol/sarezhiwine = 3, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/alcohol/butanol/xuizijuice = 1) result_amount = 6 /datum/chemical_reaction/drink/contactwine name = "Contact Wine" id = "contactwine" result = /singleton/reagent/alcohol/butanol/contactwine required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 5, /singleton/reagent/radium = 1, /singleton/reagent/alcohol/butanol/sarezhiwine = 5) result_amount = 10 /datum/chemical_reaction/drink/smokescalesblood name = "Smokescale's Blood" id = "smokescalesblood" result = /singleton/reagent/alcohol/butanol/smokescalesblood required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 3, /singleton/reagent/drink/spacemountainwind = 1, /singleton/reagent/blood = 1, /singleton/reagent/drink/dr_gibb = 1) result_amount = 6 /datum/chemical_reaction/drink/templetreasure name = "Temple Treasure" id = "templetreasure" result = /singleton/reagent/alcohol/butanol/templetreasure required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 2, /singleton/reagent/drink/orangejuice = 2) result_amount = 4 /datum/chemical_reaction/drink/cactuscola name = "Cactus Cola" id = "cactuscola" result = /singleton/reagent/alcohol/butanol/cactuscola required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 2, /singleton/reagent/drink/space_cola = 2, /singleton/reagent/drink/ice = 1) result_amount = 5 /datum/chemical_reaction/drink/bloodwine name = "Bloodwine" id = "bloodwine" result = /singleton/reagent/alcohol/butanol/bloodwine required_reagents = list(/singleton/reagent/blood = 2, /singleton/reagent/alcohol/butanol/sarezhiwine = 3) result_amount = 5 /datum/chemical_reaction/drink/balefire name = "Balefire" id = "balefire" result = /singleton/reagent/alcohol/butanol/balefire required_reagents = list(/singleton/reagent/alcohol/butanol/redstaff = 1, /singleton/reagent/drink/mintsyrup = 4, /singleton/reagent/drink/ice = 1) result_amount = 5 /datum/chemical_reaction/drink/liarshandshake name = "Liar's Handshake" id = "liarshandshake" result = /singleton/reagent/alcohol/butanol/liarshandshake required_reagents = list(/singleton/reagent/alcohol/butanol/redstaff = 5, /singleton/reagent/gunpowder = 1) result_amount = 5 /datum/chemical_reaction/drink/sarikshand name = "Sarik's Hand" id = "sarikshand" result = /singleton/reagent/alcohol/butanol/sarikshand required_reagents = list(/singleton/reagent/alcohol/butanol/sarezhiwine = 1, /singleton/reagent/drink/cranberryjuice = 1, /singleton/reagent/alcohol/butanol/redstaff = 1) result_amount = 3 //Skrell drinks. Bring forth the culture. //=========================================== /datum/chemical_reaction/drink/thirdincident name = "The Third Incident" id = "thirdincident" result = /singleton/reagent/alcohol/thirdincident required_reagents = list(/singleton/reagent/nutriment/protein/egg = 3, /singleton/reagent/alcohol/bluecuracao = 10, /singleton/reagent/drink/grapejuice = 10) result_amount = 20 /datum/chemical_reaction/drink/upsidedowncup name = "Upside-Down Cup" id = "upsidedowncup" result = /singleton/reagent/drink/upsidedowncup required_reagents = list(/singleton/reagent/drink/dr_gibb = 3, /singleton/reagent/drink/ice = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 5 /datum/chemical_reaction/drink/cigarettelizard name = "Cigarette Lizard" id = "cigarettelizard" result = /singleton/reagent/drink/smokinglizard required_reagents = list(/singleton/reagent/drink/limejuice = 2, /singleton/reagent/drink/sodawater = 2, /singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/sromshine name = "Sromshine" id = "sromshine" result = /singleton/reagent/drink/coffee/sromshine required_reagents = list(/singleton/reagent/drink/coffee = 2, /singleton/reagent/drink/orangejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/cbsc name = "Complex Bluespace Calculation" id = "cbsc" result = /singleton/reagent/alcohol/cbsc required_reagents = list(/singleton/reagent/alcohol/wine = 4, /singleton/reagent/alcohol/vodka = 2, /singleton/reagent/drink/sodawater = 3, /singleton/reagent/radium = 1 ) result_amount = 10 /datum/chemical_reaction/drink/dynhot name = "Dyn Tea" id = "dynhot" result = /singleton/reagent/drink/dynjuice/hot required_reagents = list(/singleton/reagent/drink/dynjuice = 1, /singleton/reagent/water = 4) result_amount = 5 /datum/chemical_reaction/drink/dyncold name = "Dyn Ice Tea" id = "dyncold" result = /singleton/reagent/drink/dynjuice/cold required_reagents = list(/singleton/reagent/drink/dynjuice = 1, /singleton/reagent/drink/ice = 2, /singleton/reagent/drink/sodawater = 2) result_amount = 5 /datum/chemical_reaction/drink/algaesuprise name = "Pl'iuop Algae Surprise" id = "algaesuprise" result = /singleton/reagent/drink/algaesuprise required_reagents = list(/singleton/reagent/nutriment/virusfood = 2, /singleton/reagent/drink/banana = 1) result_amount = 3 /datum/chemical_reaction/drink/xrim name = "Xrim Garden" id = "xrim" result = /singleton/reagent/drink/xrim required_reagents = list(/singleton/reagent/nutriment/virusfood = 2, /singleton/reagent/drink/watermelonjuice = 1, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/zorasoda/cthur = 1) result_amount = 6 /datum/chemical_reaction/drink/rixulin_sundae name = "Rixulin Sundae" id = "rixulin_sundae" result = /singleton/reagent/alcohol/rixulin_sundae required_reagents = list(/singleton/reagent/nutriment/virusfood = 3, /singleton/reagent/wulumunusha = 1, /singleton/reagent/alcohol/whitewine = 2) result_amount = 6 //Tea and cider //======================= /datum/chemical_reaction/drink/cidercheap name = "Apple Cider Juice" id = "cidercheap" result = /singleton/reagent/drink/cidercheap required_reagents = list(/singleton/reagent/drink/applejuice = 2, /singleton/reagent/sugar = 1, /singleton/reagent/spacespice = 1) result_amount = 4 /datum/chemical_reaction/cinnamonapplewhiskey name = "Cinnamon Apple Whiskey" id = "cinnamonapplewhiskey" result = /singleton/reagent/alcohol/cinnamonapplewhiskey required_reagents = list(/singleton/reagent/drink/ciderhot = 3, /singleton/reagent/alcohol/fireball = 1) result_amount = 4 /datum/chemical_reaction/drink/chailatte name = "Chai Latte" id = "chailatte" result = /singleton/reagent/drink/tea/chaitealatte required_reagents = list(/singleton/reagent/drink/tea/chaitea = 1, /singleton/reagent/drink/milk = 1) result_amount = 2 /datum/chemical_reaction/drink/chailatte/soy id = "chailattesoy" required_reagents = list(/singleton/reagent/drink/tea/chaitea = 1, /singleton/reagent/drink/milk/soymilk = 1) /datum/chemical_reaction/drink/coco_chaitea name = "Chocolate Chai" id = "coco_chaitea" result = /singleton/reagent/drink/tea/coco_chaitea required_reagents = list(/singleton/reagent/drink/tea/chaitea = 2, /singleton/reagent/nutriment/coco = 1) result_amount = 3 /datum/chemical_reaction/drink/coco_chailatte name = "Chocolate Chai Latte" id = "coco_chailatte" result = /singleton/reagent/drink/tea/coco_chailatte required_reagents = list(/singleton/reagent/drink/tea/coco_chaitea = 1, /singleton/reagent/drink/milk = 1) result_amount = 2 /datum/chemical_reaction/drink/coco_chailatte/soy id = "coco_chailatte_soy" required_reagents = list(/singleton/reagent/drink/tea/coco_chaitea = 1, /singleton/reagent/drink/milk/soymilk = 1) /datum/chemical_reaction/drink/cofftea name = "Cofftea" id = "cofftea" result = /singleton/reagent/drink/tea/cofftea required_reagents = list(/singleton/reagent/drink/tea = 1, /singleton/reagent/drink/coffee = 1) result_amount = 2 /datum/chemical_reaction/drink/bureacratea name = "Bureacratea" id = "bureacratea" result = /singleton/reagent/drink/tea/bureacratea required_reagents = list(/singleton/reagent/drink/tea = 1, /singleton/reagent/drink/coffee/espresso = 1) result_amount = 2 /datum/chemical_reaction/drink/desert_tea name = "Desert Blossom Tea" id = "desert_tea" result = /singleton/reagent/drink/tea/desert_tea required_reagents = list(/singleton/reagent/drink/tea/greentea = 2, /singleton/reagent/alcohol/butanol/xuizijuice = 1, /singleton/reagent/sugar = 1) result_amount = 4 /datum/chemical_reaction/drink/halfandhalf name = "Half and Half" id = "halfandhalf" result = /singleton/reagent/drink/tea/halfandhalf required_reagents = list(/singleton/reagent/drink/icetea = 1, /singleton/reagent/drink/lemonade = 1) result_amount = 2 /datum/chemical_reaction/drink/heretic_tea name = "Heretics Tea" id = "heretic_tea" result = /singleton/reagent/drink/tea/heretic_tea required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/blood = 1, /singleton/reagent/drink/spacemountainwind = 1, /singleton/reagent/drink/dr_gibb = 1) result_amount = 6 /datum/chemical_reaction/drink/kira_tea name = "Kira tea" id = "kira_tea" result = /singleton/reagent/drink/tea/kira_tea required_reagents = list(/singleton/reagent/drink/icetea = 1, /singleton/reagent/drink/kiraspecial = 1) result_amount = 2 /datum/chemical_reaction/drink/librarian_special name = "Librarian Special" id = "librarian_special" result = /singleton/reagent/drink/tea/librarian_special required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/drink/nothing = 1) result_amount = 3 /datum/chemical_reaction/drink/mars_tea name = "Martian Tea" id = "mars_tea" result = /singleton/reagent/drink/tea/mars_tea required_reagents = list(/singleton/reagent/drink/tea = 4, /singleton/reagent/blackpepper = 1) result_amount = 5 /datum/chemical_reaction/drink/mars_tea/green required_reagents = list(/singleton/reagent/drink/tea/greentea = 4, /singleton/reagent/blackpepper = 1) /datum/chemical_reaction/drink/mendell_tea name = "Mendell Afternoon Tea" id = "mendell_tea" result = /singleton/reagent/drink/tea/mendell_tea required_reagents = list(/singleton/reagent/drink/tea/greentea = 4, /singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 6 /datum/chemical_reaction/drink/berry_tea name = "Mixed Berry Tea" id = "berry_tea" result = /singleton/reagent/drink/tea/berry_tea required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/drink/berryjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/berry_tea/green required_reagents = list(/singleton/reagent/drink/tea/greentea = 2, /singleton/reagent/drink/berryjuice = 1) /datum/chemical_reaction/drink/pomegranate_icetea name = "Pomegranate Iced Tea" id = "pomegranate_icetea" result = /singleton/reagent/drink/tea/pomegranate_icetea required_reagents = list(/singleton/reagent/drink/icetea = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 2 /datum/chemical_reaction/drink/potatea name = "Potatea" id = "potatea" result = /singleton/reagent/drink/tea/potatea required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/drink/potatojuice = 1) result_amount = 3 /datum/chemical_reaction/drink/securitea name = "Securitea" id = "securitea" result = /singleton/reagent/drink/tea/securitea required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust = 1) result_amount = 3 /datum/chemical_reaction/drink/securitea/red id = "securitea_red" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/red = 1) /datum/chemical_reaction/drink/securitea/orange id = "securitea_orange" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/orange = 1) /datum/chemical_reaction/drink/securitea/yellow id = "securitea_yellow" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/yellow = 1) /datum/chemical_reaction/drink/securitea/green id = "securitea_green" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/green = 1) /datum/chemical_reaction/drink/securitea/blue id = "securitea_blue" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/blue = 1) /datum/chemical_reaction/drink/securitea/purple id = "securitea_purple" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/purple = 1) /datum/chemical_reaction/drink/securitea/grey id = "securitea_grey" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/grey = 1) /datum/chemical_reaction/drink/securitea/brown id = "securitea_brown" required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/crayon_dust/brown = 1) /datum/chemical_reaction/drink/sleepytime_tea name = "Sleepytime Tea" id = "sleepytime_tea" result = /singleton/reagent/drink/tea/sleepytime_tea required_reagents = list(/singleton/reagent/drink/tea = 5, /singleton/reagent/soporific = 1) result_amount = 6 /datum/chemical_reaction/drink/sleepytime_tea/green id = "sleepytime_greentea" required_reagents = list(/singleton/reagent/drink/tea/greentea = 5, /singleton/reagent/soporific = 1) /datum/chemical_reaction/drink/hakhma_tea name = "Spiced Hakhma Tea" id = "hakhma_tea" result = /singleton/reagent/drink/tea/hakhma_tea required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/drink/milk/beetle = 2, /singleton/reagent/spacespice = 1) result_amount = 5 /datum/chemical_reaction/drink/sweet_tea name = "Sweet Tea" id = "sweet_tea" result = /singleton/reagent/drink/tea/sweet_tea required_reagents = list(/singleton/reagent/drink/icetea = 1, /singleton/reagent/sugar = 1) result_amount = 2 /datum/chemical_reaction/drink/teathpaste name = "Teathpaste" id = "teathpaste" result = /singleton/reagent/drink/toothpaste/teathpaste required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/drink/toothpaste = 1) result_amount = 3 /datum/chemical_reaction/drink/mouthgarita name = "Mouthgarita" id = "mouthgarita" result = /singleton/reagent/drink/toothpaste/mouthwash/mouthgarita required_reagents = list(/singleton/reagent/drink/toothpaste/mouthwash = 2, /singleton/reagent/drink/limejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/caprician_sunrise name = "Caprician Sunrise" id = "caprician_sunrise" result = /singleton/reagent/drink/toothpaste/mouthwash/caprician_sunrise required_reagents = list(/singleton/reagent/drink/toothpaste/mouthwash = 2, /singleton/reagent/drink/orangejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/flagsdale_mule name = "Flagsdale Mule" id = "flagsdale_mule" result = /singleton/reagent/drink/toothpaste/mouthwash/flagsdale_mule required_reagents = list(/singleton/reagent/drink/toothpaste/mouthwash = 1, /singleton/reagent/drink/toothpaste = 1, /singleton/reagent/drink/mintsyrup = 1) result_amount = 3 /datum/chemical_reaction/drink/thewake name = "The Wake" id = "thewake" result = /singleton/reagent/drink/dynjuice/thewake required_reagents = list(/singleton/reagent/drink/dynjuice = 1, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/tea = 1) result_amount = 3 /datum/chemical_reaction/drink/tomatea name = "Tomatea" id = "tomatea" result = /singleton/reagent/drink/tea/tomatea required_reagents = list(/singleton/reagent/drink/tea = 2, /singleton/reagent/drink/tomatojuice = 1) result_amount = 3 /datum/chemical_reaction/drink/trizkizki_tea name = "Trizkizki Tea" id = "trizkizki_tea" result = /singleton/reagent/alcohol/butanol/trizkizki_tea required_reagents = list(/singleton/reagent/drink/tea/greentea = 1, /singleton/reagent/alcohol/butanol/sarezhiwine = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 3 /datum/chemical_reaction/drink/tropical_icetea name = "Tropical Iced Tea" id = "tropical_icetea" result = /singleton/reagent/drink/tea/tropical_icetea required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/orangejuice = 1, /singleton/reagent/drink/watermelonjuice = 1) result_amount = 6 /datum/chemical_reaction/drink/messas_tear_tea name = "Messa's Tear Tea" id = "messas_tear_tea" result = /singleton/reagent/drink/tea/messa required_reagents = list(/singleton/reagent/nutriment/teagrounds/messa = 1, /singleton/reagent/water = 5) result_amount = 6 /datum/chemical_reaction/drink/rasnif name = "Ras'nif Tea" id = "rasnif_tea" result = /singleton/reagent/drink/tea/rasnif required_reagents = list(/singleton/reagent/nutriment/teagrounds/rasnif = 1, /singleton/reagent/water = 5) result_amount = 6 //transmutation /datum/chemical_reaction/transmutation_silver name = "Transmutation: Silver" id = "transmutation_silver" result = null required_reagents = list(/singleton/reagent/iron = 5, /singleton/reagent/copper = 5) catalysts = list(/singleton/reagent/philosopher_stone = 1) result_amount = 1 /datum/chemical_reaction/transmutation_silver/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/stack/material/silver(location) return /datum/chemical_reaction/transmutation_gold name = "Transmutation: Gold" id = "transmutation_gold" result = null required_reagents = list(/singleton/reagent/aluminum = 5, /singleton/reagent/silver = 5) catalysts = list(/singleton/reagent/philosopher_stone = 1) result_amount = 1 /datum/chemical_reaction/transmutation_gold/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/stack/material/gold(location) return /datum/chemical_reaction/transmutation_diamond name = "Transmutation: Diamond" id = "transmutation_diamond" result = null required_reagents = list(/singleton/reagent/carbon = 5, /singleton/reagent/gold = 5) catalysts = list(/singleton/reagent/philosopher_stone = 1) result_amount = 1 /datum/chemical_reaction/transmutation_diamond/on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/stack/material/diamond(location) return //Temperature Additions /datum/chemical_reaction/water_to_ice name = "Water to Ice" id = "water_to_ice" result = /singleton/reagent/drink/ice required_reagents = list(/singleton/reagent/water = 1) required_temperature_max = T0C result_amount = 1 mix_message = "The water freezes." reaction_sound = "" /datum/chemical_reaction/ice_to_water name = "Ice to Water" id = "ice_to_water" result = /singleton/reagent/water required_reagents = list(/singleton/reagent/drink/ice = 1) required_temperature_min = T0C + 25 // stop-gap fix to allow recipes requiring ice to be made without breaking the server with HALF_LIFE result_amount = 1 mix_message = "The ice melts." reaction_sound = "" /datum/chemical_reaction/pyrosilicate name = "Pyrosilicate" id = "pyrosilicate" result = /singleton/reagent/pyrosilicate result_amount = 4 required_reagents = list(/singleton/reagent/silicate = 1, /singleton/reagent/acid = 1, /singleton/reagent/hydrazine = 1, /singleton/reagent/iron = 1) /datum/chemical_reaction/cryosilicate name = "Cryosilicate" id = "cryosilicate" result = /singleton/reagent/cryosilicate result_amount = 3 required_reagents = list(/singleton/reagent/silicate = 1, /singleton/reagent/drink/ice = 1, /singleton/reagent/sodium = 1) //WATER /datum/chemical_reaction/cryosilicate_cooling_water name = "Cryosilicate Cooling Water" id = "cryosilicate_cooling_water" result = null result_amount = 1 required_reagents = list(/singleton/reagent/cryosilicate = 1) inhibitors = list(/singleton/reagent/pyrosilicate = 1) catalysts = list(/singleton/reagent/water = 1) mix_message = "The solution begins to freeze." /datum/chemical_reaction/cryosilicate_cooling_water/on_reaction(var/datum/reagents/holder, var/created_volume, var/created_thermal_energy) holder.del_reagent(/singleton/reagent/cryosilicate) holder.add_thermal_energy(-created_volume*500) //ICE /datum/chemical_reaction/cryosilicate_cooling_ice name = "Cryosilicate Cooling Ice" id = "cryosilicate_cooling_ice" result = null result_amount = 1 required_reagents = list(/singleton/reagent/cryosilicate = 1) inhibitors = list(/singleton/reagent/pyrosilicate = 1) catalysts = list(/singleton/reagent/drink/ice = 1) mix_message = "The solution begins to freeze." /datum/chemical_reaction/cryosilicate_cooling_ice/on_reaction(var/datum/reagents/holder, var/created_volume, var/created_thermal_energy) holder.del_reagent(/singleton/reagent/cryosilicate) holder.add_thermal_energy(-created_volume*500) /datum/chemical_reaction/pyrosilicate_heating name = "Pyrosilicate Heating" id = "pyrosilicate_heating" result = null result_amount = 1 required_reagents = list(/singleton/reagent/pyrosilicate = 1) inhibitors = list(/singleton/reagent/cryosilicate = 1) catalysts = list(/singleton/reagent/sodiumchloride = 1) /datum/chemical_reaction/pyrosilicate_heating/on_reaction(var/datum/reagents/holder, var/created_volume) holder.del_reagent(/singleton/reagent/pyrosilicate) holder.add_thermal_energy(created_volume*1000) /datum/chemical_reaction/pyrosilicate_cryosilicate name = "Pyrosilicate Cryosilicate Reaction" id = "pyrosilicate_cryosilicate" result = null required_reagents = list(/singleton/reagent/pyrosilicate = 1, /singleton/reagent/cryosilicate = 1) required_temperature_min = T0C //Does not react when below these temperatures. result_amount = 1 /datum/chemical_reaction/pyrosilicate_cryosilicate/on_reaction(var/datum/reagents/holder, var/created_volume, var/created_thermal_energy) if(created_volume) var/turf/simulated/floor/T = get_turf(holder.my_atom.loc) if(istype(T)) T.assume_gas(GAS_OXYGEN, created_volume*10, (created_thermal_energy/created_volume) ) /datum/chemical_reaction/rmt name = "RMT" id = "rmt" result = /singleton/reagent/rmt result_amount = 2 required_reagents = list(/singleton/reagent/potassium = 1, /singleton/reagent/inaprovaline = 1) /datum/chemical_reaction/gunpowder name = "Gunpowder" id = "gunpowder" result = /singleton/reagent/gunpowder result_amount = 1 required_reagents = list(/singleton/reagent/sulfur = 1, /singleton/reagent/carbon = 1, /singleton/reagent/potassium = 1) //Coffee expansion //======================= /datum/chemical_reaction/drink/coffee name = "Coffee" id = "coffee" result = /singleton/reagent/drink/coffee required_reagents = list(/singleton/reagent/nutriment/coffeegrounds = 1, /singleton/reagent/water = 5) result_amount = 5 /datum/chemical_reaction/drink/espresso name = "Espresso" id = "espresso" result = /singleton/reagent/drink/coffee/espresso required_reagents = list(/singleton/reagent/nutriment/darkcoffeegrounds = 1, /singleton/reagent/water = 5) result_amount = 5 /datum/chemical_reaction/nutriment/darkcoffeegrounds name = "Rich Coffee Grounds" id = "rich_coffee_grounds" result = /singleton/reagent/nutriment/darkcoffeegrounds required_reagents = list(/singleton/reagent/nutriment/coffeegrounds = 1) required_temperature_min = T0C + 210 result_amount = 1 /datum/chemical_reaction/caramelisation name = "Caramelised Sugar" result = /singleton/reagent/nutriment/caramel required_reagents = list(/singleton/reagent/sugar = 1) result_amount = 1 required_temperature_min = T0C + 82 // no maximum! i mean technically it should burn at some point but ehh mix_message = "The sugar melts into a sticky, brown liquid." /datum/chemical_reaction/caramelsauce name = "Caramel Sauce" id = "caramelsauce" result = /singleton/reagent/drink/caramel required_reagents = list(/singleton/reagent/nutriment/caramel = 2, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/condiment/syrup_simple = 2) result_amount = 5 mix_message = "The solution thickens into a glossy, brown sauce." required_temperature_max = T0C + 82 // You don't want the syrup to crystallise/caramelise; that'd just make more caramel... /datum/chemical_reaction/simplesyrup name = "Simple Syrup" id = "simplesyrup" result = /singleton/reagent/condiment/syrup_simple required_reagents = list(/singleton/reagent/sugar = 2, /singleton/reagent/water = 2) // simple syrup, the sugar dissolves and doesn't change the volume too much result_amount = 2 required_temperature_min = T0C + 30 required_temperature_max = T0C + 100 // Sugar caramelises after 82C, water boils at 100C. mix_message = "The sugar dissolves into the solution." /datum/chemical_reaction/vanillasyrup name = "Vanilla Syrup" id = "vanillasyrup" result = /singleton/reagent/condiment/syrup_vanilla required_reagents = list(/singleton/reagent/nutriment/vanilla = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 mix_message = "The solution takes on a pale yellow hue and the aroma of vanilla." /datum/chemical_reaction/caramelsyrup name = "Caramel Syrup" id = "caramelsyrup" result = /singleton/reagent/condiment/syrup_caramel required_reagents = list(/singleton/reagent/nutriment/caramel = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 mix_message = "The solution takes on a light brown hue and the aroma of caramel." /datum/chemical_reaction/chocosyrup name = "Chocolate Syrup" id = "chocolatesyrup" result = /singleton/reagent/condiment/syrup_chocolate required_reagents = list(/singleton/reagent/nutriment/coco = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 mix_message = "The solution takes on a brown hue and the aroma of chocolate." /datum/chemical_reaction/pumpkinsyrup name = "Pumpkin Spice Syrup" id = "pumpkinsyrup" result = /singleton/reagent/condiment/syrup_pumpkin required_reagents = list(/singleton/reagent/spacespice/pumpkinspice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 mix_message = "The solution takes on an orange hue and the aroma of pumpkin spice." /datum/chemical_reaction/mintsyrup name = "Mint Syrup" id = "mintsyrup" result = /singleton/reagent/drink/mintsyrup required_reagents = list(/singleton/reagent/nutriment/mint = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 // /datum/chemical_reaction/berrysyrup name = "Berry Syrup" id = "berrysyrup" result = /singleton/reagent/condiment/syrup_berry required_reagents = list(/singleton/reagent/drink/berryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/strawberrysyrup name = "Strawberry Syrup" id = "strawberrysyrup" result = /singleton/reagent/condiment/syrup_strawberry required_reagents = list(/singleton/reagent/drink/strawberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/blueberrysyrup name = "Blueberry Syrup" id = "blueberrysyrup" result = /singleton/reagent/condiment/syrup_blueberry required_reagents = list(/singleton/reagent/drink/blueberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/raspberrysyrup name = "Raspberry Syrup" id = "raspberrysyrup" result = /singleton/reagent/condiment/syrup_raspberry required_reagents = list(/singleton/reagent/drink/raspberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/blueraspberrysyrup name = "Blue Raspberry Syrup" id = "blueraspberrysyrup" result = /singleton/reagent/condiment/syrup_blueraspberry required_reagents = list(/singleton/reagent/drink/blueraspberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/blackraspberrysyrup name = "Black Raspberry Syrup" id = "blackraspberrysyrup" result = /singleton/reagent/condiment/syrup_blackraspberry required_reagents = list(/singleton/reagent/drink/blackraspberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/poisonberrysyrup name = "Poison Berry Syrup" id = "poisonberrysyrup" result = /singleton/reagent/condiment/syrup_poisonberry required_reagents = list(/singleton/reagent/toxin/poisonberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/deathberrysyrup name = "Death Berry Syrup" id = "deathberrysyrup" result = /singleton/reagent/condiment/syrup_deathberry required_reagents = list(/singleton/reagent/toxin/deathberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/glowberrysyrup name = "Glowberry Syrup" id = "glowberrysyrup" result = /singleton/reagent/condiment/syrup_glowberry required_reagents = list(/singleton/reagent/drink/glowberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/ylphaberrysyrup name = "Ylpha Berry Syrup" id = "ylphaberrysyrup" result = /singleton/reagent/condiment/syrup_ylphaberry required_reagents = list(/singleton/reagent/drink/ylphaberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 /datum/chemical_reaction/dirtberrysyrup name = "Dirt Berry Syrup" id = "dirtberrysyrup" result = /singleton/reagent/condiment/syrup_dirtberry required_reagents = list(/singleton/reagent/drink/dirtberryjuice = 2, /singleton/reagent/condiment/syrup_simple = 3) result_amount = 5 // /datum/chemical_reaction/drink/cuba_libre name = "Cuba Libre" id = "cubalibre" result = /singleton/reagent/alcohol/cubalibre required_reagents = list(/singleton/reagent/alcohol/rumandcola = 2, /singleton/reagent/drink/limejuice = 1) result_amount = 3 /datum/chemical_reaction/drink/fernet_con_coca name = "Fernet con Coca" id = "fernetconcoca" result = /singleton/reagent/alcohol/fernet_con_coca required_reagents = list(/singleton/reagent/drink/space_cola = 2, /singleton/reagent/alcohol/fernet = 1) result_amount = 2 /datum/chemical_reaction/drink/solarian_white name = "Solarian White" id = "solarian_white" result = /singleton/reagent/alcohol/solarian_white required_reagents = list(/singleton/reagent/alcohol/vodka = 1, /singleton/reagent/drink/milk/cream = 1, /singleton/reagent/drink/limejuice =1) result_amount = 3 /datum/chemical_reaction/drink/solarian_marine name = "Solarian Marine" id = "solarian_marine" result = /singleton/reagent/alcohol/solarian_marine required_reagents = list(/singleton/reagent/drink/tea/securitea = 1, /singleton/reagent/alcohol/whiskey = 1) result_amount = 2 /datum/chemical_reaction/drink/cloudyeridani name = "Cloudy Eridani" id = "cloudyeridani" result = /singleton/reagent/alcohol/cloudyeridani required_reagents = list(/singleton/reagent/alcohol/sake = 1, /singleton/reagent/drink/tea/greentea = 1, /singleton/reagent/drink/milk/soymilk = 1) result_amount = 3 /datum/chemical_reaction/drink/djinntea name = "Djinn Tea" id = "djinntea" result = /singleton/reagent/alcohol/djinntea required_reagents = list(/singleton/reagent/drink/dynjuice/cold = 1, /singleton/reagent/alcohol/gin = 1) result_amount = 2 /datum/chemical_reaction/drink/permanent_revolution name = "Permanent Revolution" id = "permanent_revolution" result = /singleton/reagent/alcohol/permanent_revolution required_reagents = list(/singleton/reagent/alcohol/absinthe = 1, /singleton/reagent/alcohol/vodka/mushroom = 1) result_amount = 2 /datum/chemical_reaction/drink/staghunt name = "Stag Hunt" result = /singleton/reagent/alcohol/staghunt required_reagents = list(/singleton/reagent/drink/icetea = 2, /singleton/reagent/alcohol/twentytwo = 2, /singleton/reagent/drink/lemonjuice = 1) result_amount = 5 /datum/chemical_reaction/drink/internationale name = "Internationale" id = "internationale" result = /singleton/reagent/alcohol/internationale required_reagents = list(/singleton/reagent/alcohol/victorygin = 1, /singleton/reagent/alcohol/vodka/mushroom = 1) result_amount = 2 /datum/chemical_reaction/drink/diona_mama name = "Diona Mama" id = "diona_mama" result = /singleton/reagent/alcohol/diona_mama required_reagents = list(/singleton/reagent/alcohol/absinthe = 2, /singleton/reagent/drink/limejuice = 2, /singleton/reagent/radium = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/jovian_storm name = "Jovian Storm" id = "jovian_storm" result = /singleton/reagent/alcohol/jovian_storm required_reagents = list(/singleton/reagent/alcohol/rum = 2, /singleton/reagent/drink/grenadine = 2, /singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/drink/ice = 1) result_amount = 6 /datum/chemical_reaction/drink/primeminister name = "Prime Minister" id = "primeminister" result = /singleton/reagent/alcohol/primeminister required_reagents = list(/singleton/reagent/alcohol/rum = 4, /singleton/reagent/alcohol/vermouth = 1, /singleton/reagent/drink/grenadine = 1) result_amount = 6 /datum/chemical_reaction/drink/peacetreaty name = "Peace Treaty" id = "peacetreaty" result = /singleton/reagent/alcohol/peacetreaty required_reagents = list(/singleton/reagent/alcohol/victorygin = 1, /singleton/reagent/alcohol/messa_mead = 1, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/fiscream name = "Fisanduhian Cream" id = "fiscream" result = /singleton/reagent/alcohol/fiscream required_reagents = list(/singleton/reagent/alcohol/fireball = 2, /singleton/reagent/drink/milk/cream = 1) result_amount = 3 /datum/chemical_reaction/drink/fiscoffee name = "Fisanduhian Coffee" id = "fiscoffee" result = /singleton/reagent/alcohol/coffee/fiscoffee required_reagents = list(/singleton/reagent/alcohol/fiscream = 1, /singleton/reagent/drink/coffee = 1) result_amount = 2 /datum/chemical_reaction/drink/fisfirebomb name = "Fisanduhian Firebomb" id = "fiscarbomb" result = /singleton/reagent/alcohol/fisfirebomb required_reagents = list(/singleton/reagent/alcohol/ale = 1, /singleton/reagent/alcohol/fiscream = 1) result_amount = 2 /datum/chemical_reaction/drink/veterans_choice name = "Veteran's Choice" id = "veterans_choice" result = /singleton/reagent/alcohol/veterans_choice required_reagents = list(/singleton/reagent/alcohol/messa_mead = 1, /singleton/reagent/gunpowder = 1) result_amount = 2 /datum/chemical_reaction/drink/mutthir name = "Mutthir" id = "mutthir" result = /singleton/reagent/drink/milk/adhomai/mutthir required_reagents = list(/singleton/reagent/drink/milk/adhomai = 1, /singleton/reagent/sugar = 1) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 2 /datum/chemical_reaction/drink/treebark_firewater name = "Tree-Bark Firewater" id = "treebark_firewater" result = /singleton/reagent/alcohol/treebark_firewater required_reagents = list(/singleton/reagent/drink/earthenrootjuice = 1, /singleton/reagent/sugar = 1, /singleton/reagent/woodpulp = 1) catalysts = list(/singleton/reagent/enzyme = 5) result_amount = 3 /datum/chemical_reaction/drink/caprician_coffee name = "Caprician Coffee" id = "caprician_coffee" result = /singleton/reagent/drink/toothpaste/caprician_coffee required_reagents = list(/singleton/reagent/drink/toothpaste = 1, /singleton/reagent/drink/coffee = 2) result_amount = 3 /datum/chemical_reaction/drink/mojito name = "Mojito" id = "mojito" result = /singleton/reagent/alcohol/mojito required_reagents = list(/singleton/reagent/drink/mintsyrup = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/alcohol/rum = 1) result_amount = 3 /datum/chemical_reaction/drink/zavodskoi_mule name = "Zavodskoi Mule" id = "zavodskoi_mule" result = /singleton/reagent/alcohol/zavdoskoi_mule required_reagents = list(/singleton/reagent/alcohol/vodka = 2, /singleton/reagent/drink/lemonjuice = 1) result_amount = 3 /datum/chemical_reaction/drink/pina_colada name = "Pina Colada" id = "pina_colada" result = /singleton/reagent/alcohol/pina_colada required_reagents = list(/singleton/reagent/drink/pineapplejuice = 1, /singleton/reagent/alcohol/rum = 2) result_amount = 3 /datum/chemical_reaction/drink/gibbfloats name = "Gibb Floats" id = "gibbfloats" result = /singleton/reagent/drink/gibbfloats required_reagents = list(/singleton/reagent/drink/dr_gibb = 1, /singleton/reagent/drink/ice = 1, /singleton/reagent/drink/milk/cream = 1) result_amount = 3 /datum/chemical_reaction/drink/pulque_dyn name = "dyn pulque" id = "pulque_dyn" result = /singleton/reagent/alcohol/pulque/dyn required_reagents = list(/singleton/reagent/alcohol/pulque = 1, /singleton/reagent/drink/dynjuice = 1) result_amount = 2 /datum/chemical_reaction/drink/pulque_banana name = "banana pulque" id = "pulque_banana" result = /singleton/reagent/alcohol/pulque/banana required_reagents = list(/singleton/reagent/alcohol/pulque = 1, /singleton/reagent/drink/banana = 1) result_amount = 2 /datum/chemical_reaction/drink/pulque_berry name = "berry pulque" id = "pulque_berry" result = /singleton/reagent/alcohol/pulque/berry required_reagents = list(/singleton/reagent/alcohol/pulque = 1, /singleton/reagent/drink/berryjuice = 1) result_amount = 2 /datum/chemical_reaction/drink/pulque_coffee name = "coffee pulque" id = "pulque_coffee" result = /singleton/reagent/alcohol/pulque/coffee required_reagents = list(/singleton/reagent/alcohol/pulque = 1, /singleton/reagent/drink/coffee = 1) result_amount = 2 /datum/chemical_reaction/drink/pulque_butanol name = "xuizi pulque" id = "pulque_butanol" result = /singleton/reagent/alcohol/butanol/pulque required_reagents = list(/singleton/reagent/alcohol/pulque = 1, /singleton/reagent/alcohol/butanol/xuizijuice = 1) result_amount = 2 /datum/chemical_reaction/drink/ichor name = "xsain ichor" id = "ichor" result = /singleton/reagent/drink/toothpaste/ichor required_reagents = list(/singleton/reagent/alcohol/butanol/xuizijuice = 1, /singleton/reagent/kois/clean = 1, /singleton/reagent/drink/toothpaste = 1) result_amount = 3 // dominian cocktails - Glory to Her name! Glory to Her liquor! /datum/chemical_reaction/drink/universalist name = "the universalist" id = "universalist" result = /singleton/reagent/alcohol/universalist required_reagents = list(/singleton/reagent/alcohol/wine/dominian = 1, /singleton/reagent/alcohol/beepsky_smash = 1) result_amount = 2 /datum/chemical_reaction/drink/martyrgarita name = "martyrgarita" id = "martyrgarita" result = /singleton/reagent/alcohol/martyrgarita required_reagents = list(/singleton/reagent/alcohol/wine/dominian = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/water/holywater = 1) result_amount = 3 /datum/chemical_reaction/drink/ceasefire name = "ceasefire" id = "ceasefire" result = /singleton/reagent/alcohol/ceasefire required_reagents = list(/singleton/reagent/alcohol/wine/dominian = 1, /singleton/reagent/alcohol/kvass = 1, /singleton/reagent/drink/sodawater = 1) result_amount = 3 /datum/chemical_reaction/drink/scramegg name = "scramegg" id = "scramegg" result = /singleton/reagent/alcohol/scramegg required_reagents = list(/singleton/reagent/alcohol/kvass = 25, /singleton/reagent/nutriment/protein/egg = 3) result_amount = 25 /datum/chemical_reaction/drink/govinexile name = "government in exile" id = "governmentinexile" result = /singleton/reagent/alcohol/governmentinexile required_reagents = list(/singleton/reagent/alcohol/kvass = 1, /singleton/reagent/alcohol/permanent_revolution = 1) result_amount = 2 /datum/chemical_reaction/drink/instrument name = "instrument of surrender" id = "instrumentofsurrender" result = /singleton/reagent/alcohol/instrument required_reagents = list(/singleton/reagent/alcohol/wine/algae = 1, /singleton/reagent/alcohol/kvass = 1, /singleton/reagent/alcohol/tarasun = 1) result_amount = 3 /datum/chemical_reaction/drink/armsalchemy name = "armsman's alchemy" id = "armsalchemy" result = /singleton/reagent/alcohol/armsalchemy required_reagents = list(/singleton/reagent/alcohol/wine/algae = 1, /singleton/reagent/drink/zorasoda/klax = 1) result_amount = 2 /datum/chemical_reaction/drink/inquisitrix name = "inquisitrix" id = "inquisitrix" result = /singleton/reagent/alcohol/inquisitrix required_reagents = list(/singleton/reagent/alcohol/wine/algae = 1, /singleton/reagent/alcohol/tarasun = 1, /singleton/reagent/drink/dr_gibb = 1) result_amount = 3 /datum/chemical_reaction/drink/songwater name = "songwater" id = "songwater" result = /singleton/reagent/alcohol/songwater required_reagents = list(/singleton/reagent/alcohol/tarasun = 5, /singleton/reagent/spacespice = 1, /singleton/reagent/blackpepper = 1) result_amount = 5 /datum/chemical_reaction/drink/threefold name = "threefold" id = "threefold" result = /singleton/reagent/alcohol/threefold required_reagents = list(/singleton/reagent/alcohol/wine/algae = 1, /singleton/reagent/alcohol/wine/valokki = 1, /singleton/reagent/alcohol/wine/dominian =1) result_amount = 3 /datum/chemical_reaction/drink/godhead name = "godhead" id = "godhead" result = /singleton/reagent/alcohol/godhead required_reagents = list(/singleton/reagent/alcohol/wine/dominian = 1, /singleton/reagent/alcohol/kvass = 1, /singleton/reagent/alcohol/tarasun = 1) result_amount = 3 /datum/chemical_reaction/drink/tribunal name = "tribunal" id = "tribunal" result = /singleton/reagent/alcohol/tribunal required_reagents = list(/singleton/reagent/alcohol/threefold = 1, /singleton/reagent/alcohol/godhead = 1, /singleton/reagent/water/holywater = 1) result_amount = 3 /datum/chemical_reaction/drink/witchspirit name = "witch-spirit" id = "witchspirit" result = /singleton/reagent/alcohol/witchspirit required_reagents = list(/singleton/reagent/alcohol/wine/algae = 1, /singleton/reagent/alcohol/gin = 1, /singleton/reagent/alcohol/limoncello = 1, /singleton/reagent/alcohol/melonliquor = 1) result_amount = 4 //boba drinks /datum/chemical_reaction/drink/boba_tea name = "boba tea" id = "bobatea" result = /singleton/reagent/drink/boba_tea required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/milk/soymilk = 1, /singleton/reagent/drink/ice = 1, /singleton/reagent/drink/boba = 1) result_amount = 6 /datum/chemical_reaction/drink/boba_tea_alt name = "boba tea" id = "bobatea" result = /singleton/reagent/drink/boba_tea required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/milk = 1, /singleton/reagent/drink/ice = 1, /singleton/reagent/drink/boba = 1) result_amount = 6 /datum/chemical_reaction/drink/lemon_lime_boba name = "lemon lime boba" id = "boba_lemonlime" result = /singleton/reagent/drink/lemon_lime_boba required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/lemonjuice = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/boba = 1) result_amount = 6 /datum/chemical_reaction/drink/boba_strawberry name = "strawberry boba" id = "boba_strawberry" result = /singleton/reagent/drink/boba_strawberry required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/milk/strawberry = 2, /singleton/reagent/drink/boba = 1) result_amount = 6 /datum/chemical_reaction/drink/boba_banana name = "banana boba" id = "boba_banana" result = /singleton/reagent/drink/boba_banana required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/banana = 1, /singleton/reagent/drink/milk = 1, /singleton/reagent/drink/boba = 1) result_amount = 6 /datum/chemical_reaction/drink/summertime_boba name = "summertime boba" id = "boba_melonlime" result = /singleton/reagent/drink/summertime_boba required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/drink/watermelonjuice = 1, /singleton/reagent/drink/limejuice = 1, /singleton/reagent/drink/boba = 1) result_amount = 6 /datum/chemical_reaction/drink/lovebug_boba name = "lovebug boba" id = "boba_lovebug" result = /singleton/reagent/drink/lovebug_boba required_reagents = list(/singleton/reagent/drink/icetea = 3, /singleton/reagent/nutriment/cherryjelly = 1, /singleton/reagent/drink/strawberryjuice = 1, /singleton/reagent/drink/boba = 1) result_amount = 6 /datum/chemical_reaction/drink/dyn_boba name = "dyn boba" id = "boba_dyn" result = /singleton/reagent/drink/dyn_boba required_reagents = list(/singleton/reagent/drink/dynjuice/cold = 5, /singleton/reagent/drink/boba = 1) result_amount = 6 // Other /datum/chemical_reaction/gravy name = "gravy" id = "gravy" result = /singleton/reagent/condiment/gravy required_reagents = list(/singleton/reagent/nutriment/triglyceride = 2, /singleton/reagent/water = 5, /singleton/reagent/sodiumchloride = 1, /singleton/reagent/blackpepper = 1, /singleton/reagent/nutriment/flour = 5) result_amount = 10 /datum/chemical_reaction/drink/chocolate_soda name = "Chocolate Soda" id = "chocolate_soda" result = /singleton/reagent/drink/chocolate_soda required_reagents = list(/singleton/reagent/nutriment/coco = 1, /singleton/reagent/drink/space_cola = 1, /singleton/reagent/drink/sodawater = 3) result_amount = 5