mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
[MIRROR] Have you bingled that (#10545)
Co-authored-by: Cameron Lennox <killer65311@gmail.com> Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
057fffd669
commit
16a213f699
@@ -14,6 +14,7 @@
|
||||
idle_power_usage = 20
|
||||
clicksound = "button"
|
||||
var/analyzing = FALSE
|
||||
var/list/found_reagents = list()
|
||||
|
||||
/obj/machinery/chemical_analyzer/update_icon()
|
||||
icon_state = "chem_analyzer[analyzing ? "-working":""]"
|
||||
@@ -26,7 +27,6 @@
|
||||
return
|
||||
if(default_deconstruction_crowbar(user, I))
|
||||
return
|
||||
|
||||
if(istype(I,/obj/item/reagent_containers))
|
||||
analyzing = TRUE
|
||||
update_icon()
|
||||
@@ -45,153 +45,55 @@
|
||||
I.identify(IDENTITY_FULL, user)
|
||||
|
||||
// Now tell us everything that is inside.
|
||||
var/final_message = ""
|
||||
if(I.reagents && I.reagents.reagent_list.len)
|
||||
final_message += "<br>" // To add padding between regular chat and the output.
|
||||
found_reagents.Cut()
|
||||
for(var/datum/reagent/R in I.reagents.reagent_list)
|
||||
if(!R.name)
|
||||
continue
|
||||
final_message += span_notice("*=*=*=*= Contains " + span_info("[R.volume]u") + " of " + span_bold(span_underline("[R.name]")) + " =*=*=*=*<br>[R.description][R.from_belly ? " Something seems strange about it...? (OOC: It's from a belly!)" : ""]<br><br>")
|
||||
/* Downstream addiction code
|
||||
if(R.id in addictives)
|
||||
final_message += span_boldnotice(span_red("DANGER") + ", [(R.id in fast_addictives) ? "highly " : ""]addictive.)") + "<br>"
|
||||
*/
|
||||
var/list/products = SSchemistry.chemical_reactions_by_product[R.id]
|
||||
if(products != null && products.len > 0)
|
||||
var/segment = 1
|
||||
var/list/display_reactions = list()
|
||||
for(var/decl/chemical_reaction/CR in products)
|
||||
// if(!CR.spoiler) - Downstream self documenting wiki code
|
||||
display_reactions.Add(CR)
|
||||
for(var/decl/chemical_reaction/CR in display_reactions)
|
||||
if(display_reactions.len == 1)
|
||||
final_message += span_underline("Potential Chemical breakdown: <br>")
|
||||
else
|
||||
final_message += span_underline("Potential Chemical breakdown [segment]: <br>")
|
||||
segment += 1
|
||||
found_reagents[R.id] = R.volume
|
||||
tgui_interact(user)
|
||||
else
|
||||
to_chat(user, span_warning("Nothing detected in [I]"))
|
||||
|
||||
if(istype(CR,/decl/chemical_reaction/instant/slime))
|
||||
// Handle slimes
|
||||
var/decl/chemical_reaction/instant/slime/SR = CR
|
||||
if(SR.required)
|
||||
var/slime_path = SR.required
|
||||
final_message += " -core [span_info(initial(slime_path:name))]<br>"
|
||||
for(var/RQ in CR.required_reagents)
|
||||
var/decl/chemical_reaction/r_RQ = SSchemistry.chemical_reagents[RQ]
|
||||
if(!r_RQ)
|
||||
continue
|
||||
final_message += " -inducer [span_info(r_RQ.name)]<br>"
|
||||
else
|
||||
// Standard
|
||||
for(var/RQ in CR.required_reagents)
|
||||
var/decl/chemical_reaction/r_RQ = SSchemistry.chemical_reagents[RQ]
|
||||
if(!r_RQ)
|
||||
continue
|
||||
final_message += " -parts [span_info(r_RQ.name)]<br>"
|
||||
for(var/IH in CR.inhibitors)
|
||||
var/decl/chemical_reaction/r_IH = SSchemistry.chemical_reagents[IH]
|
||||
if(!r_IH)
|
||||
continue
|
||||
final_message += " -inhbi [span_info(r_IH.name)]<br>"
|
||||
for(var/CL in CR.catalysts)
|
||||
var/decl/chemical_reaction/r_CL = SSchemistry.chemical_reagents[CL]
|
||||
if(!r_CL)
|
||||
continue
|
||||
final_message += " -catyl [span_info(r_CL.name)]<br>"
|
||||
final_message += "<br>"
|
||||
else
|
||||
final_message += span_underline("Potential Chemical breakdown:") + "<br>" + span_red("UNKNOWN OR BASE-REAGENT") + "<br><br>"
|
||||
var/list/distilled_products = SSchemistry.distilled_reactions_by_product[R.id]
|
||||
if(distilled_products != null && distilled_products.len > 0)
|
||||
var/segment = 1
|
||||
|
||||
var/list/display_reactions = list()
|
||||
for(var/decl/chemical_reaction/distilling/CR in distilled_products)
|
||||
// if(!CR.spoiler) - Downstream self documenting wiki code
|
||||
display_reactions.Add(CR)
|
||||
|
||||
for(var/decl/chemical_reaction/distilling/CR in display_reactions)
|
||||
if(display_reactions.len == 1)
|
||||
final_message += span_underline("Potential Chemical Distillation: <br>")
|
||||
else
|
||||
final_message += span_underline("Potential Chemical Distillation [segment]: <br>")
|
||||
segment += 1
|
||||
|
||||
final_message += " -temps " + span_info("[CR.temp_range[1]]k") + " - " + span_info("[CR.temp_range[2]]k") + "<br>"
|
||||
|
||||
for(var/RQ in CR.required_reagents)
|
||||
var/decl/chemical_reaction/r_RQ = SSchemistry.chemical_reagents[RQ]
|
||||
if(!r_RQ)
|
||||
continue
|
||||
final_message += " -parts [span_info(r_RQ.name)]<br>"
|
||||
for(var/IH in CR.inhibitors)
|
||||
var/decl/chemical_reaction/r_IH = SSchemistry.chemical_reagents[IH]
|
||||
if(!r_IH)
|
||||
continue
|
||||
final_message += " -inhbi [span_info(r_IH.name)]<br>"
|
||||
for(var/CL in CR.catalysts)
|
||||
var/decl/chemical_reaction/r_CL = SSchemistry.chemical_reagents[CL]
|
||||
if(!r_CL)
|
||||
continue
|
||||
final_message += " -catyl [span_info(r_CL.name)]<br>"
|
||||
final_message += "<br>"
|
||||
|
||||
// We can get some reagents by grinding sheets and ores!
|
||||
var/grind_results = ""
|
||||
for(var/source in global.sheet_reagents)
|
||||
if(R.id in global.sheet_reagents[source])
|
||||
var/nm = initial(source:name)
|
||||
grind_results += " -grind [span_info(nm)]<br>"
|
||||
if(grind_results != "")
|
||||
final_message += span_underline("Material Sources: <br>")
|
||||
final_message += grind_results
|
||||
final_message += "<br>"
|
||||
|
||||
grind_results = ""
|
||||
for(var/source in global.ore_reagents)
|
||||
if(R.id in global.ore_reagents[source])
|
||||
var/nm = initial(source:name)
|
||||
grind_results += " -grind [span_info(nm)]<br>"
|
||||
if(grind_results != "")
|
||||
final_message += span_underline("Ore Sources: <br>")
|
||||
final_message += grind_results
|
||||
final_message += "<br>"
|
||||
|
||||
// The long forgotten fluid pumps!
|
||||
// TODO : Update turfs to provide what their fluidpump outputs are too
|
||||
var/pump_results = ""
|
||||
for(var/O in GLOB.ore_data)
|
||||
var/ore/OR = GLOB.ore_data[O]
|
||||
if(OR.reagent == R.id)
|
||||
pump_results += " -erosion [span_info(OR.display_name)]<br>"
|
||||
if(pump_results != "")
|
||||
final_message += span_underline("Fluid Pump Filtrate: <br>")
|
||||
final_message += pump_results
|
||||
final_message += "<br>"
|
||||
|
||||
var/makes_result = ""
|
||||
var/list/instant_by_reagent = SSchemistry.instant_reactions_by_reagent["[R.id]"]
|
||||
if(instant_by_reagent && instant_by_reagent.len)
|
||||
for(var/i = 1, i <= instant_by_reagent.len, i++)
|
||||
var/decl/chemical_reaction/OR = instant_by_reagent[i]
|
||||
if(istype(OR,/decl/chemical_reaction/instant/slime)) // very bloated and meant to be a mystery
|
||||
continue
|
||||
makes_result += " -[span_info(OR.name)]<br>"
|
||||
|
||||
var/list/distilled_by_reagent = SSchemistry.distilled_reactions_by_reagent["[R.id]"]
|
||||
if(distilled_by_reagent && distilled_by_reagent.len)
|
||||
for(var/i = 1, i <= distilled_by_reagent.len, i++)
|
||||
var/decl/chemical_reaction/OR = distilled_by_reagent[i]
|
||||
makes_result += " -[span_info(OR.name)]<br>"
|
||||
|
||||
if(makes_result != "")
|
||||
final_message += span_underline("Can Be Used To Produce: <br>")
|
||||
final_message += makes_result
|
||||
final_message += "<br>"
|
||||
|
||||
final_message += "Scanning of \the [I] complete."
|
||||
|
||||
to_chat(user, span_notice(final_message))
|
||||
analyzing = FALSE
|
||||
update_icon()
|
||||
return
|
||||
|
||||
/obj/machinery/chemical_analyzer/attack_hand(mob/user)
|
||||
if(!found_reagents.len)
|
||||
return ..()
|
||||
tgui_interact(user) // Show last analysis
|
||||
|
||||
/obj/machinery/chemical_analyzer/tgui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if(!ui)
|
||||
ui = new(user, src, "ChemAnalyzerPro", name)
|
||||
ui.open()
|
||||
|
||||
/obj/machinery/chemical_analyzer/tgui_data(mob/user)
|
||||
var/list/data = list()
|
||||
|
||||
var/total_vol = 0
|
||||
var/list/reagents_sent = list()
|
||||
var/obj/item/reagent_containers/glass/beaker/large/beaker_path = /obj/item/reagent_containers/glass/beaker/large
|
||||
for(var/ID in found_reagents)
|
||||
var/datum/reagent/R = SSchemistry.chemical_reagents[ID]
|
||||
if(!R)
|
||||
continue
|
||||
var/list/subdata = list()
|
||||
subdata["title"] = R.name
|
||||
SSinternal_wiki.add_icon(subdata, initial(beaker_path.icon), initial(beaker_path.icon_state), R.color)
|
||||
// Get internal data
|
||||
subdata["description"] = R.description
|
||||
subdata["flavor"] = R.taste_description
|
||||
subdata["allergen"] = SSinternal_wiki.assemble_allergens(R.allergen_type)
|
||||
subdata["beakerAmount"] = found_reagents[ID]
|
||||
total_vol += found_reagents[ID]
|
||||
SSinternal_wiki.assemble_reaction_data(subdata, R)
|
||||
// Send as a big list of lists
|
||||
reagents_sent += list(subdata)
|
||||
data["scannedReagents"] = reagents_sent
|
||||
data["beakerTotal"] = total_vol
|
||||
data["beakerMax"] = initial(beaker_path.volume)
|
||||
|
||||
return data
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
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.
|
||||
var/wiki_flag = 0
|
||||
|
||||
/decl/chemical_reaction/proc/can_happen(var/datum/reagents/holder)
|
||||
//check that all the required reagents are present
|
||||
|
||||
@@ -1325,14 +1325,14 @@
|
||||
result_amount = 15
|
||||
|
||||
/decl/chemical_reaction/instant/drinks/nuclearwaste_radium
|
||||
name = REAGENT_NUCLEARWASTE
|
||||
name = REAGENT_NUCLEARWASTE + " 226"
|
||||
id = "nuclearwasterad"
|
||||
result = REAGENT_ID_NUCLEARWASTE
|
||||
required_reagents = list(REAGENT_ID_OILSLICK = 1, REAGENT_ID_RADIUM = 1, REAGENT_ID_LIMEJUICE = 1)
|
||||
result_amount = 2
|
||||
|
||||
/decl/chemical_reaction/instant/drinks/nuclearwaste_uranium
|
||||
name = REAGENT_NUCLEARWASTE
|
||||
name = REAGENT_NUCLEARWASTE + " 238"
|
||||
id = "nuclearwasteuran"
|
||||
result = REAGENT_ID_NUCLEARWASTE
|
||||
required_reagents = list(REAGENT_ID_OILSLICK = 2, REAGENT_ID_URANIUM = 1)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/decl/chemical_reaction/instant/food
|
||||
name = REAGENT_DEVELOPER_WARNING // Unit test ignore
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/decl/chemical_reaction/instant/food/hot_ramen
|
||||
name = REAGENT_HOTRAMEN
|
||||
@@ -30,7 +31,7 @@
|
||||
return
|
||||
|
||||
/decl/chemical_reaction/instant/food/chocolate_bar
|
||||
name = "Chocolate Bar"
|
||||
name = "Chocolate Bar Soy"
|
||||
id = "chocolate_bar_soy"
|
||||
result = null
|
||||
required_reagents = list(REAGENT_ID_SOYMILK = 2, REAGENT_ID_COCO = 2, REAGENT_ID_SUGAR = 2)
|
||||
@@ -44,7 +45,7 @@
|
||||
return
|
||||
|
||||
/decl/chemical_reaction/instant/food/chocolate_bar2
|
||||
name = "Chocolate Bar"
|
||||
name = "Chocolate Bar Milk"
|
||||
id = "chocolate_bar_milk"
|
||||
result = null
|
||||
required_reagents = list(REAGENT_ID_MILK = 2, REAGENT_ID_COCO = 2, REAGENT_ID_SUGAR = 2)
|
||||
@@ -58,7 +59,7 @@
|
||||
return
|
||||
|
||||
/decl/chemical_reaction/instant/food/cookingoilcorn
|
||||
name = REAGENT_COOKINGOIL
|
||||
name = "corn " + REAGENT_COOKINGOIL
|
||||
id = "cookingoilcorn"
|
||||
result = REAGENT_ID_COOKINGOIL
|
||||
required_reagents = list(REAGENT_ID_CORNOIL = 10)
|
||||
@@ -66,7 +67,7 @@
|
||||
result_amount = 10
|
||||
|
||||
/decl/chemical_reaction/instant/food/cookingoilpeanut
|
||||
name = REAGENT_COOKINGOIL
|
||||
name = "peanut " + REAGENT_ID_COOKINGOIL
|
||||
id = "cookingoilpeanut"
|
||||
result = REAGENT_ID_COOKINGOIL
|
||||
required_reagents = list(REAGENT_ID_PEANUTOIL = 10)
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
var/list/glass_special = null // null equivalent to list()
|
||||
|
||||
var/from_belly = FALSE
|
||||
var/wiki_flag = 0 // Bitflags for secret/food/drink reagent sorting
|
||||
|
||||
/datum/reagent/proc/remove_self(var/amount) // Shortcut
|
||||
if(holder)
|
||||
|
||||
@@ -104,6 +104,7 @@
|
||||
allergen_factor = 1 //simulates mixed drinks containing less of the allergen, as they have only a single actual reagent unlike food
|
||||
|
||||
affects_robots = 1 //kiss my shiny metal ass
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/ethanol/touch_mob(var/mob/living/L, var/amount)
|
||||
..()
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
sober_message_list = list("Everything feels a little more grounded.",
|
||||
"Colors seem... flatter.",
|
||||
"Everything feels a little dull, now.")
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/drugs/bliss/affect_blood(mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
var/injectable = 0
|
||||
color = "#664330"
|
||||
affects_robots = 1 //VOREStation Edit
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/nutriment/mix_data(var/list/newdata, var/newamount)
|
||||
|
||||
@@ -411,6 +412,7 @@
|
||||
nutriment_factor = 1
|
||||
color = "#482000"
|
||||
allergen_type = ALLERGEN_COFFEE | ALLERGEN_STIMULANT //Again, coffee contains coffee
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/nutriment/tea
|
||||
name = REAGENT_TEAPOWDER
|
||||
@@ -421,6 +423,7 @@
|
||||
nutriment_factor = 1
|
||||
color = "#101000"
|
||||
allergen_type = ALLERGEN_STIMULANT //Strong enough to contain caffeine
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/nutriment/decaf_tea
|
||||
name = REAGENT_DECAFTEAPOWDER
|
||||
@@ -430,6 +433,7 @@
|
||||
taste_mult = 1.3
|
||||
nutriment_factor = 1
|
||||
color = "#101000"
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/nutriment/coco
|
||||
name = REAGENT_COCO
|
||||
@@ -461,6 +465,7 @@
|
||||
taste_mult = 1.3
|
||||
nutriment_factor = 1
|
||||
allergen_type = ALLERGEN_FRUIT //I suppose it's implied here that the juice is from dehydrated fruit.
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/nutriment/instantjuice/grape
|
||||
name = REAGENT_INSTANTGRAPE
|
||||
@@ -691,6 +696,7 @@
|
||||
ingest_met = REM
|
||||
color = "#000000"
|
||||
cup_prefix = "peppery"
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/enzyme
|
||||
name = REAGENT_ENZYME
|
||||
@@ -701,6 +707,7 @@
|
||||
reagent_state = LIQUID
|
||||
color = "#365E30"
|
||||
overdose = REAGENTS_OVERDOSE
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/spacespice
|
||||
name = REAGENT_SPACESPICE
|
||||
@@ -709,6 +716,7 @@
|
||||
reagent_state = SOLID
|
||||
color = "#e08702"
|
||||
cup_prefix = "spicy"
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/browniemix
|
||||
name = REAGENT_BROWNIEMIX
|
||||
@@ -717,6 +725,7 @@
|
||||
reagent_state = SOLID
|
||||
color = "#441a03"
|
||||
allergen_type = ALLERGEN_CHOCOLATE
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/cakebatter
|
||||
name = REAGENT_CAKEBATTER
|
||||
@@ -724,6 +733,7 @@
|
||||
description = "A batter for making delicious cakes."
|
||||
reagent_state = LIQUID
|
||||
color = "#F0EDDA"
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/frostoil
|
||||
name = REAGENT_FROSTOIL
|
||||
@@ -734,6 +744,7 @@
|
||||
reagent_state = LIQUID
|
||||
ingest_met = REM
|
||||
color = "#B31008"
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/frostoil/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_DIONA)
|
||||
@@ -783,6 +794,7 @@
|
||||
ingest_met = REM
|
||||
color = "#B31008"
|
||||
cup_prefix = "hot"
|
||||
wiki_flag = WIKI_FOOD
|
||||
|
||||
/datum/reagent/capsaicin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_DIONA)
|
||||
@@ -970,6 +982,7 @@
|
||||
var/adj_temp = 0
|
||||
var/nutriment_factor = 0 //CHOMPStation addition
|
||||
var/water_based = TRUE
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/drink/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
var/strength_mod = 1
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
taste_mult = 1.3
|
||||
nutriment_factor = 5
|
||||
color = "#fff200"
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/lipozine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.adjust_nutrition(-20 * removed)
|
||||
@@ -543,6 +544,7 @@
|
||||
id = REAGENT_ID_BRAINPROTEIN
|
||||
taste_description = "fatty, mushy meat and allspice"
|
||||
color = "#caa3c9"
|
||||
wiki_flag = WIKI_FOOD|WIKI_SPOILER
|
||||
|
||||
/datum/reagent/nutriment/protein/brainzsnax/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
@@ -580,6 +582,7 @@
|
||||
description = "A mixture of water and protein commonly used as a meal supplement."
|
||||
taste_description = "pure protein"
|
||||
color = "#ebd8cb"
|
||||
wiki_flag = WIKI_DRINK
|
||||
|
||||
/datum/reagent/nutriment/protein_powder/vanilla
|
||||
name = REAGENT_VANILLAPROTEINPOWDER
|
||||
|
||||
@@ -1392,6 +1392,7 @@
|
||||
metabolism = REM * 4 // Nanomachines gotta go fast.
|
||||
scannable = 1
|
||||
affects_robots = TRUE
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/healing_nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.heal_organ_damage(2 * removed, 2 * removed)
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
mrate_static = TRUE
|
||||
overdose = 20 //High OD. This is to make numbing bites have somewhat of a downside if you get bit too much. Have to go to medical for dialysis.
|
||||
scannable = 0 //Let's not have medical mechs able to make an extremely strong organic painkiller
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/numbing_enzyme/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 200)
|
||||
|
||||
@@ -176,6 +176,7 @@
|
||||
|
||||
glass_name = "liquid gold"
|
||||
glass_desc = "It's magic. We don't have to explain it."
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
affect_blood(M, alien, removed)
|
||||
@@ -316,6 +317,7 @@
|
||||
affects_robots = TRUE
|
||||
description = "The immense power of a supermatter crystal, in liquid form. You're not entirely sure how that's possible, but it's probably best handled with care."
|
||||
taste_description = "taffy" // 0. The supermatter is tasty, tasty taffy.
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
// Same as if you boop it wrong. It touches you, you die
|
||||
/datum/reagent/supermatter/affect_touch(mob/living/carbon/M, alien, removed)
|
||||
@@ -357,6 +359,7 @@
|
||||
|
||||
glass_name = "holy water"
|
||||
glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality."
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
@@ -651,6 +654,7 @@
|
||||
color = "#333333"
|
||||
metabolism = REM * 3 // Broken nanomachines go a bit slower.
|
||||
scannable = 1
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/defective_nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.take_organ_damage(2 * removed, 2 * removed)
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
color = "#333333"
|
||||
scannable = 1
|
||||
affects_robots = TRUE
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/nif_repair_nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(ishuman(M))
|
||||
|
||||
@@ -73,6 +73,7 @@
|
||||
color = "#005555"
|
||||
strength = 8
|
||||
skin_danger = 0.4
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/toxin/neurotoxic_protein/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_CHIMERA)
|
||||
@@ -201,6 +202,7 @@
|
||||
taste_description = "mold"
|
||||
reagent_state = SOLID
|
||||
strength = 5
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/toxin/mold/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
@@ -215,6 +217,7 @@
|
||||
reagent_state = LIQUID
|
||||
strength = 5
|
||||
filtered_organs = list(O_SPLEEN)
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/toxin/expired_medicine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
@@ -484,6 +487,7 @@
|
||||
color = "#664330"
|
||||
power = 2
|
||||
meltdose = 30
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/acid/diet_digestive
|
||||
name = REAGENT_DIETSTOMACID
|
||||
@@ -494,6 +498,7 @@
|
||||
color = "#664330"
|
||||
power = 0.4
|
||||
meltdose = 150
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/thermite/venom
|
||||
name = REAGENT_THERMITEV
|
||||
@@ -503,6 +508,7 @@
|
||||
reagent_state = SOLID
|
||||
color = "#673910"
|
||||
touch_met = 50
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/thermite/venom/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.adjustFireLoss(3 * removed)
|
||||
@@ -524,6 +530,7 @@
|
||||
taste_description = "fire"
|
||||
color = "#B31008"
|
||||
filtered_organs = list(O_SPLEEN)
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/condensedcapsaicin/venom/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_DIONA)
|
||||
@@ -635,6 +642,7 @@
|
||||
taste_mult = 1.3
|
||||
reagent_state = LIQUID
|
||||
color = "#801E28"
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/slimejelly/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_DIONA)
|
||||
@@ -762,6 +770,7 @@
|
||||
|
||||
glass_name = REAGENT_ID_BEER
|
||||
glass_desc = "A freezing pint of beer"
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/* Drugs */
|
||||
|
||||
@@ -774,6 +783,7 @@
|
||||
color = "#202040"
|
||||
metabolism = REM * 0.25
|
||||
overdose = REAGENTS_OVERDOSE
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/serotrotium/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_DIONA)
|
||||
@@ -876,6 +886,7 @@
|
||||
taste_description = "sludge"
|
||||
reagent_state = LIQUID
|
||||
color = "#13BC5E"
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/slimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(M.isSynthetic())
|
||||
@@ -902,6 +913,7 @@
|
||||
taste_description = "sludge"
|
||||
reagent_state = LIQUID
|
||||
color = "#FF69B4"
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/aslimetoxin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(M.isSynthetic())
|
||||
@@ -935,6 +947,7 @@
|
||||
color = "#555555"
|
||||
metabolism = REM * 4 // Nanomachines. Fast.
|
||||
affects_robots = TRUE
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/shredding_nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.adjustBruteLoss(4 * removed)
|
||||
@@ -949,6 +962,7 @@
|
||||
color = "#555555"
|
||||
metabolism = REM * 4
|
||||
affects_robots = TRUE
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/irradiated_nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
SSradiation.radiate(get_turf(M), 20) // Irradiate people around you.
|
||||
@@ -964,6 +978,7 @@
|
||||
metabolism = REM * 4
|
||||
filtered_organs = list(O_SPLEEN)
|
||||
affects_robots = TRUE
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/neurophage_nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.adjustBrainLoss(2 * removed) // Their job is to give you a bad time.
|
||||
@@ -976,6 +991,7 @@
|
||||
reagent_state = LIQUID
|
||||
color = "#1E4600"
|
||||
taste_mult = 0
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/salmonella/on_mob_life(mob/living/carbon/M)
|
||||
M.ForceContractDisease(new /datum/disease/food_poisoning(0))
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
color = "#D18AA5"
|
||||
|
||||
/datum/reagent/toxin/phoron/phoronvirusfood
|
||||
name = REAGENT_ADRANOLVIRUSFOOD
|
||||
name = REAGENT_PHORONVIRUSFOOD
|
||||
id = REAGENT_ID_PHORONVIRUSFOOD
|
||||
description = "Mutates viruses when mixed in blood. This one seems to be the strongest."
|
||||
color = "#A69DA9"
|
||||
|
||||
Reference in New Issue
Block a user