Merge pull request #2929 from Anewbe/taste

Ports taste from Bay
This commit is contained in:
Anewbe
2017-01-28 21:06:21 -06:00
committed by GitHub
16 changed files with 670 additions and 141 deletions
+5 -1
View File
@@ -52,9 +52,13 @@
var/list/reagent_data = seed.chems[rid]
if(reagent_data && reagent_data.len)
var/rtotal = reagent_data[1]
var/list/data = list()
if(reagent_data.len > 1 && potency > 0)
rtotal += round(potency/reagent_data[2])
reagents.add_reagent(rid,max(1,rtotal))
if(rid == "nutriment")
data[seed.seed_name] = max(1,rtotal)
reagents.add_reagent(rid,max(1,rtotal),data)
update_desc()
if(reagents.total_volume > 0)
bitesize = 1+round(reagents.total_volume / 2, 1)
@@ -25,3 +25,8 @@
var/pulse = PULSE_NORM //current pulse level
var/does_not_breathe = 0 //Used for specific mobs that can't take advantage of the species flags (changelings)
//these two help govern taste. The first is the last time a taste message was shown to the plaer.
//the second is the message in question.
var/last_taste_time = 0
var/last_taste_text = ""
@@ -36,6 +36,8 @@
var/blood_volume = 560 // Initial blood volume.
var/hunger_factor = 0.05 // Multiplier for hunger.
var/taste_sensitivity = TASTE_NORMAL // How sensitive the species is to minute tastes.
var/min_age = 17
var/max_age = 70
+60
View File
@@ -0,0 +1,60 @@
/mob/living/carbon/proc/ingest(var/datum/reagents/from, var/datum/reagents/target, var/amount = 1, var/multiplier = 1, var/copy = 0) //we kind of 'sneak' a proc in here for ingesting stuff so we can play with it.
if(last_taste_time + 50 < world.time)
var/datum/reagents/temp = new(amount) //temporary holder used to analyse what gets transfered.
from.trans_to_holder(temp, amount, multiplier, 1)
var/text_output = temp.generate_taste_message(src)
if(text_output != last_taste_text || last_taste_time + 100 < world.time) //We dont want to spam the same message over and over again at the person. Give it a bit of a buffer.
to_chat(src, "<span class='notice'>You can taste [text_output].</span>")//no taste means there are too many tastes and not enough flavor.
last_taste_time = world.time
last_taste_text = text_output
return from.trans_to_holder(target,amount,multiplier,copy) //complete transfer
/* what this does:
catalogue the 'taste strength' of each one
calculate text size per text.
*/
/datum/reagents/proc/generate_taste_message(mob/living/carbon/taster = null)
var/minimum_percent = 15
if(ishuman(taster))
var/mob/living/carbon/human/H = taster
minimum_percent = round(15/ (H.isSynthetic() ? TASTE_DULL : H.species.taste_sensitivity))
var/list/out = list()
var/list/tastes = list() //descriptor = strength
if(minimum_percent <= 100)
for(var/datum/reagent/R in reagent_list)
if(!R.taste_mult)
continue
if(R.id == "nutriment") //this is ugly but apparently only nutriment (not subtypes) has taste data TODO figure out why
var/list/taste_data = R.get_data()
for(var/taste in taste_data)
if(taste in tastes)
tastes[taste] += taste_data[taste]
else
tastes[taste] = taste_data[taste]
else
var/taste_desc = R.taste_description
var/taste_amount = get_reagent_amount(R.id) * R.taste_mult
if(R.taste_description in tastes)
tastes[taste_desc] += taste_amount
else
tastes[taste_desc] = taste_amount
//deal with percentages
var/total_taste = 0
for(var/taste_desc in tastes)
total_taste += tastes[taste_desc]
for(var/taste_desc in tastes)
var/percent = tastes[taste_desc]/total_taste * 100
if(percent < minimum_percent)
continue
var/intensity_desc = "a hint of"
if(percent > minimum_percent * 2 || percent == 100)
intensity_desc = "the flavor of"
else if(percent > minimum_percent * 3)
intensity_desc = "the strong flavor of"
out += "[intensity_desc] [taste_desc]"
return english_list(out, "something indescribable")
+1 -1
View File
@@ -383,7 +383,7 @@
return trans_to_holder(R, amount, multiplier, copy)
if(type == CHEM_INGEST)
var/datum/reagents/R = C.ingested
return trans_to_holder(R, amount, multiplier, copy)
return C.ingest(src, R, amount, multiplier, copy)
if(type == CHEM_TOUCH)
var/datum/reagents/R = C.touching
return trans_to_holder(R, amount, multiplier, copy)
@@ -14,6 +14,8 @@
var/name = "Reagent"
var/id = "reagent"
var/description = "A non-descript chemical."
var/taste_description = "bitterness"
var/taste_mult = 1 //how this taste compares to others. Higher values means it is more noticable
var/datum/reagents/holder = null
var/reagent_state = SOLID
var/list/data = null
@@ -2,6 +2,8 @@
data = new/list("donor" = null, "viruses" = null, "species" = "Human", "blood_DNA" = null, "blood_type" = null, "blood_colour" = "#A10808", "resistances" = null, "trace_chem" = null, "antibodies" = list())
name = "Blood"
id = "blood"
taste_description = "iron"
taste_mult = 1.3
reagent_state = LIQUID
metabolism = REM * 5
mrate_static = TRUE
@@ -74,6 +76,7 @@
/datum/reagent/antibodies
data = list("antibodies"=list())
name = "Antibodies"
taste_description = "slime"
id = "antibodies"
reagent_state = LIQUID
color = "#0050F0"
@@ -88,6 +91,7 @@
/datum/reagent/water
name = "Water"
id = "water"
taste_description = "water"
description = "A ubiquitous chemical substance that is composed of hydrogen and oxygen."
reagent_state = LIQUID
color = "#0064C877"
@@ -150,6 +154,7 @@
name = "Welding fuel"
id = "fuel"
description = "Required for welders. Flamable."
taste_description = "gross metal"
reagent_state = LIQUID
color = "#660000"
@@ -2,13 +2,17 @@
name = "Aluminum"
id = "aluminum"
description = "A silvery white and ductile member of the boron group of chemical elements."
taste_description = "metal"
taste_mult = 1.1
reagent_state = SOLID
color = "#A8A8A8"
/datum/reagent/carbon
name = "Carbon"
id = "carbon"
description = "A chemical element, the builing block of life."
description = "A chemical element, the building block of life."
taste_description = "sour chalk"
taste_mult = 1.5
reagent_state = SOLID
color = "#1C1300"
ingest_met = REM * 5
@@ -37,6 +41,7 @@
name = "Chlorine"
id = "chlorine"
description = "A chemical element with a characteristic odour."
taste_description = "pool water"
reagent_state = GAS
color = "#808080"
@@ -50,12 +55,14 @@
name = "Copper"
id = "copper"
description = "A highly ductile metal."
taste_description = "pennies"
color = "#6E3B08"
/datum/reagent/ethanol
name = "Ethanol" //Parent class for all alcoholic reagents.
id = "ethanol"
description = "A well-known alcohol with a variety of applications."
taste_description = "pure alcohol"
reagent_state = LIQUID
color = "#404030"
var/nutriment_factor = 0
@@ -142,6 +149,7 @@
name = "Fluorine"
id = "fluorine"
description = "A highly-reactive chemical element."
taste_description = "acid"
reagent_state = GAS
color = "#808080"
@@ -155,6 +163,7 @@
name = "Hydrogen"
id = "hydrogen"
description = "A colorless, odorless, nonmetallic, tasteless, highly combustible diatomic gas."
taste_mult = 0 //no taste
reagent_state = GAS
color = "#808080"
@@ -162,6 +171,7 @@
name = "Iron"
id = "iron"
description = "Pure iron is a metal."
taste_description = "metal"
reagent_state = SOLID
color = "#353535"
@@ -173,6 +183,7 @@
name = "Lithium"
id = "lithium"
description = "A chemical element, used as antidepressant."
taste_description = "metal"
reagent_state = SOLID
color = "#808080"
@@ -187,6 +198,7 @@
name = "Mercury"
id = "mercury"
description = "A chemical element."
taste_mult = 0 //mercury apparently is tasteless. IDK
reagent_state = LIQUID
color = "#484848"
@@ -202,6 +214,7 @@
name = "Nitrogen"
id = "nitrogen"
description = "A colorless, odorless, tasteless gas."
taste_mult = 0 //no taste
reagent_state = GAS
color = "#808080"
@@ -209,6 +222,7 @@
name = "Oxygen"
id = "oxygen"
description = "A colorless, odorless gas."
taste_mult = 0
reagent_state = GAS
color = "#808080"
@@ -220,6 +234,7 @@
name = "Phosphorus"
id = "phosphorus"
description = "A chemical element, the backbone of biological energy carriers."
taste_description = "vinegar"
reagent_state = SOLID
color = "#832828"
@@ -227,6 +242,7 @@
name = "Potassium"
id = "potassium"
description = "A soft, low-melting solid that can easily be cut with a knife. Reacts violently with water."
taste_description = "sweetness" //potassium is bitter in higher doses but sweet in lower ones.
reagent_state = SOLID
color = "#A0A0A0"
@@ -234,6 +250,7 @@
name = "Radium"
id = "radium"
description = "Radium is an alkaline earth metal. It is extremely radioactive."
taste_mult = 0 //Apparently radium is tasteless
reagent_state = SOLID
color = "#C7C7C7"
@@ -266,6 +283,7 @@
name = "Sulphuric acid"
id = "sacid"
description = "A very corrosive mineral acid with the molecular formula H2SO4."
taste_description = "acid"
reagent_state = LIQUID
color = "#DB5008"
metabolism = REM * 2
@@ -352,6 +370,7 @@
name = "Silicon"
id = "silicon"
description = "A tetravalent metalloid, silicon is less reactive than its chemical analog carbon."
taste_mult = 0
reagent_state = SOLID
color = "#A8A8A8"
@@ -359,6 +378,7 @@
name = "Sodium"
id = "sodium"
description = "A chemical element, readily reacts with water."
taste_description = "salty metal"
reagent_state = SOLID
color = "#808080"
@@ -366,6 +386,8 @@
name = "Sugar"
id = "sugar"
description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste."
taste_description = "sugar"
taste_mult = 1.8
reagent_state = SOLID
color = "#FFFFFF"
@@ -398,6 +420,7 @@
name = "Sulfur"
id = "sulfur"
description = "A chemical element with a pungent smell."
taste_description = "old eggs"
reagent_state = SOLID
color = "#BF8C00"
@@ -405,5 +428,7 @@
name = "Tungsten"
id = "tungsten"
description = "A chemical element, and a strong oxidising agent."
taste_description = "metal"
taste_mult = 0 //no taste
reagent_state = SOLID
color = "#DCDCDC"
File diff suppressed because it is too large Load Diff
@@ -4,6 +4,7 @@
name = "Inaprovaline"
id = "inaprovaline"
description = "Inaprovaline is a synaptic stimulant and cardiostimulant. Commonly used to stabilize patients."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#00BFFF"
overdose = REAGENTS_OVERDOSE * 2
@@ -20,6 +21,8 @@
name = "Bicaridine"
id = "bicaridine"
description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma."
taste_description = "bitterness"
taste_mult = 3
reagent_state = LIQUID
color = "#BF0000"
overdose = REAGENTS_OVERDOSE
@@ -33,6 +36,7 @@
name = "Kelotane"
id = "kelotane"
description = "Kelotane is a drug used to treat burns."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#FFA800"
overdose = REAGENTS_OVERDOSE
@@ -46,6 +50,8 @@
name = "Dermaline"
id = "dermaline"
description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue."
taste_description = "bitterness"
taste_mult = 1.5
reagent_state = LIQUID
color = "#FF8000"
overdose = REAGENTS_OVERDOSE * 0.5
@@ -59,6 +65,7 @@
name = "Dylovene"
id = "anti_toxin"
description = "Dylovene is a broad-spectrum antitoxin."
taste_description = "a roll of gauze"
reagent_state = LIQUID
color = "#00A000"
scannable = 1
@@ -73,6 +80,7 @@
name = "Dexalin"
id = "dexalin"
description = "Dexalin is used in the treatment of oxygen deprivation."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#0080FF"
overdose = REAGENTS_OVERDOSE
@@ -90,6 +98,7 @@
name = "Dexalin Plus"
id = "dexalinp"
description = "Dexalin Plus is used in the treatment of oxygen deprivation. It is highly effective."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#0040FF"
mrate_static = TRUE //Until it's not crazy strong, at least
@@ -108,6 +117,7 @@
name = "Tricordrazine"
id = "tricordrazine"
description = "Tricordrazine is a highly potent stimulant, originally derived from cordrazine. Can be used to treat a wide range of injuries."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#8040FF"
scannable = 1
@@ -122,6 +132,7 @@
name = "Cryoxadone"
id = "cryoxadone"
description = "A chemical mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 170K for it to metabolise correctly."
taste_description = "overripe bananas"
reagent_state = LIQUID
color = "#8080FF"
metabolism = REM * 0.5
@@ -139,6 +150,7 @@
name = "Clonexadone"
id = "clonexadone"
description = "A liquid compound similar to that used in the cloning process. Can be used to 'finish' the cloning process when used in conjunction with a cryo tube."
taste_description = "rotten bananas"
reagent_state = LIQUID
color = "#80BFFF"
metabolism = REM * 0.5
@@ -158,6 +170,7 @@
name = "Paracetamol"
id = "paracetamol"
description = "Most probably know this as Tylenol, but this chemical is a mild, simple painkiller."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#C8A5DC"
overdose = 60
@@ -176,6 +189,7 @@
name = "Tramadol"
id = "tramadol"
description = "A simple, yet effective painkiller."
taste_description = "sourness"
reagent_state = LIQUID
color = "#CB68FC"
overdose = 30
@@ -194,6 +208,7 @@
name = "Oxycodone"
id = "oxycodone"
description = "An effective and very addictive painkiller."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#800080"
overdose = 20
@@ -214,6 +229,7 @@
name = "Synaptizine"
id = "synaptizine"
description = "Synaptizine is used to treat various diseases."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#99CCFF"
metabolism = REM * 0.05
@@ -236,6 +252,7 @@
name = "Alkysine"
id = "alkysine"
description = "Alkysine is a drug used to lessen the damage to neurological tissue after a catastrophic injury. Can heal brain tissue."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#FFFF66"
metabolism = REM * 0.25
@@ -252,6 +269,7 @@
name = "Imidazoline"
id = "imidazoline"
description = "Heals eye damage"
taste_description = "dull toxin"
reagent_state = LIQUID
color = "#C8A5DC"
overdose = REAGENTS_OVERDOSE
@@ -275,6 +293,7 @@
name = "Peridaxon"
id = "peridaxon"
description = "Used to encourage recovery of internal organs and nervous systems. Medicate cautiously."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#561EC3"
overdose = 10
@@ -295,6 +314,7 @@
name = "Ryetalyn"
id = "ryetalyn"
description = "Ryetalyn can cure all genetic abnomalities via a catalytic process."
taste_description = "acid"
reagent_state = SOLID
color = "#004000"
overdose = REAGENTS_OVERDOSE
@@ -315,6 +335,7 @@
name = "Ethylredoxrazine"
id = "ethylredoxrazine"
description = "A powerful oxidizer that reacts with ethanol."
taste_description = "bitterness"
reagent_state = SOLID
color = "#605048"
overdose = REAGENTS_OVERDOSE
@@ -335,6 +356,7 @@
name = "Hyronalin"
id = "hyronalin"
description = "Hyronalin is a medicinal drug used to counter the effect of radiation poisoning."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#408000"
metabolism = REM * 0.25
@@ -348,6 +370,7 @@
name = "Arithrazine"
id = "arithrazine"
description = "Arithrazine is an unstable medication used for the most extreme cases of radiation poisoning."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#008000"
metabolism = REM * 0.25
@@ -364,6 +387,7 @@
name = "Spaceacillin"
id = "spaceacillin"
description = "An all-purpose antiviral agent."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#C1C1C1"
metabolism = REM * 0.05
@@ -375,6 +399,7 @@
name = "Sterilizine"
id = "sterilizine"
description = "Sterilizes wounds in preparation for surgery and thoroughly removes blood."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#C8A5DC"
touch_met = 5
@@ -400,6 +425,7 @@
name = "Leporazine"
id = "leporazine"
description = "Leporazine can be use to stabilize an individuals body temperature."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#C8A5DC"
overdose = REAGENTS_OVERDOSE
@@ -419,6 +445,7 @@
name = "Methylphenidate"
id = "methylphenidate"
description = "Improves the ability to concentrate."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#BF80BF"
metabolism = 0.01
@@ -440,6 +467,7 @@
name = "Citalopram"
id = "citalopram"
description = "Stabilizes the mind a little."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#FF80FF"
metabolism = 0.01
@@ -461,6 +489,7 @@
name = "Paroxetine"
id = "paroxetine"
description = "Stabilizes the mind greatly, but has a chance of adverse effects."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#FF80BF"
metabolism = 0.01
@@ -486,6 +515,7 @@
name = "Rezadone"
id = "rezadone"
description = "A powder with almost magical properties, this substance can effectively treat genetic damage in humanoids, though excessive consumption has side effects."
taste_description = "bitterness"
reagent_state = SOLID
color = "#669900"
overdose = REAGENTS_OVERDOSE
@@ -4,6 +4,7 @@
name = "Crayon dust"
id = "crayon_dust"
description = "Intensely coloured powder obtained by grinding crayons."
taste_description = "powdered wax"
reagent_state = LIQUID
color = "#888888"
overdose = 5
@@ -52,6 +53,7 @@
name = "Paint"
id = "paint"
description = "This paint will stick to almost any object."
taste_description = "chalk"
reagent_state = LIQUID
color = "#808080"
overdose = REAGENTS_OVERDOSE * 0.5
@@ -108,6 +110,7 @@
name = "Adminordrazine"
id = "adminordrazine"
description = "It's magic. We don't have to explain it."
taste_description = "bwoink"
reagent_state = LIQUID
color = "#C8A5DC"
affects_dead = 1 //This can even heal dead people.
@@ -146,6 +149,7 @@
name = "Gold"
id = "gold"
description = "Gold is a dense, soft, shiny metal and the most malleable and ductile metal known."
taste_description = "metal"
reagent_state = SOLID
color = "#F7C430"
@@ -153,6 +157,7 @@
name = "Silver"
id = "silver"
description = "A soft, white, lustrous transition metal, it has the highest electrical conductivity of any element and the highest thermal conductivity of any metal."
taste_description = "metal"
reagent_state = SOLID
color = "#D0D0D0"
@@ -160,6 +165,7 @@
name ="Uranium"
id = "uranium"
description = "A silvery-white metallic chemical element in the actinide series, weakly radioactive."
taste_description = "metal"
reagent_state = SOLID
color = "#B8B8C0"
@@ -181,6 +187,7 @@
name = "Adrenaline"
id = "adrenaline"
description = "Adrenaline is a hormone used as a drug to treat cardiac arrest and other cardiac dysrhythmias resulting in diminished or absent cardiac output."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#C8A5DC"
mrate_static = TRUE
@@ -196,6 +203,7 @@
name = "Holy Water"
id = "holywater"
description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality."
taste_description = "water"
color = "#E0E8EF"
mrate_static = TRUE
@@ -217,6 +225,8 @@
name = "Ammonia"
id = "ammonia"
description = "A caustic substance commonly used in fertilizer or household cleaners."
taste_description = "mordant"
taste_mult = 2
reagent_state = GAS
color = "#404030"
@@ -224,6 +234,7 @@
name = "Diethylamine"
id = "diethylamine"
description = "A secondary amine, mildly corrosive."
taste_description = "iron"
reagent_state = LIQUID
color = "#604030"
@@ -231,6 +242,7 @@
name = "Fluorosurfactant"
id = "fluorosurfactant"
description = "A perfluoronated sulfonic acid that forms a foam when mixed with water."
taste_description = "metal"
reagent_state = LIQUID
color = "#9E6B38"
@@ -238,6 +250,7 @@
name = "Foaming agent"
id = "foaming_agent"
description = "A agent that yields metallic foam when mixed with light metal and a strong acid."
taste_description = "metal"
reagent_state = SOLID
color = "#664B63"
@@ -245,6 +258,7 @@
name = "Thermite"
id = "thermite"
description = "Thermite produces an aluminothermic reaction known as a thermite reaction. Can be used to melt walls."
taste_description = "sweet tasting metal"
reagent_state = SOLID
color = "#673910"
touch_met = 50
@@ -269,6 +283,7 @@
name = "Space cleaner"
id = "cleaner"
description = "A compound used to clean things. Now with 50% more sodium hypochlorite!"
taste_description = "sourness"
reagent_state = LIQUID
color = "#A5F0EE"
touch_met = 50
@@ -317,6 +332,7 @@
name = "Space Lube"
id = "lube"
description = "Lubricant is a substance introduced between two moving surfaces to reduce the friction and wear between them. giggity."
taste_description = "slime"
reagent_state = LIQUID
color = "#009CA8"
@@ -330,6 +346,7 @@
name = "Silicate"
id = "silicate"
description = "A compound that can be used to reinforce glass."
taste_description = "plastic"
reagent_state = LIQUID
color = "#C7FFFF"
@@ -344,6 +361,7 @@
name = "Glycerol"
id = "glycerol"
description = "Glycerol is a simple polyol compound. Glycerol is sweet-tasting and of low toxicity."
taste_description = "sweetness"
reagent_state = LIQUID
color = "#808080"
@@ -351,6 +369,7 @@
name = "Nitroglycerin"
id = "nitroglycerin"
description = "Nitroglycerin is a heavy, colorless, oily, explosive liquid obtained by nitrating glycerol."
taste_description = "oil"
reagent_state = LIQUID
color = "#808080"
@@ -358,6 +377,8 @@
name = "Coolant"
id = "coolant"
description = "Industrial cooling substance."
taste_description = "sourness"
taste_mult = 1.1
reagent_state = LIQUID
color = "#C8A5DC"
@@ -365,12 +386,14 @@
name = "Ultra Glue"
id = "glue"
description = "An extremely powerful bonding agent."
taste_description = "a special education class"
color = "#FFFFCC"
/datum/reagent/woodpulp
name = "Wood Pulp"
id = "woodpulp"
description = "A mass of wood fibers."
taste_description = "wood"
reagent_state = LIQUID
color = "#B97A57"
@@ -378,6 +401,7 @@
name = "Luminol"
id = "luminol"
description = "A compound that interacts with blood on the molecular level."
taste_description = "metal"
reagent_state = LIQUID
color = "#F2F3F4"
@@ -1,13 +1,14 @@
/* Toxins, poisons, venoms */
/datum/reagent/toxin
name = "Toxin"
name = "toxin"
id = "toxin"
description = "A toxic chemical."
taste_description = "bitterness"
taste_mult = 1.2
reagent_state = LIQUID
color = "#CF3600"
metabolism = REM * 0.25 // 0.05 by default. Hopefully enough to get some help, or die horribly, whatever floats your boat
mrate_static = TRUE
var/strength = 4 // How much damage it deals per unit
/datum/reagent/toxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
@@ -19,6 +20,7 @@
name = "Plasticide"
id = "plasticide"
description = "Liquid plastic, do not eat."
taste_description = "plastic"
reagent_state = LIQUID
color = "#CF3600"
strength = 5
@@ -27,6 +29,7 @@
name = "Amatoxin"
id = "amatoxin"
description = "A powerful poison derived from certain species of mushroom."
taste_description = "mushroom"
reagent_state = LIQUID
color = "#792300"
strength = 10
@@ -35,6 +38,7 @@
name = "Carpotoxin"
id = "carpotoxin"
description = "A deadly neurotoxin produced by the dreaded space carp."
taste_description = "fish"
reagent_state = LIQUID
color = "#003333"
strength = 10
@@ -43,6 +47,7 @@
name = "Phoron"
id = "phoron"
description = "Phoron in its liquid form."
taste_mult = 1.5
reagent_state = LIQUID
color = "#9D14DB"
strength = 30
@@ -77,6 +82,8 @@
name = "Cyanide"
id = "cyanide"
description = "A highly toxic chemical."
taste_description = "almond"
taste_mult = 0.6
reagent_state = LIQUID
color = "#CF3600"
strength = 20
@@ -91,6 +98,7 @@
name = "Hyperzine"
id = "hyperzine"
description = "Hyperzine is a highly effective, long lasting, muscle stimulant."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#FF3300"
overdose = REAGENTS_OVERDOSE * 0.5
@@ -108,6 +116,8 @@
name = "Stimm"
id = "stimm"
description = "A homemade stimulant with some serious side-effects."
taste_description = "sweetness"
taste_mult = 1.8
color = "#d0583a"
metabolism = REM * 3
overdose = 10
@@ -128,6 +138,7 @@
name = "Potassium Chloride"
id = "potassium_chloride"
description = "A delicious salt that stops the heart when injected into cardiac muscle."
taste_description = "salt"
reagent_state = SOLID
color = "#FFFFFF"
strength = 0
@@ -147,6 +158,7 @@
name = "Potassium Chlorophoride"
id = "potassium_chlorophoride"
description = "A specific chemical based on Potassium Chloride to stop the heart for surgery. Not safe to eat!"
taste_description = "salt"
reagent_state = SOLID
color = "#FFFFFF"
strength = 10
@@ -166,6 +178,7 @@
name = "Zombie Powder"
id = "zombiepowder"
description = "A strong neurotoxin that puts the subject into a death-like state."
taste_description = "numbness"
reagent_state = SOLID
color = "#669900"
metabolism = REM
@@ -191,6 +204,8 @@
name = "fertilizer"
id = "fertilizer"
description = "A chemical mix good for growing plants with."
taste_description = "plant food"
taste_mult = 0.5
reagent_state = LIQUID
strength = 0.5 // It's not THAT poisonous.
color = "#664330"
@@ -211,6 +226,7 @@
name = "Plant-B-Gone"
id = "plantbgone"
description = "A harmful toxic mixture to kill plantlife. Do not ingest!"
taste_mult = 1
reagent_state = LIQUID
color = "#49002E"
strength = 4
@@ -239,6 +255,7 @@
name = "Polytrinic acid"
id = "pacid"
description = "Polytrinic acid is a an extremely corrosive chemical substance."
taste_description = "acid"
reagent_state = LIQUID
color = "#8E18A9"
power = 10
@@ -248,6 +265,7 @@
name = "Lexorin"
id = "lexorin"
description = "Lexorin temporarily stops respiration. Causes tissue damage."
taste_description = "acid"
reagent_state = LIQUID
color = "#C8A5DC"
overdose = REAGENTS_OVERDOSE
@@ -268,6 +286,8 @@
name = "Unstable mutagen"
id = "mutagen"
description = "Might cause unpredictable mutations. Keep away from children."
taste_description = "slime"
taste_mult = 0.9
reagent_state = LIQUID
color = "#13BC5E"
@@ -303,6 +323,8 @@
name = "Slime Jelly"
id = "slimejelly"
description = "A gooey semi-liquid produced from one of the deadliest lifeforms in existence. SO REAL."
taste_description = "slime"
taste_mult = 1.3
reagent_state = LIQUID
color = "#801E28"
@@ -319,6 +341,7 @@
name = "Soporific"
id = "stoxin"
description = "An effective hypnotic used to treat insomnia."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#009CA8"
metabolism = REM * 0.5
@@ -353,6 +376,7 @@
name = "Chloral Hydrate"
id = "chloralhydrate"
description = "A powerful sedative."
taste_description = "bitterness"
reagent_state = SOLID
color = "#000067"
metabolism = REM * 0.5
@@ -386,6 +410,7 @@
name = "Beer"
id = "beer2"
description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong.
taste_description = "beer"
reagent_state = LIQUID
color = "#FFD300"
@@ -397,6 +422,8 @@
name = "Space drugs"
id = "space_drugs"
description = "An illegal chemical compound used as drug."
taste_description = "bitterness"
taste_mult = 0.4
reagent_state = LIQUID
color = "#60A584"
metabolism = REM * 0.5
@@ -420,6 +447,7 @@
name = "Serotrotium"
id = "serotrotium"
description = "A chemical compound that promotes concentrated production of the serotonin neurotransmitter in humans."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#202040"
metabolism = REM * 0.25
@@ -436,6 +464,7 @@
name = "Cryptobiolin"
id = "cryptobiolin"
description = "Cryptobiolin causes confusion and dizzyness."
taste_description = "sourness"
reagent_state = LIQUID
color = "#000055"
metabolism = REM * 0.5
@@ -454,6 +483,7 @@
name = "Impedrezene"
id = "impedrezene"
description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions."
taste_description = "numbness"
reagent_state = LIQUID
color = "#C8A5DC"
overdose = REAGENTS_OVERDOSE
@@ -473,6 +503,7 @@
name = "Mindbreaker Toxin"
id = "mindbreaker"
description = "A powerful hallucinogen, it can cause fatal effects in users."
taste_description = "sourness"
reagent_state = LIQUID
color = "#B31008"
metabolism = REM * 0.25
@@ -491,6 +522,7 @@
name = "Psilocybin"
id = "psilocybin"
description = "A strong psycotropic derived from certain species of mushroom."
taste_description = "mushroom"
color = "#E700E7"
overdose = REAGENTS_OVERDOSE
metabolism = REM * 0.5
@@ -531,6 +563,7 @@
name = "Nicotine"
id = "nicotine"
description = "A highly addictive stimulant extracted from the tobacco plant."
taste_description = "bitterness"
reagent_state = LIQUID
color = "#181818"
@@ -540,6 +573,7 @@
name = "Mutation Toxin"
id = "mutationtoxin"
description = "A corruptive toxin produced by slimes."
taste_description = "sludge"
reagent_state = LIQUID
color = "#13BC5E"
@@ -566,6 +600,7 @@
name = "Docility Toxin"
id = "docilitytoxin"
description = "A corruptive toxin produced by slimes."
taste_description = "sludge"
reagent_state = LIQUID
color = "#FF69B4"
@@ -57,7 +57,7 @@
safe_thing = victim.glasses
if(safe_thing)
trans = reagents.trans_to_obj(safe_thing, amount_per_transfer_from_this)
trans = reagents.splash(safe_thing, amount_per_transfer_from_this, max_spill=30)
user.visible_message("<span class='warning'>[user] tries to squirt something into [target]'s eyes, but fails!</span>", "<span class='notice'>You transfer [trans] units of the solution.</span>")
return
@@ -67,14 +67,15 @@
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Used the [name] to squirt [M.name] ([M.key]). Reagents: [contained]</font>")
msg_admin_attack("[user.name] ([user.ckey]) squirted [M.name] ([M.key]) with [name]. Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
trans = reagents.trans_to_mob(target, reagents.total_volume, CHEM_INGEST)
trans += reagents.splash(target, reagents.total_volume/2, max_spill=30)
trans += reagents.trans_to_mob(target, reagents.total_volume/2, CHEM_BLOOD) //I guess it gets into the bloodstream through the eyes or something
user.visible_message("<span class='warning'>[user] squirts something into [target]'s eyes!</span>", "<span class='notice'>You transfer [trans] units of the solution.</span>")
return
else
trans = reagents.trans_to(target, amount_per_transfer_from_this) //sprinkling reagents on generic non-mobs
trans = reagents.splash(target, amount_per_transfer_from_this, max_spill=30) //sprinkling reagents on generic non-mobs
user << "<span class='notice'>You transfer [trans] units of the solution.</span>"
else // Taking from something
File diff suppressed because it is too large Load Diff