Merge pull request #10329 from Ghommie/Ghommie-cit490
Ports reagents id removal and typepath usage.
This commit is contained in:
@@ -28,7 +28,7 @@
|
|||||||
"g" = (
|
"g" = (
|
||||||
/obj/structure/reagent_dispensers/water_cooler{
|
/obj/structure/reagent_dispensers/water_cooler{
|
||||||
name = "punch cooler";
|
name = "punch cooler";
|
||||||
reagent_id = "bacchus_blessing"
|
reagent_id = /datum/reagent/consumable/ethanol/bacchus_blessing
|
||||||
},
|
},
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/turf/open/floor/wood{
|
/turf/open/floor/wood{
|
||||||
|
|||||||
@@ -3410,7 +3410,7 @@
|
|||||||
"lq" = (
|
"lq" = (
|
||||||
/obj/structure/table,
|
/obj/structure/table,
|
||||||
/obj/item/reagent_containers/glass/beaker{
|
/obj/item/reagent_containers/glass/beaker{
|
||||||
list_reagents = list("sacid" = 50)
|
list_reagents = list(/datum/reagent/toxin/acid = 50)
|
||||||
},
|
},
|
||||||
/obj/item/paper/crumpled/bloody/ruins/thederelict/unfinished,
|
/obj/item/paper/crumpled/bloody/ruins/thederelict/unfinished,
|
||||||
/obj/item/pen,
|
/obj/item/pen,
|
||||||
|
|||||||
@@ -97,6 +97,9 @@ GLOBAL_VAR_INIT(cmp_field, "name")
|
|||||||
/proc/cmp_numbered_displays_name_dsc(datum/numbered_display/A, datum/numbered_display/B)
|
/proc/cmp_numbered_displays_name_dsc(datum/numbered_display/A, datum/numbered_display/B)
|
||||||
return sorttext(B.sample_object.name, A.sample_object.name)
|
return sorttext(B.sample_object.name, A.sample_object.name)
|
||||||
|
|
||||||
|
/proc/cmp_reagents_asc(datum/reagent/a, datum/reagent/b)
|
||||||
|
return sorttext(initial(b.name),initial(a.name))
|
||||||
|
|
||||||
/proc/cmp_quirk_asc(datum/quirk/A, datum/quirk/B)
|
/proc/cmp_quirk_asc(datum/quirk/A, datum/quirk/B)
|
||||||
var/a_sign = num2sign(initial(A.value) * -1)
|
var/a_sign = num2sign(initial(A.value) * -1)
|
||||||
var/b_sign = num2sign(initial(B.value) * -1)
|
var/b_sign = num2sign(initial(B.value) * -1)
|
||||||
|
|||||||
+14
-10
@@ -947,21 +947,25 @@
|
|||||||
|
|
||||||
if(A.reagents)
|
if(A.reagents)
|
||||||
var/chosen_id
|
var/chosen_id
|
||||||
var/list/reagent_options = sortList(GLOB.chemical_reagents_list)
|
switch(alert(usr, "Choose a method.", "Add Reagents", "Search", "Choose from a list", "I'm feeling lucky"))
|
||||||
switch(alert(usr, "Choose a method.", "Add Reagents", "Enter ID", "Choose ID"))
|
if("Search")
|
||||||
if("Enter ID")
|
|
||||||
var/valid_id
|
var/valid_id
|
||||||
while(!valid_id)
|
while(!valid_id)
|
||||||
chosen_id = stripped_input(usr, "Enter the ID of the reagent you want to add.")
|
chosen_id = input(usr, "Enter the ID of the reagent you want to add.", "Search reagents") as null|text
|
||||||
if(!chosen_id) //Get me out of here!
|
if(isnull(chosen_id)) //Get me out of here!
|
||||||
break
|
break
|
||||||
for(var/ID in reagent_options)
|
if(!ispath(text2path(chosen_id)))
|
||||||
if(ID == chosen_id)
|
chosen_id = pick_closest_path(chosen_id, make_types_fancy(subtypesof(/datum/reagent)))
|
||||||
valid_id = 1
|
if(ispath(chosen_id))
|
||||||
|
valid_id = TRUE
|
||||||
|
else
|
||||||
|
valid_id = TRUE
|
||||||
if(!valid_id)
|
if(!valid_id)
|
||||||
to_chat(usr, "<span class='warning'>A reagent with that ID doesn't exist!</span>")
|
to_chat(usr, "<span class='warning'>A reagent with that ID doesn't exist!</span>")
|
||||||
if("Choose ID")
|
if("Choose from a list")
|
||||||
chosen_id = input(usr, "Choose a reagent to add.", "Choose a reagent.") as null|anything in reagent_options
|
chosen_id = input(usr, "Choose a reagent to add.", "Choose a reagent.") as null|anything in subtypesof(/datum/reagent)
|
||||||
|
if("I'm feeling lucky")
|
||||||
|
chosen_id = pick(subtypesof(/datum/reagent))
|
||||||
if(chosen_id)
|
if(chosen_id)
|
||||||
var/amount = input(usr, "Choose the amount to add.", "Choose the amount.", A.reagents.maximum_volume) as num
|
var/amount = input(usr, "Choose the amount to add.", "Choose the amount.", A.reagents.maximum_volume) as num
|
||||||
if(amount)
|
if(amount)
|
||||||
|
|||||||
@@ -103,7 +103,7 @@
|
|||||||
if(!(spread_flags & DISEASE_SPREAD_AIRBORNE) && !force_spread)
|
if(!(spread_flags & DISEASE_SPREAD_AIRBORNE) && !force_spread)
|
||||||
return
|
return
|
||||||
|
|
||||||
if(affected_mob.reagents.has_reagent("spaceacillin") || (affected_mob.satiety > 0 && prob(affected_mob.satiety/10)))
|
if(affected_mob.reagents.has_reagent(/datum/reagent/medicine/spaceacillin) || (affected_mob.satiety > 0 && prob(affected_mob.satiety/10)))
|
||||||
return
|
return
|
||||||
|
|
||||||
var/spread_range = 2
|
var/spread_range = 2
|
||||||
|
|||||||
@@ -36,37 +36,41 @@
|
|||||||
// The order goes from easy to cure to hard to cure. Keep in mind that sentient diseases pick two cures from tier 6 and up, ensure they wont react away in bodies.
|
// The order goes from easy to cure to hard to cure. Keep in mind that sentient diseases pick two cures from tier 6 and up, ensure they wont react away in bodies.
|
||||||
var/static/list/advance_cures = list(
|
var/static/list/advance_cures = list(
|
||||||
list( // level 1
|
list( // level 1
|
||||||
"copper", "silver", "iodine", "iron", "carbon"
|
/datum/reagent/copper, /datum/reagent/silver, /datum/reagent/iodine, /datum/reagent/iron, /datum/reagent/carbon
|
||||||
),
|
),
|
||||||
list( // level 2
|
list( // level 2
|
||||||
"potassium", "ethanol", "lithium", "silicon", "bromine"
|
/datum/reagent/potassium, /datum/reagent/consumable/ethanol, /datum/reagent/lithium,
|
||||||
|
/datum/reagent/silicon, /datum/reagent/bromine
|
||||||
),
|
),
|
||||||
list( // level 3
|
list( // level 3
|
||||||
"sodiumchloride", "sugar", "orangejuice", "tomatojuice", "milk"
|
/datum/reagent/consumable/sodiumchloride, /datum/reagent/consumable/sugar, /datum/reagent/consumable/orangejuice,
|
||||||
|
/datum/reagent/consumable/tomatojuice, /datum/reagent/consumable/milk
|
||||||
),
|
),
|
||||||
list( //level 4
|
list( //level 4
|
||||||
"spaceacillin", "salglu_solution", "epinephrine", "charcoal"
|
/datum/reagent/medicine/spaceacillin, /datum/reagent/medicine/salglu_solution,
|
||||||
|
/datum/reagent/medicine/epinephrine, /datum/reagent/medicine/charcoal
|
||||||
),
|
),
|
||||||
list( //level 5
|
list( //level 5
|
||||||
"oil", "synaptizine", "mannitol", "space_drugs", "cryptobiolin"
|
/datum/reagent/oil, /datum/reagent/medicine/synaptizine, /datum/reagent/medicine/mannitol,
|
||||||
|
/datum/reagent/drug/space_drugs, /datum/reagent/cryptobiolin
|
||||||
),
|
),
|
||||||
list( // level 6
|
list( // level 6
|
||||||
"phenol", "inacusiate", "oculine", "antihol"
|
/datum/reagent/phenol, /datum/reagent/medicine/inacusiate, /datum/reagent/medicine/oculine, /datum/reagent/medicine/antihol
|
||||||
),
|
),
|
||||||
list( // level 7
|
list( // level 7
|
||||||
"leporazine", "mindbreaker", "corazone"
|
/datum/reagent/medicine/leporazine, /datum/reagent/toxin/mindbreaker, /datum/reagent/medicine/corazone
|
||||||
),
|
),
|
||||||
list( // level 8
|
list( // level 8
|
||||||
"pax", "happiness", "ephedrine"
|
/datum/reagent/pax, /datum/reagent/drug/happiness, /datum/reagent/medicine/ephedrine
|
||||||
),
|
),
|
||||||
list( // level 9
|
list( // level 9
|
||||||
"lipolicide", "sal_acid"
|
/datum/reagent/toxin/lipolicide, /datum/reagent/medicine/sal_acid
|
||||||
),
|
),
|
||||||
list( // level 10
|
list( // level 10
|
||||||
"haloperidol", "aranesp", "diphenhydramine"
|
/datum/reagent/medicine/haloperidol, /datum/reagent/drug/aranesp, /datum/reagent/medicine/diphenhydramine
|
||||||
),
|
),
|
||||||
list( //level 11
|
list( //level 11
|
||||||
"modafinil", "anacea"
|
/datum/reagent/medicine/modafinil, /datum/reagent/toxin/anacea
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -138,7 +138,7 @@ Bonus
|
|||||||
var/get_damage = rand(15,21) * power
|
var/get_damage = rand(15,21) * power
|
||||||
M.adjustOxyLoss(get_damage)
|
M.adjustOxyLoss(get_damage)
|
||||||
if(paralysis)
|
if(paralysis)
|
||||||
M.reagents.add_reagent_list(list("pancuronium" = 3, "sodium_thiopental" = 3))
|
M.reagents.add_reagent_list(list(/datum/reagent/toxin/pancuronium = 3, /datum/reagent/toxin/sodium_thiopental = 3))
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
/datum/symptom/asphyxiation/proc/Asphyxiate_death(mob/living/M, datum/disease/advance/A)
|
/datum/symptom/asphyxiation/proc/Asphyxiate_death(mob/living/M, datum/disease/advance/A)
|
||||||
|
|||||||
@@ -156,7 +156,7 @@ Bonus
|
|||||||
M.adjust_fire_stacks(get_stacks)
|
M.adjust_fire_stacks(get_stacks)
|
||||||
M.adjustFireLoss(get_stacks/2)
|
M.adjustFireLoss(get_stacks/2)
|
||||||
if(chems)
|
if(chems)
|
||||||
M.reagents.add_reagent("clf3", 2 * power)
|
M.reagents.add_reagent(/datum/reagent/clf3, 2 * power)
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
/datum/symptom/alkali/proc/Alkali_fire_stage_5(mob/living/M, datum/disease/advance/A)
|
/datum/symptom/alkali/proc/Alkali_fire_stage_5(mob/living/M, datum/disease/advance/A)
|
||||||
@@ -164,5 +164,5 @@ Bonus
|
|||||||
M.adjust_fire_stacks(get_stacks)
|
M.adjust_fire_stacks(get_stacks)
|
||||||
M.adjustFireLoss(get_stacks)
|
M.adjustFireLoss(get_stacks)
|
||||||
if(chems)
|
if(chems)
|
||||||
M.reagents.add_reagent_list(list("napalm" = 4 * power, "clf3" = 4 * power))
|
M.reagents.add_reagent_list(list(/datum/reagent/napalm = 4 * power, /datum/reagent/clf3 = 4 * power))
|
||||||
return 1
|
return 1
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ Bonus
|
|||||||
var/get_damage = rand(6,10)
|
var/get_damage = rand(6,10)
|
||||||
M.adjustBruteLoss(get_damage)
|
M.adjustBruteLoss(get_damage)
|
||||||
if(chems)
|
if(chems)
|
||||||
M.reagents.add_reagent_list(list("heparin" = 2, "lipolicide" = 2))
|
M.reagents.add_reagent_list(list(/datum/reagent/toxin/heparin = 2, /datum/reagent/toxin/lipolicide = 2))
|
||||||
if(zombie)
|
if(zombie)
|
||||||
M.reagents.add_reagent("romerol", 1)
|
M.reagents.add_reagent(/datum/reagent/romerol, 1)
|
||||||
return 1
|
return 1
|
||||||
@@ -117,8 +117,9 @@
|
|||||||
power = 2
|
power = 2
|
||||||
|
|
||||||
/datum/symptom/heal/chem/Heal(mob/living/M, datum/disease/advance/A, actual_power)
|
/datum/symptom/heal/chem/Heal(mob/living/M, datum/disease/advance/A, actual_power)
|
||||||
for(var/datum/reagent/R in M.reagents.reagent_list) //Not just toxins!
|
for(var/E in M.reagents.reagent_list) //Not just toxins!
|
||||||
M.reagents.remove_reagent(R.id, actual_power)
|
var/datum/reagent/R = E
|
||||||
|
M.reagents.remove_reagent(R.type, actual_power)
|
||||||
if(food_conversion)
|
if(food_conversion)
|
||||||
M.nutrition += 0.3
|
M.nutrition += 0.3
|
||||||
if(prob(2))
|
if(prob(2))
|
||||||
@@ -329,11 +330,11 @@
|
|||||||
if(M.fire_stacks < 0)
|
if(M.fire_stacks < 0)
|
||||||
M.fire_stacks = min(M.fire_stacks + 1 * absorption_coeff, 0)
|
M.fire_stacks = min(M.fire_stacks + 1 * absorption_coeff, 0)
|
||||||
. += power
|
. += power
|
||||||
if(M.reagents.has_reagent("holywater"))
|
if(M.reagents.has_reagent(/datum/reagent/water/holywater))
|
||||||
M.reagents.remove_reagent("holywater", 0.5 * absorption_coeff)
|
M.reagents.remove_reagent(/datum/reagent/water/holywater, 0.5 * absorption_coeff)
|
||||||
. += power * 0.75
|
. += power * 0.75
|
||||||
else if(M.reagents.has_reagent("water"))
|
else if(M.reagents.has_reagent(/datum/reagent/water))
|
||||||
M.reagents.remove_reagent("water", 0.5 * absorption_coeff)
|
M.reagents.remove_reagent(/datum/reagent/water, 0.5 * absorption_coeff)
|
||||||
. += power * 0.5
|
. += power * 0.5
|
||||||
|
|
||||||
/datum/symptom/heal/water/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power)
|
/datum/symptom/heal/water/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power)
|
||||||
@@ -392,7 +393,7 @@
|
|||||||
plasmamount = environment.gases[/datum/gas/plasma]
|
plasmamount = environment.gases[/datum/gas/plasma]
|
||||||
if(plasmamount && plasmamount > GLOB.meta_gas_visibility[/datum/gas/plasma]) //if there's enough plasma in the air to see
|
if(plasmamount && plasmamount > GLOB.meta_gas_visibility[/datum/gas/plasma]) //if there's enough plasma in the air to see
|
||||||
. += power * 0.5
|
. += power * 0.5
|
||||||
if(M.reagents.has_reagent("plasma"))
|
if(M.reagents.has_reagent(/datum/reagent/toxin/plasma))
|
||||||
. += power * 0.75
|
. += power * 0.75
|
||||||
|
|
||||||
/datum/symptom/heal/plasma/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power)
|
/datum/symptom/heal/plasma/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power)
|
||||||
|
|||||||
@@ -44,10 +44,10 @@
|
|||||||
|
|
||||||
if(A.stage >= 4)
|
if(A.stage >= 4)
|
||||||
M.drowsyness = max(0, M.drowsyness - 2)
|
M.drowsyness = max(0, M.drowsyness - 2)
|
||||||
if(M.reagents.has_reagent("mindbreaker"))
|
if(M.reagents.has_reagent(/datum/reagent/toxin/mindbreaker))
|
||||||
M.reagents.remove_reagent("mindbreaker", 5)
|
M.reagents.remove_reagent(/datum/reagent/toxin/mindbreaker, 5)
|
||||||
if(M.reagents.has_reagent("histamine"))
|
if(M.reagents.has_reagent(/datum/reagent/toxin/histamine))
|
||||||
M.reagents.remove_reagent("histamine", 5)
|
M.reagents.remove_reagent(/datum/reagent/toxin/histamine, 5)
|
||||||
M.hallucination = max(0, M.hallucination - 10)
|
M.hallucination = max(0, M.hallucination - 10)
|
||||||
|
|
||||||
if(A.stage >= 5)
|
if(A.stage >= 5)
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Ethanol"
|
cure_text = "Ethanol"
|
||||||
cures = list("ethanol")
|
cures = list(/datum/reagent/consumable/ethanol)
|
||||||
agent = "Excess Lepidopticides"
|
agent = "Excess Lepidopticides"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
||||||
desc = "If left untreated subject will regurgitate butterflies."
|
desc = "If left untreated subject will regurgitate butterflies."
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Sugar"
|
cure_text = "Sugar"
|
||||||
cures = list("sugar")
|
cures = list(/datum/reagent/consumable/sugar)
|
||||||
agent = "Apidae Infection"
|
agent = "Apidae Infection"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
||||||
desc = "If left untreated subject will regurgitate bees."
|
desc = "If left untreated subject will regurgitate bees."
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Mannitol"
|
cure_text = "Mannitol"
|
||||||
cures = list("mannitol")
|
cures = list(/datum/reagent/medicine/mannitol)
|
||||||
agent = "Cryptococcus Cosmosis"
|
agent = "Cryptococcus Cosmosis"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
cure_chance = 15//higher chance to cure, since two reagents are required
|
cure_chance = 15//higher chance to cure, since two reagents are required
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
name = "The Cold"
|
name = "The Cold"
|
||||||
max_stages = 3
|
max_stages = 3
|
||||||
cure_text = "Rest & Spaceacillin"
|
cure_text = "Rest & Spaceacillin"
|
||||||
cures = list("spaceacillin")
|
cures = list(/datum/reagent/medicine/spaceacillin)
|
||||||
agent = "XY-rhinovirus"
|
agent = "XY-rhinovirus"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
||||||
permeability_mod = 0.5
|
permeability_mod = 0.5
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Common Cold Anti-bodies & Spaceacillin"
|
cure_text = "Common Cold Anti-bodies & Spaceacillin"
|
||||||
cures = list("spaceacillin")
|
cures = list(/datum/reagent/medicine/spaceacillin)
|
||||||
agent = "ICE9-rhinovirus"
|
agent = "ICE9-rhinovirus"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
desc = "If left untreated the subject will slow, as if partly frozen."
|
desc = "If left untreated the subject will slow, as if partly frozen."
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Mutadone"
|
cure_text = "Mutadone"
|
||||||
cures = list("mutadone")
|
cures = list(/datum/reagent/medicine/mutadone)
|
||||||
disease_flags = CAN_CARRY|CAN_RESIST|CURABLE
|
disease_flags = CAN_CARRY|CAN_RESIST|CURABLE
|
||||||
agent = "S4E1 retrovirus"
|
agent = "S4E1 retrovirus"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Synaptizine & Sulfur"
|
cure_text = "Synaptizine & Sulfur"
|
||||||
cures = list("synaptizine","sulfur")
|
cures = list(/datum/reagent/medicine/synaptizine,/datum/reagent/sulfur)
|
||||||
agent = "Gravitokinetic Bipotential SADS-"
|
agent = "Gravitokinetic Bipotential SADS-"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
||||||
desc = "If left untreated death will occur."
|
desc = "If left untreated death will occur."
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
max_stages = 3
|
max_stages = 3
|
||||||
spread_text = "Airborne"
|
spread_text = "Airborne"
|
||||||
cure_text = "Spaceacillin"
|
cure_text = "Spaceacillin"
|
||||||
cures = list("spaceacillin")
|
cures = list(/datum/reagent/medicine/spaceacillin)
|
||||||
cure_chance = 10
|
cure_chance = 10
|
||||||
agent = "H13N1 flu virion"
|
agent = "H13N1 flu virion"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
max_stages = 3
|
max_stages = 3
|
||||||
spread_text = "Airborne"
|
spread_text = "Airborne"
|
||||||
cure_text = "Spaceacillin & Anti-bodies to the common flu"
|
cure_text = "Spaceacillin & Anti-bodies to the common flu"
|
||||||
cures = list("spaceacillin")
|
cures = list(/datum/reagent/medicine/spaceacillin)
|
||||||
cure_chance = 10
|
cure_chance = 10
|
||||||
agent = "1nqu1s1t10n flu virion"
|
agent = "1nqu1s1t10n flu virion"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Synaptizine & Sulfur"
|
cure_text = "Synaptizine & Sulfur"
|
||||||
cures = list("synaptizine","sulfur")
|
cures = list(/datum/reagent/medicine/synaptizine,/datum/reagent/sulfur)
|
||||||
cure_chance = 15//higher chance to cure, since two reagents are required
|
cure_chance = 15//higher chance to cure, since two reagents are required
|
||||||
agent = "Gravitokinetic Bipotential SADS+"
|
agent = "Gravitokinetic Bipotential SADS+"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
|
|||||||
@@ -58,7 +58,7 @@
|
|||||||
H.visible_message("<span class='userdanger'>[H] clutches at [H.p_their()] chest as if [H.p_their()] heart is stopping!</span>")
|
H.visible_message("<span class='userdanger'>[H] clutches at [H.p_their()] chest as if [H.p_their()] heart is stopping!</span>")
|
||||||
H.adjustStaminaLoss(60)
|
H.adjustStaminaLoss(60)
|
||||||
H.set_heartattack(TRUE)
|
H.set_heartattack(TRUE)
|
||||||
H.reagents.add_reagent("corazone", 3) // To give the victim a final chance to shock their heart before losing consciousness
|
H.reagents.add_reagent(/datum/reagent/medicine/corazone, 3) // To give the victim a final chance to shock their heart before losing consciousness
|
||||||
cure()
|
cure()
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
max_stages = 4
|
max_stages = 4
|
||||||
spread_text = "Airborne"
|
spread_text = "Airborne"
|
||||||
cure_text = "Iron"
|
cure_text = "Iron"
|
||||||
cures = list("iron")
|
cures = list(/datum/reagent/iron)
|
||||||
agent = "Fukkos Miracos"
|
agent = "Fukkos Miracos"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
disease_flags = CAN_CARRY|CAN_RESIST|CURABLE
|
disease_flags = CAN_CARRY|CAN_RESIST|CURABLE
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
spread_flags = DISEASE_SPREAD_SPECIAL
|
spread_flags = DISEASE_SPREAD_SPECIAL
|
||||||
disease_flags = CURABLE
|
disease_flags = CURABLE
|
||||||
cure_text = "Holy Water."
|
cure_text = "Holy Water."
|
||||||
cures = list("holywater")
|
cures = list(/datum/reagent/water/holywater)
|
||||||
cure_chance = 20
|
cure_chance = 20
|
||||||
agent = "Avian Vengence"
|
agent = "Avian Vengence"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
max_stages = 4
|
max_stages = 4
|
||||||
spread_text = "Airborne"
|
spread_text = "Airborne"
|
||||||
cure_text = "Banana products, especially banana bread."
|
cure_text = "Banana products, especially banana bread."
|
||||||
cures = list("banana")
|
cures = list(/datum/reagent/consumable/banana)
|
||||||
cure_chance = 75
|
cure_chance = 75
|
||||||
agent = "H0NI<42 Virus"
|
agent = "H0NI<42 Virus"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
..()
|
..()
|
||||||
agent = "Virus class [pick("A","B","C","D","E","F")][pick("A","B","C","D","E","F")]-[rand(50,300)]"
|
agent = "Virus class [pick("A","B","C","D","E","F")][pick("A","B","C","D","E","F")]-[rand(50,300)]"
|
||||||
if(prob(40))
|
if(prob(40))
|
||||||
cures = list("mutadone")
|
cures = list(/datum/reagent/medicine/mutadone)
|
||||||
else
|
else
|
||||||
restcure = 1
|
restcure = 1
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
spread_text = "On contact"
|
spread_text = "On contact"
|
||||||
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
spread_flags = DISEASE_SPREAD_BLOOD | DISEASE_SPREAD_CONTACT_SKIN | DISEASE_SPREAD_CONTACT_FLUIDS
|
||||||
cure_text = "Chick Chicky Boom!"
|
cure_text = "Chick Chicky Boom!"
|
||||||
cures = list("plasma")
|
cures = list(/datum/reagent/toxin/plasma)
|
||||||
agent = "Unknown"
|
agent = "Unknown"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
permeability_mod = 1
|
permeability_mod = 1
|
||||||
|
|||||||
@@ -93,7 +93,7 @@
|
|||||||
/datum/disease/transformation/jungle_fever
|
/datum/disease/transformation/jungle_fever
|
||||||
name = "Jungle Fever"
|
name = "Jungle Fever"
|
||||||
cure_text = "Death."
|
cure_text = "Death."
|
||||||
cures = list("adminordrazine")
|
cures = list(/datum/reagent/medicine/adminordrazine)
|
||||||
spread_text = "Monkey Bites"
|
spread_text = "Monkey Bites"
|
||||||
spread_flags = DISEASE_SPREAD_SPECIAL
|
spread_flags = DISEASE_SPREAD_SPECIAL
|
||||||
viable_mobtypes = list(/mob/living/carbon/monkey, /mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/monkey, /mob/living/carbon/human)
|
||||||
@@ -156,7 +156,7 @@
|
|||||||
|
|
||||||
name = "Robotic Transformation"
|
name = "Robotic Transformation"
|
||||||
cure_text = "An injection of copper."
|
cure_text = "An injection of copper."
|
||||||
cures = list("copper")
|
cures = list(/datum/reagent/copper)
|
||||||
cure_chance = 5
|
cure_chance = 5
|
||||||
agent = "R2D2 Nanomachines"
|
agent = "R2D2 Nanomachines"
|
||||||
desc = "This disease, actually acute nanomachine infection, converts the victim into a cyborg."
|
desc = "This disease, actually acute nanomachine infection, converts the victim into a cyborg."
|
||||||
@@ -189,7 +189,7 @@
|
|||||||
|
|
||||||
name = "Xenomorph Transformation"
|
name = "Xenomorph Transformation"
|
||||||
cure_text = "Spaceacillin & Glycerol"
|
cure_text = "Spaceacillin & Glycerol"
|
||||||
cures = list("spaceacillin", "glycerol")
|
cures = list(/datum/reagent/medicine/spaceacillin, /datum/reagent/glycerol)
|
||||||
cure_chance = 5
|
cure_chance = 5
|
||||||
agent = "Rip-LEY Alien Microbes"
|
agent = "Rip-LEY Alien Microbes"
|
||||||
desc = "This disease changes the victim into a xenomorph."
|
desc = "This disease changes the victim into a xenomorph."
|
||||||
@@ -218,7 +218,7 @@
|
|||||||
/datum/disease/transformation/slime
|
/datum/disease/transformation/slime
|
||||||
name = "Advanced Mutation Transformation"
|
name = "Advanced Mutation Transformation"
|
||||||
cure_text = "frost oil"
|
cure_text = "frost oil"
|
||||||
cures = list("frostoil")
|
cures = list(/datum/reagent/consumable/frostoil)
|
||||||
cure_chance = 80
|
cure_chance = 80
|
||||||
agent = "Advanced Mutation Toxin"
|
agent = "Advanced Mutation Toxin"
|
||||||
desc = "This highly concentrated extract converts anything into more of itself."
|
desc = "This highly concentrated extract converts anything into more of itself."
|
||||||
@@ -247,7 +247,7 @@
|
|||||||
/datum/disease/transformation/corgi
|
/datum/disease/transformation/corgi
|
||||||
name = "The Barkening"
|
name = "The Barkening"
|
||||||
cure_text = "Death"
|
cure_text = "Death"
|
||||||
cures = list("adminordrazine")
|
cures = list(/datum/reagent/medicine/adminordrazine)
|
||||||
agent = "Fell Doge Majicks"
|
agent = "Fell Doge Majicks"
|
||||||
desc = "This disease transforms the victim into a corgi."
|
desc = "This disease transforms the victim into a corgi."
|
||||||
severity = DISEASE_SEVERITY_BIOHAZARD
|
severity = DISEASE_SEVERITY_BIOHAZARD
|
||||||
@@ -272,7 +272,7 @@
|
|||||||
/datum/disease/transformation/morph
|
/datum/disease/transformation/morph
|
||||||
name = "Gluttony's Blessing"
|
name = "Gluttony's Blessing"
|
||||||
cure_text = "nothing"
|
cure_text = "nothing"
|
||||||
cures = list("adminordrazine")
|
cures = list(/datum/reagent/medicine/adminordrazine)
|
||||||
agent = "Gluttony's Blessing"
|
agent = "Gluttony's Blessing"
|
||||||
desc = "A 'gift' from somewhere terrible."
|
desc = "A 'gift' from somewhere terrible."
|
||||||
stage_prob = 20
|
stage_prob = 20
|
||||||
@@ -289,7 +289,7 @@
|
|||||||
/datum/disease/transformation/gondola
|
/datum/disease/transformation/gondola
|
||||||
name = "Gondola Transformation"
|
name = "Gondola Transformation"
|
||||||
cure_text = "Condensed Capsaicin, ingested or injected." //getting pepper sprayed doesn't help
|
cure_text = "Condensed Capsaicin, ingested or injected." //getting pepper sprayed doesn't help
|
||||||
cures = list("condensedcapsaicin") //beats the hippie crap right out of your system
|
cures = list(/datum/reagent/consumable/condensedcapsaicin) //beats the hippie crap right out of your system
|
||||||
cure_chance = 80
|
cure_chance = 80
|
||||||
stage_prob = 5
|
stage_prob = 5
|
||||||
agent = "Tranquility"
|
agent = "Tranquility"
|
||||||
@@ -310,17 +310,17 @@
|
|||||||
if (prob(5))
|
if (prob(5))
|
||||||
affected_mob.emote("smile")
|
affected_mob.emote("smile")
|
||||||
if (prob(20))
|
if (prob(20))
|
||||||
affected_mob.reagents.add_reagent_list(list("pax" = 5))
|
affected_mob.reagents.add_reagent(/datum/reagent/pax, 5)
|
||||||
if(3)
|
if(3)
|
||||||
if (prob(5))
|
if (prob(5))
|
||||||
affected_mob.emote("smile")
|
affected_mob.emote("smile")
|
||||||
if (prob(20))
|
if (prob(20))
|
||||||
affected_mob.reagents.add_reagent_list(list("pax" = 5))
|
affected_mob.reagents.add_reagent(/datum/reagent/pax, 5)
|
||||||
if(4)
|
if(4)
|
||||||
if (prob(5))
|
if (prob(5))
|
||||||
affected_mob.emote("smile")
|
affected_mob.emote("smile")
|
||||||
if (prob(20))
|
if (prob(20))
|
||||||
affected_mob.reagents.add_reagent_list(list("pax" = 5))
|
affected_mob.reagents.add_reagent(/datum/reagent/pax, 5)
|
||||||
if (prob(2))
|
if (prob(2))
|
||||||
to_chat(affected_mob, "<span class='danger'>You let go of what you were holding.</span>")
|
to_chat(affected_mob, "<span class='danger'>You let go of what you were holding.</span>")
|
||||||
var/obj/item/I = affected_mob.get_active_held_item()
|
var/obj/item/I = affected_mob.get_active_held_item()
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
max_stages = 5
|
max_stages = 5
|
||||||
spread_text = "Airborne"
|
spread_text = "Airborne"
|
||||||
cure_text = "Spaceacillin & salbutamol"
|
cure_text = "Spaceacillin & salbutamol"
|
||||||
cures = list("spaceacillin", "salbutamol")
|
cures = list(/datum/reagent/medicine/spaceacillin, /datum/reagent/medicine/salbutamol)
|
||||||
agent = "Fungal Tubercle bacillus Cosmosis"
|
agent = "Fungal Tubercle bacillus Cosmosis"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
cure_chance = 5//like hell are you getting out of hell
|
cure_chance = 5//like hell are you getting out of hell
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
max_stages = 4
|
max_stages = 4
|
||||||
spread_text = "Airborne"
|
spread_text = "Airborne"
|
||||||
cure_text = "The Manly Dorf"
|
cure_text = "The Manly Dorf"
|
||||||
cures = list("manlydorf")
|
cures = list(/datum/reagent/consumable/ethanol/manly_dorf)
|
||||||
cure_chance = 100
|
cure_chance = 100
|
||||||
agent = "Rincewindus Vulgaris"
|
agent = "Rincewindus Vulgaris"
|
||||||
viable_mobtypes = list(/mob/living/carbon/human)
|
viable_mobtypes = list(/mob/living/carbon/human)
|
||||||
|
|||||||
@@ -88,7 +88,7 @@
|
|||||||
var/obj/result_obj = new result(container)
|
var/obj/result_obj = new result(container)
|
||||||
for (var/obj/O in (container.contents-result_obj))
|
for (var/obj/O in (container.contents-result_obj))
|
||||||
if (O.reagents)
|
if (O.reagents)
|
||||||
O.reagents.del_reagent("nutriment")
|
O.reagents.del_reagent(/datum/reagent/consumable/nutriment)
|
||||||
O.reagents.update_total()
|
O.reagents.update_total()
|
||||||
O.reagents.trans_to(result_obj, O.reagents.total_volume)
|
O.reagents.trans_to(result_obj, O.reagents.total_volume)
|
||||||
qdel(O)
|
qdel(O)
|
||||||
|
|||||||
@@ -308,7 +308,7 @@
|
|||||||
|
|
||||||
/datum/status_effect/cultghost/tick()
|
/datum/status_effect/cultghost/tick()
|
||||||
if(owner.reagents)
|
if(owner.reagents)
|
||||||
owner.reagents.del_reagent("holywater") //can't be deconverted
|
owner.reagents.del_reagent(/datum/reagent/water/holywater) //can't be deconverted
|
||||||
|
|
||||||
/datum/status_effect/crusher_mark
|
/datum/status_effect/crusher_mark
|
||||||
id = "crusher_mark"
|
id = "crusher_mark"
|
||||||
|
|||||||
@@ -289,7 +289,7 @@
|
|||||||
medical_record_text = "Patient suffers from acute Reality Dissociation Syndrome and experiences vivid hallucinations."
|
medical_record_text = "Patient suffers from acute Reality Dissociation Syndrome and experiences vivid hallucinations."
|
||||||
|
|
||||||
/datum/quirk/insanity/on_process()
|
/datum/quirk/insanity/on_process()
|
||||||
if(quirk_holder.reagents.has_reagent("mindbreaker"))
|
if(quirk_holder.reagents.has_reagent(/datum/reagent/toxin/mindbreaker))
|
||||||
quirk_holder.hallucination = 0
|
quirk_holder.hallucination = 0
|
||||||
return
|
return
|
||||||
if(prob(2)) //we'll all be mad soon enough
|
if(prob(2)) //we'll all be mad soon enough
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
spray_range = 1
|
spray_range = 1
|
||||||
stream_range = 1
|
stream_range = 1
|
||||||
volume = 30
|
volume = 30
|
||||||
list_reagents = list("lube" = 30)
|
list_reagents = list(/datum/reagent/lube = 30)
|
||||||
|
|
||||||
//COMBAT CLOWN SHOES
|
//COMBAT CLOWN SHOES
|
||||||
//Clown shoes with combat stats and noslip. Of course they still squeak.
|
//Clown shoes with combat stats and noslip. Of course they still squeak.
|
||||||
@@ -165,7 +165,7 @@
|
|||||||
customfoodfilling = FALSE
|
customfoodfilling = FALSE
|
||||||
seed = null
|
seed = null
|
||||||
tastes = list("explosives" = 10)
|
tastes = list("explosives" = 10)
|
||||||
list_reagents = list("vitamin" = 1)
|
list_reagents = list(/datum/reagent/consumable/nutriment/vitamin = 1)
|
||||||
|
|
||||||
/obj/item/grown/bananapeel/bombanana
|
/obj/item/grown/bananapeel/bombanana
|
||||||
desc = "A peel from a banana. Why is it beeping?"
|
desc = "A peel from a banana. Why is it beeping?"
|
||||||
|
|||||||
@@ -18,10 +18,10 @@
|
|||||||
var/list/available_chems
|
var/list/available_chems
|
||||||
var/controls_inside = FALSE
|
var/controls_inside = FALSE
|
||||||
var/list/possible_chems = list(
|
var/list/possible_chems = list(
|
||||||
list("epinephrine", "morphine", "salbutamol", "bicaridine", "kelotane"),
|
list(/datum/reagent/medicine/epinephrine, /datum/reagent/medicine/morphine, /datum/reagent/medicine/salbutamol, /datum/reagent/medicine/bicaridine, /datum/reagent/medicine/kelotane),
|
||||||
list("oculine","inacusiate"),
|
list(/datum/reagent/medicine/oculine,/datum/reagent/medicine/inacusiate),
|
||||||
list("antitoxin", "mutadone", "mannitol", "pen_acid"),
|
list(/datum/reagent/medicine/antitoxin, /datum/reagent/medicine/mutadone, /datum/reagent/medicine/mannitol, /datum/reagent/medicine/pen_acid),
|
||||||
list("omnizine")
|
list(/datum/reagent/medicine/omnizine)
|
||||||
)
|
)
|
||||||
var/list/chem_buttons //Used when emagged to scramble which chem is used, eg: antitoxin -> morphine
|
var/list/chem_buttons //Used when emagged to scramble which chem is used, eg: antitoxin -> morphine
|
||||||
var/scrambled_chems = FALSE //Are chem buttons scrambled? used as a warning
|
var/scrambled_chems = FALSE //Are chem buttons scrambled? used as a warning
|
||||||
@@ -106,7 +106,7 @@
|
|||||||
return
|
return
|
||||||
if(is_operational() && occupant)
|
if(is_operational() && occupant)
|
||||||
var/datum/reagent/R = pick(reagents.reagent_list)
|
var/datum/reagent/R = pick(reagents.reagent_list)
|
||||||
inject_chem(R.id, occupant)
|
inject_chem(R.type, occupant)
|
||||||
open_machine()
|
open_machine()
|
||||||
//Is this too much?
|
//Is this too much?
|
||||||
if(severity == EMP_HEAVY)
|
if(severity == EMP_HEAVY)
|
||||||
@@ -217,9 +217,9 @@
|
|||||||
for(var/chem in available_chems)
|
for(var/chem in available_chems)
|
||||||
var/datum/reagent/R = reagents.has_reagent(chem)
|
var/datum/reagent/R = reagents.has_reagent(chem)
|
||||||
R = GLOB.chemical_reagents_list[chem]
|
R = GLOB.chemical_reagents_list[chem]
|
||||||
data["synthchems"] += list(list("name" = R.name, "id" = R.id, "synth_allowed" = synth_allowed(chem)))
|
data["synthchems"] += list(list("name" = R.name, "id" = R.type, "synth_allowed" = synth_allowed(chem)))
|
||||||
for(var/datum/reagent/R in reagents.reagent_list)
|
for(var/datum/reagent/R in reagents.reagent_list)
|
||||||
data["chems"] += list(list("name" = R.name, "id" = R.id, "vol" = R.volume, "purity" = R.purity, "allowed" = chem_allowed(R.id)))
|
data["chems"] += list(list("name" = R.name, "id" = R.type, "vol" = R.volume, "purity" = R.purity, "allowed" = chem_allowed(R.type)))
|
||||||
|
|
||||||
data["occupant"] = list()
|
data["occupant"] = list()
|
||||||
var/mob/living/mob_occupant = occupant
|
var/mob/living/mob_occupant = occupant
|
||||||
@@ -289,23 +289,23 @@
|
|||||||
open_machine()
|
open_machine()
|
||||||
. = TRUE
|
. = TRUE
|
||||||
if("inject")
|
if("inject")
|
||||||
var/chem = params["chem"]
|
var/chem = text2path(params["chem"])
|
||||||
var/amount = text2num(params["volume"])
|
var/amount = text2num(params["volume"])
|
||||||
if(!is_operational() || !mob_occupant)
|
if(!is_operational() || !mob_occupant || isnull(chem))
|
||||||
return
|
return
|
||||||
if(mob_occupant.health < min_health && chem != "epinephrine")
|
if(mob_occupant.health < min_health && chem != /datum/reagent/medicine/epinephrine)
|
||||||
return
|
return
|
||||||
if(inject_chem(chem, usr, amount))
|
if(inject_chem(chem, usr, amount))
|
||||||
. = TRUE
|
. = TRUE
|
||||||
if(scrambled_chems && prob(5))
|
if(scrambled_chems && prob(5))
|
||||||
to_chat(usr, "<span class='warning'>Chemical system re-route detected, results may not be as expected!</span>")
|
to_chat(usr, "<span class='warning'>Chemical system re-route detected, results may not be as expected!</span>")
|
||||||
if("synth")
|
if("synth")
|
||||||
var/chem = params["chem"]
|
var/chem = text2path(params["chem"])
|
||||||
if(!is_operational())
|
if(!is_operational())
|
||||||
return
|
return
|
||||||
reagents.add_reagent(chem_buttons[chem], 10) //other_purity = 0.75 for when the mechanics are in
|
reagents.add_reagent(chem_buttons[chem], 10) //other_purity = 0.75 for when the mechanics are in
|
||||||
if("purge")
|
if("purge")
|
||||||
var/chem = params["chem"]
|
var/chem = text2path(params["chem"])
|
||||||
if(allowed(usr))
|
if(allowed(usr))
|
||||||
if(!is_operational())
|
if(!is_operational())
|
||||||
return
|
return
|
||||||
@@ -342,7 +342,7 @@
|
|||||||
if(!mob_occupant || !mob_occupant.reagents)
|
if(!mob_occupant || !mob_occupant.reagents)
|
||||||
return
|
return
|
||||||
var/amount = mob_occupant.reagents.get_reagent_amount(chem) + 10 <= 20 * efficiency
|
var/amount = mob_occupant.reagents.get_reagent_amount(chem) + 10 <= 20 * efficiency
|
||||||
var/occ_health = mob_occupant.health > min_health || chem == "epinephrine"
|
var/occ_health = mob_occupant.health > min_health || chem == /datum/reagent/medicine/epinephrine
|
||||||
return amount && occ_health
|
return amount && occ_health
|
||||||
|
|
||||||
/obj/machinery/sleeper/proc/synth_allowed(chem)
|
/obj/machinery/sleeper/proc/synth_allowed(chem)
|
||||||
|
|||||||
@@ -123,15 +123,15 @@
|
|||||||
if(reagents.total_volume >= reagents.maximum_volume || !bag || !bag.reagents.total_volume)
|
if(reagents.total_volume >= reagents.maximum_volume || !bag || !bag.reagents.total_volume)
|
||||||
beep_stop_pumping()
|
beep_stop_pumping()
|
||||||
return
|
return
|
||||||
var/blood_amount = bag.reagents.get_reagent_amount("blood")
|
var/blood_amount = bag.reagents.get_reagent_amount(/datum/reagent/blood)
|
||||||
//monitor the machine and blood bag's reagents storage.
|
//monitor the machine and blood bag's reagents storage.
|
||||||
var/amount = min(blood_amount, min(transfer_amount, reagents.maximum_volume - reagents.total_volume))
|
var/amount = min(blood_amount, min(transfer_amount, reagents.maximum_volume - reagents.total_volume))
|
||||||
if(!amount)
|
if(!amount)
|
||||||
beep_stop_pumping()
|
beep_stop_pumping()
|
||||||
return
|
return
|
||||||
var/bonus = bag.blood_type == "SY" ? 0 : 5 * efficiency //no infinite loops using synthetics.
|
var/bonus = bag.blood_type == "SY" ? 0 : 5 * efficiency //no infinite loops using synthetics.
|
||||||
reagents.add_reagent("syntheticblood", amount + bonus)
|
reagents.add_reagent(/datum/reagent/blood/synthetics, amount + bonus)
|
||||||
bag.reagents.remove_reagent("blood", amount)
|
bag.reagents.remove_reagent(/datum/reagent/blood, amount)
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|
||||||
if(filling)
|
if(filling)
|
||||||
|
|||||||
@@ -88,7 +88,7 @@
|
|||||||
occupant_status += "</div></div>"
|
occupant_status += "</div></div>"
|
||||||
occupant_status += "<div class='line'><div class='statusLabel'>Health:</div><div class='progressBar'><div style='width: [viable_occupant.health]%;' class='progressFill good'></div></div><div class='statusValue'>[viable_occupant.health] %</div></div>"
|
occupant_status += "<div class='line'><div class='statusLabel'>Health:</div><div class='progressBar'><div style='width: [viable_occupant.health]%;' class='progressFill good'></div></div><div class='statusValue'>[viable_occupant.health] %</div></div>"
|
||||||
occupant_status += "<div class='line'><div class='statusLabel'>Radiation Level:</div><div class='progressBar'><div style='width: [viable_occupant.radiation/(RAD_MOB_SAFE/100)]%;' class='progressFill bad'></div></div><div class='statusValue'>[viable_occupant.radiation/(RAD_MOB_SAFE/100)] %</div></div>"
|
occupant_status += "<div class='line'><div class='statusLabel'>Radiation Level:</div><div class='progressBar'><div style='width: [viable_occupant.radiation/(RAD_MOB_SAFE/100)]%;' class='progressFill bad'></div></div><div class='statusValue'>[viable_occupant.radiation/(RAD_MOB_SAFE/100)] %</div></div>"
|
||||||
var/rejuvenators = viable_occupant.reagents.get_reagent_amount("potass_iodide")
|
var/rejuvenators = viable_occupant.reagents.get_reagent_amount(/datum/reagent/medicine/potass_iodide)
|
||||||
occupant_status += "<div class='line'><div class='statusLabel'>Rejuvenators:</div><div class='progressBar'><div style='width: [round((rejuvenators / REJUVENATORS_MAX) * 100)]%;' class='progressFill highlight'></div></div><div class='statusValue'>[rejuvenators] units</div></div>"
|
occupant_status += "<div class='line'><div class='statusLabel'>Rejuvenators:</div><div class='progressBar'><div style='width: [round((rejuvenators / REJUVENATORS_MAX) * 100)]%;' class='progressFill highlight'></div></div><div class='statusValue'>[rejuvenators] units</div></div>"
|
||||||
occupant_status += "<div class='line'><div class='statusLabel'>Unique Enzymes :</div><div class='statusValue'><span class='highlight'>[viable_occupant.dna.unique_enzymes]</span></div></div>"
|
occupant_status += "<div class='line'><div class='statusLabel'>Unique Enzymes :</div><div class='statusValue'><span class='highlight'>[viable_occupant.dna.unique_enzymes]</span></div></div>"
|
||||||
occupant_status += "<div class='line'><div class='statusLabel'>Last Operation:</div><div class='statusValue'>[last_change ? last_change : "----"]</div></div>"
|
occupant_status += "<div class='line'><div class='statusLabel'>Last Operation:</div><div class='statusValue'>[last_change ? last_change : "----"]</div></div>"
|
||||||
@@ -342,9 +342,9 @@
|
|||||||
current_screen = href_list["text"]
|
current_screen = href_list["text"]
|
||||||
if("rejuv")
|
if("rejuv")
|
||||||
if(viable_occupant && viable_occupant.reagents)
|
if(viable_occupant && viable_occupant.reagents)
|
||||||
var/potassiodide_amount = viable_occupant.reagents.get_reagent_amount("potass_iodide")
|
var/potassiodide_amount = viable_occupant.reagents.get_reagent_amount(/datum/reagent/medicine/potass_iodide)
|
||||||
var/can_add = max(min(REJUVENATORS_MAX - potassiodide_amount, REJUVENATORS_INJECT), 0)
|
var/can_add = max(min(REJUVENATORS_MAX - potassiodide_amount, REJUVENATORS_INJECT), 0)
|
||||||
viable_occupant.reagents.add_reagent("potass_iodide", can_add)
|
viable_occupant.reagents.add_reagent(/datum/reagent/medicine/potass_iodide, can_add)
|
||||||
if("setbufferlabel")
|
if("setbufferlabel")
|
||||||
var/text = sanitize(input(usr, "Input a new label:", "Input an Text", null) as text|null)
|
var/text = sanitize(input(usr, "Input a new label:", "Input an Text", null) as text|null)
|
||||||
if(num && text)
|
if(num && text)
|
||||||
|
|||||||
@@ -89,7 +89,7 @@
|
|||||||
selected_category = href_list["category"]
|
selected_category = href_list["category"]
|
||||||
|
|
||||||
if(href_list["disposeI"]) //Get rid of a reagent incase you add the wrong one by mistake
|
if(href_list["disposeI"]) //Get rid of a reagent incase you add the wrong one by mistake
|
||||||
reagents.del_reagent(href_list["disposeI"])
|
reagents.del_reagent(text2path(href_list["disposeI"]))
|
||||||
|
|
||||||
if(href_list["make"])
|
if(href_list["make"])
|
||||||
|
|
||||||
@@ -100,10 +100,10 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
|
|
||||||
var/synth_cost = being_built.reagents_list["synthflesh"]*prod_coeff
|
var/synth_cost = being_built.reagents_list[/datum/reagent/medicine/synthflesh]*prod_coeff
|
||||||
var/power = max(2000, synth_cost/5)
|
var/power = max(2000, synth_cost/5)
|
||||||
|
|
||||||
if(reagents.has_reagent("synthflesh", being_built.reagents_list["synthflesh"]*prod_coeff))
|
if(reagents.has_reagent(/datum/reagent/medicine/synthflesh, being_built.reagents_list[/datum/reagent/medicine/synthflesh]*prod_coeff))
|
||||||
busy = TRUE
|
busy = TRUE
|
||||||
use_power(power)
|
use_power(power)
|
||||||
flick("limbgrower_fill",src)
|
flick("limbgrower_fill",src)
|
||||||
@@ -117,8 +117,8 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
/obj/machinery/limbgrower/proc/build_item()
|
/obj/machinery/limbgrower/proc/build_item()
|
||||||
if(reagents.has_reagent("synthflesh", being_built.reagents_list["synthflesh"]*prod_coeff)) //sanity check, if this happens we are in big trouble
|
if(reagents.has_reagent(/datum/reagent/medicine/synthflesh, being_built.reagents_list[/datum/reagent/medicine/synthflesh]*prod_coeff)) //sanity check, if this happens we are in big trouble
|
||||||
reagents.remove_reagent("synthflesh",being_built.reagents_list["synthflesh"]*prod_coeff)
|
reagents.remove_reagent(/datum/reagent/medicine/synthflesh, being_built.reagents_list[/datum/reagent/medicine/synthflesh]*prod_coeff)
|
||||||
var/buildpath = being_built.build_path
|
var/buildpath = being_built.build_path
|
||||||
if(ispath(buildpath, /obj/item/bodypart)) //This feels like spatgheti code, but i need to initilise a limb somehow
|
if(ispath(buildpath, /obj/item/bodypart)) //This feels like spatgheti code, but i need to initilise a limb somehow
|
||||||
build_limb(buildpath)
|
build_limb(buildpath)
|
||||||
@@ -198,7 +198,7 @@
|
|||||||
|
|
||||||
for(var/datum/reagent/R in reagents.reagent_list)
|
for(var/datum/reagent/R in reagents.reagent_list)
|
||||||
dat += "[R.name]: [R.volume]"
|
dat += "[R.name]: [R.volume]"
|
||||||
dat += "<A href='?src=[REF(src)];disposeI=[R.id]'>Purge</A><BR>"
|
dat += "<A href='?src=[REF(src)];disposeI=[R]'>Purge</A><BR>"
|
||||||
|
|
||||||
dat += "</div>"
|
dat += "</div>"
|
||||||
return dat
|
return dat
|
||||||
@@ -208,12 +208,12 @@
|
|||||||
return dat
|
return dat
|
||||||
|
|
||||||
/obj/machinery/limbgrower/proc/can_build(datum/design/D)
|
/obj/machinery/limbgrower/proc/can_build(datum/design/D)
|
||||||
return (reagents.has_reagent("synthflesh", D.reagents_list["synthflesh"]*prod_coeff)) //Return whether the machine has enough synthflesh to produce the design
|
return (reagents.has_reagent(/datum/reagent/medicine/synthflesh, D.reagents_list[/datum/reagent/medicine/synthflesh]*prod_coeff)) //Return whether the machine has enough synthflesh to produce the design
|
||||||
|
|
||||||
/obj/machinery/limbgrower/proc/get_design_cost(datum/design/D)
|
/obj/machinery/limbgrower/proc/get_design_cost(datum/design/D)
|
||||||
var/dat
|
var/dat
|
||||||
if(D.reagents_list["synthflesh"])
|
if(D.reagents_list["synthflesh"])
|
||||||
dat += "[D.reagents_list["synthflesh"] * prod_coeff] Synthetic flesh "
|
dat += "[D.reagents_list[/datum/reagent/medicine/synthflesh] * prod_coeff] Synthetic flesh "
|
||||||
return dat
|
return dat
|
||||||
|
|
||||||
/obj/machinery/limbgrower/emag_act(mob/user)
|
/obj/machinery/limbgrower/emag_act(mob/user)
|
||||||
|
|||||||
@@ -191,11 +191,11 @@
|
|||||||
if(!R || !patient || !SG || !(SG in chassis.equipment))
|
if(!R || !patient || !SG || !(SG in chassis.equipment))
|
||||||
return 0
|
return 0
|
||||||
var/to_inject = min(R.volume, inject_amount)
|
var/to_inject = min(R.volume, inject_amount)
|
||||||
if(to_inject && patient.reagents.get_reagent_amount(R.id) + to_inject <= inject_amount*2)
|
if(to_inject && patient.reagents.get_reagent_amount(R.type) + to_inject <= inject_amount*2)
|
||||||
occupant_message("Injecting [patient] with [to_inject] units of [R.name].")
|
occupant_message("Injecting [patient] with [to_inject] units of [R.name].")
|
||||||
log_message("Injecting [patient] with [to_inject] units of [R.name].")
|
log_message("Injecting [patient] with [to_inject] units of [R.name].")
|
||||||
log_combat(chassis.occupant, patient, "injected", "[name] ([R] - [to_inject] units)")
|
log_combat(chassis.occupant, patient, "injected", "[name] ([R] - [to_inject] units)")
|
||||||
SG.reagents.trans_id_to(patient,R.id,to_inject)
|
SG.reagents.trans_id_to(patient,R.type,to_inject)
|
||||||
update_equip_info()
|
update_equip_info()
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -228,8 +228,8 @@
|
|||||||
M.AdjustStun(-80)
|
M.AdjustStun(-80)
|
||||||
M.AdjustKnockdown(-80)
|
M.AdjustKnockdown(-80)
|
||||||
M.AdjustUnconscious(-80)
|
M.AdjustUnconscious(-80)
|
||||||
if(M.reagents.get_reagent_amount("epinephrine") < 5)
|
if(M.reagents.get_reagent_amount(/datum/reagent/medicine/epinephrine) < 5)
|
||||||
M.reagents.add_reagent("epinephrine", 5)
|
M.reagents.add_reagent(/datum/reagent/medicine/epinephrine, 5)
|
||||||
chassis.use_power(energy_drain)
|
chassis.use_power(energy_drain)
|
||||||
update_equip_info()
|
update_equip_info()
|
||||||
|
|
||||||
@@ -259,7 +259,7 @@
|
|||||||
. = ..()
|
. = ..()
|
||||||
create_reagents(max_volume, NO_REACT)
|
create_reagents(max_volume, NO_REACT)
|
||||||
syringes = new
|
syringes = new
|
||||||
known_reagents = list("epinephrine"="Epinephrine","charcoal"="Charcoal")
|
known_reagents = list(/datum/reagent/medicine/epinephrine = "Epinephrine", /datum/reagent/medicine/charcoal = "Charcoal")
|
||||||
processed_reagents = new
|
processed_reagents = new
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/detach()
|
/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/detach()
|
||||||
@@ -330,8 +330,7 @@
|
|||||||
if(M.can_inject(null, 1))
|
if(M.can_inject(null, 1))
|
||||||
if(mechsyringe.reagents)
|
if(mechsyringe.reagents)
|
||||||
for(var/datum/reagent/A in mechsyringe.reagents.reagent_list)
|
for(var/datum/reagent/A in mechsyringe.reagents.reagent_list)
|
||||||
R += A.id + " ("
|
R += "[A.name] ([num2text(A.volume)]"
|
||||||
R += num2text(A.volume) + "),"
|
|
||||||
mechsyringe.icon_state = initial(mechsyringe.icon_state)
|
mechsyringe.icon_state = initial(mechsyringe.icon_state)
|
||||||
mechsyringe.icon = initial(mechsyringe.icon)
|
mechsyringe.icon = initial(mechsyringe.icon)
|
||||||
mechsyringe.reagents.reaction(M, INJECT)
|
mechsyringe.reagents.reaction(M, INJECT)
|
||||||
@@ -445,7 +444,7 @@
|
|||||||
var/output
|
var/output
|
||||||
for(var/datum/reagent/R in reagents.reagent_list)
|
for(var/datum/reagent/R in reagents.reagent_list)
|
||||||
if(R.volume > 0)
|
if(R.volume > 0)
|
||||||
output += "[R]: [round(R.volume,0.001)] - <a href=\"?src=[REF(src)];purge_reagent=[R.id]\">Purge Reagent</a><br />"
|
output += "[R]: [round(R.volume,0.001)] - <a href=\"?src=[REF(src)];purge_reagent=[R.type]\">Purge Reagent</a><br />"
|
||||||
if(output)
|
if(output)
|
||||||
output += "Total: [round(reagents.total_volume,0.001)]/[reagents.maximum_volume] - <a href=\"?src=[REF(src)];purge_all=1\">Purge All</a>"
|
output += "Total: [round(reagents.total_volume,0.001)]/[reagents.maximum_volume] - <a href=\"?src=[REF(src)];purge_all=1\">Purge All</a>"
|
||||||
return output || "None"
|
return output || "None"
|
||||||
@@ -481,7 +480,7 @@
|
|||||||
return 0
|
return 0
|
||||||
occupant_message("Analyzing reagents...")
|
occupant_message("Analyzing reagents...")
|
||||||
for(var/datum/reagent/R in A.reagents.reagent_list)
|
for(var/datum/reagent/R in A.reagents.reagent_list)
|
||||||
if(R.can_synth && add_known_reagent(R.id,R.name))
|
if(R.can_synth && add_known_reagent(R.type,R.name))
|
||||||
occupant_message("Reagent analyzed, identified as [R.name] and added to database.")
|
occupant_message("Reagent analyzed, identified as [R.name] and added to database.")
|
||||||
send_byjax(chassis.occupant,"msyringegun.browser","reagents_form",get_reagents_form())
|
send_byjax(chassis.occupant,"msyringegun.browser","reagents_form",get_reagents_form())
|
||||||
occupant_message("Analyzis complete.")
|
occupant_message("Analyzis complete.")
|
||||||
|
|||||||
@@ -171,7 +171,7 @@
|
|||||||
/obj/item/mecha_parts/mecha_equipment/extinguisher/Initialize()
|
/obj/item/mecha_parts/mecha_equipment/extinguisher/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
create_reagents(1000)
|
create_reagents(1000)
|
||||||
reagents.add_reagent("water", 1000)
|
reagents.add_reagent(/datum/reagent/water, 1000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/extinguisher/action(atom/target) //copypasted from extinguisher. TODO: Rewrite from scratch.
|
/obj/item/mecha_parts/mecha_equipment/extinguisher/action(atom/target) //copypasted from extinguisher. TODO: Rewrite from scratch.
|
||||||
if(!action_checks(target) || get_dist(chassis, target)>3)
|
if(!action_checks(target) || get_dist(chassis, target)>3)
|
||||||
|
|||||||
@@ -286,10 +286,10 @@
|
|||||||
/obj/mecha/proc/mech_toxin_damage(mob/living/target)
|
/obj/mecha/proc/mech_toxin_damage(mob/living/target)
|
||||||
playsound(src, 'sound/effects/spray2.ogg', 50, 1)
|
playsound(src, 'sound/effects/spray2.ogg', 50, 1)
|
||||||
if(target.reagents)
|
if(target.reagents)
|
||||||
if(target.reagents.get_reagent_amount("cryptobiolin") + force < force*2)
|
if(target.reagents.get_reagent_amount(/datum/reagent/cryptobiolin) + force < force*2)
|
||||||
target.reagents.add_reagent("cryptobiolin", force/2)
|
target.reagents.add_reagent(/datum/reagent/cryptobiolin, force/2)
|
||||||
if(target.reagents.get_reagent_amount("toxin") + force < force*2)
|
if(target.reagents.get_reagent_amount(/datum/reagent/toxin) + force < force*2)
|
||||||
target.reagents.add_reagent("toxin", force/2.5)
|
target.reagents.add_reagent(/datum/reagent/toxin, force/2.5)
|
||||||
|
|
||||||
|
|
||||||
/obj/mecha/mech_melee_attack(obj/mecha/M)
|
/obj/mecha/mech_melee_attack(obj/mecha/M)
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/xeno
|
/obj/effect/decal/cleanable/blood/gibs/xeno
|
||||||
color = BLOOD_COLOR_XENO
|
color = BLOOD_COLOR_XENO
|
||||||
gibs_reagent_id = "liquidxenogibs"
|
gibs_reagent_id = /datum/reagent/liquidgibs/xeno
|
||||||
gibs_bloodtype = "X*"
|
gibs_bloodtype = "X*"
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/xeno/Initialize(mapload, list/datum/disease/diseases)
|
/obj/effect/decal/cleanable/blood/gibs/xeno/Initialize(mapload, list/datum/disease/diseases)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6")
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6")
|
||||||
mergeable_decal = FALSE
|
mergeable_decal = FALSE
|
||||||
var/body_colors = "#e3ba84" //a default color just in case.
|
var/body_colors = "#e3ba84" //a default color just in case.
|
||||||
var/gibs_reagent_id = "liquidgibs"
|
var/gibs_reagent_id = /datum/reagent/liquidgibs
|
||||||
var/gibs_bloodtype = "A+"
|
var/gibs_bloodtype = "A+"
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/Initialize(mapload, list/datum/disease/diseases)
|
/obj/effect/decal/cleanable/blood/gibs/Initialize(mapload, list/datum/disease/diseases)
|
||||||
@@ -120,7 +120,6 @@
|
|||||||
//Lizards
|
//Lizards
|
||||||
/obj/effect/decal/cleanable/blood/gibs/human/lizard
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard
|
||||||
body_colors = "117720"
|
body_colors = "117720"
|
||||||
gibs_reagent_id = "liquidgibs"
|
|
||||||
gibs_bloodtype = "L"
|
gibs_bloodtype = "L"
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/human/lizard/Initialize(mapload, list/datum/disease/diseases)
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/Initialize(mapload, list/datum/disease/diseases)
|
||||||
@@ -148,7 +147,7 @@
|
|||||||
// Slime Gibs
|
// Slime Gibs
|
||||||
/obj/effect/decal/cleanable/blood/gibs/slime
|
/obj/effect/decal/cleanable/blood/gibs/slime
|
||||||
desc = "They look gooey and gruesome."
|
desc = "They look gooey and gruesome."
|
||||||
gibs_reagent_id = "liquidslimegibs"
|
gibs_reagent_id = /datum/reagent/liquidgibs/slime
|
||||||
gibs_bloodtype = "GEL"
|
gibs_bloodtype = "GEL"
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/slime/Initialize(mapload, list/datum/disease/diseases)
|
/obj/effect/decal/cleanable/blood/gibs/slime/Initialize(mapload, list/datum/disease/diseases)
|
||||||
@@ -187,7 +186,7 @@
|
|||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/synth
|
/obj/effect/decal/cleanable/blood/gibs/synth
|
||||||
desc = "They look sludgy and disgusting."
|
desc = "They look sludgy and disgusting."
|
||||||
gibs_reagent_id = "liquidsyntheticgibs"
|
gibs_reagent_id = /datum/reagent/liquidgibs/synth
|
||||||
gibs_bloodtype = "SY"
|
gibs_bloodtype = "SY"
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/synth/Initialize(mapload, list/datum/disease/diseases)
|
/obj/effect/decal/cleanable/blood/gibs/synth/Initialize(mapload, list/datum/disease/diseases)
|
||||||
@@ -198,7 +197,7 @@
|
|||||||
/obj/effect/decal/cleanable/blood/gibs/ipc
|
/obj/effect/decal/cleanable/blood/gibs/ipc
|
||||||
desc = "They look sharp yet oozing."
|
desc = "They look sharp yet oozing."
|
||||||
body_colors = "00ff00"
|
body_colors = "00ff00"
|
||||||
gibs_reagent_id = "liquidoilgibs"
|
gibs_reagent_id = /datum/reagent/liquidgibs/oil
|
||||||
gibs_bloodtype = "HF"
|
gibs_bloodtype = "HF"
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/blood/gibs/ipc/Initialize(mapload, list/datum/disease/diseases)
|
/obj/effect/decal/cleanable/blood/gibs/ipc/Initialize(mapload, list/datum/disease/diseases)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
/obj/effect/decal/cleanable/ash/Initialize()
|
/obj/effect/decal/cleanable/ash/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
reagents.add_reagent("ash", 30)
|
reagents.add_reagent(/datum/reagent/ash, 30)
|
||||||
pixel_x = rand(-5, 5)
|
pixel_x = rand(-5, 5)
|
||||||
pixel_y = rand(-5, 5)
|
pixel_y = rand(-5, 5)
|
||||||
|
|
||||||
@@ -27,7 +27,7 @@
|
|||||||
|
|
||||||
/obj/effect/decal/cleanable/ash/large/Initialize()
|
/obj/effect/decal/cleanable/ash/large/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
reagents.add_reagent("ash", 30) //double the amount of ash.
|
reagents.add_reagent(/datum/reagent/ash, 30) //double the amount of ash.
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/glass
|
/obj/effect/decal/cleanable/glass
|
||||||
name = "tiny shards"
|
name = "tiny shards"
|
||||||
@@ -131,12 +131,10 @@
|
|||||||
playsound(get_turf(src), 'sound/items/drink.ogg', 50, 1) //slurp
|
playsound(get_turf(src), 'sound/items/drink.ogg', 50, 1) //slurp
|
||||||
H.visible_message("<span class='alert'>[H] extends a small proboscis into the vomit pool, sucking it with a slurping sound.</span>")
|
H.visible_message("<span class='alert'>[H] extends a small proboscis into the vomit pool, sucking it with a slurping sound.</span>")
|
||||||
if(reagents)
|
if(reagents)
|
||||||
for(var/datum/reagent/R in reagents.reagent_list)
|
for(var/datum/reagent/consumable/R in reagents.reagent_list)
|
||||||
if (istype(R, /datum/reagent/consumable))
|
if(R.nutriment_factor > 0)
|
||||||
var/datum/reagent/consumable/nutri_check = R
|
H.nutrition += R.nutriment_factor * R.volume
|
||||||
if(nutri_check.nutriment_factor >0)
|
reagents.del_reagent(R.type)
|
||||||
H.nutrition += nutri_check.nutriment_factor * nutri_check.volume
|
|
||||||
reagents.remove_reagent(nutri_check.id,nutri_check.volume)
|
|
||||||
reagents.trans_to(H, reagents.total_volume)
|
reagents.trans_to(H, reagents.total_volume)
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
/obj/effect/decal/cleanable/robot_debris/Initialize(mapload, list/datum/disease/diseases)
|
/obj/effect/decal/cleanable/robot_debris/Initialize(mapload, list/datum/disease/diseases)
|
||||||
. = ..()
|
. = ..()
|
||||||
reagents.add_reagent("liquidoilgibs", 5)
|
reagents.add_reagent(/datum/reagent/liquidgibs, 5)
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/robot_debris/proc/streak(list/directions)
|
/obj/effect/decal/cleanable/robot_debris/proc/streak(list/directions)
|
||||||
set waitfor = 0
|
set waitfor = 0
|
||||||
@@ -53,8 +53,8 @@
|
|||||||
|
|
||||||
/obj/effect/decal/cleanable/oil/Initialize()
|
/obj/effect/decal/cleanable/oil/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
reagents.add_reagent("oil", 30)
|
reagents.add_reagent(/datum/reagent/oil, 30)
|
||||||
reagents.add_reagent("liquidoilgibs", 5)
|
reagents.add_reagent(/datum/reagent/liquidgibs/oil, 5)
|
||||||
|
|
||||||
/obj/effect/decal/cleanable/oil/streak
|
/obj/effect/decal/cleanable/oil/streak
|
||||||
random_icon_states = list("streak1", "streak2", "streak3", "streak4", "streak5")
|
random_icon_states = list("streak1", "streak2", "streak3", "streak4", "streak5")
|
||||||
|
|||||||
@@ -55,7 +55,7 @@
|
|||||||
var/obj/effect/decal/cleanable/plasma/P = (locate(/obj/effect/decal/cleanable/plasma) in get_turf(src))
|
var/obj/effect/decal/cleanable/plasma/P = (locate(/obj/effect/decal/cleanable/plasma) in get_turf(src))
|
||||||
if(!P)
|
if(!P)
|
||||||
P = new(loc)
|
P = new(loc)
|
||||||
P.reagents.add_reagent("stable_plasma", absorbed_plasma)
|
P.reagents.add_reagent(/datum/reagent/stable_plasma, absorbed_plasma)
|
||||||
|
|
||||||
flick("[icon_state]-disolve", src)
|
flick("[icon_state]-disolve", src)
|
||||||
QDEL_IN(src, 5)
|
QDEL_IN(src, 5)
|
||||||
|
|||||||
@@ -136,7 +136,7 @@
|
|||||||
victim.put_in_hands(chainsaw, forced = TRUE)
|
victim.put_in_hands(chainsaw, forced = TRUE)
|
||||||
chainsaw.attack_self(victim)
|
chainsaw.attack_self(victim)
|
||||||
chainsaw.wield(victim)
|
chainsaw.wield(victim)
|
||||||
victim.reagents.add_reagent("adminordrazine",25)
|
victim.reagents.add_reagent(/datum/reagent/medicine/adminordrazine,25)
|
||||||
to_chat(victim, "<span class='warning'>KILL, KILL, KILL! YOU HAVE NO ALLIES ANYMORE, KILL THEM ALL!</span>")
|
to_chat(victim, "<span class='warning'>KILL, KILL, KILL! YOU HAVE NO ALLIES ANYMORE, KILL THEM ALL!</span>")
|
||||||
|
|
||||||
victim.client.color = pure_red
|
victim.client.color = pure_red
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ RSF
|
|||||||
to_chat(user, "Fabricating Cookie..")
|
to_chat(user, "Fabricating Cookie..")
|
||||||
var/obj/item/reagent_containers/food/snacks/cookie/S = new /obj/item/reagent_containers/food/snacks/cookie(T)
|
var/obj/item/reagent_containers/food/snacks/cookie/S = new /obj/item/reagent_containers/food/snacks/cookie(T)
|
||||||
if(toxin)
|
if(toxin)
|
||||||
S.reagents.add_reagent("chloralhydrate", 10)
|
S.reagents.add_reagent(/datum/reagent/toxin/chloralhydrate, 10)
|
||||||
if (iscyborg(user))
|
if (iscyborg(user))
|
||||||
var/mob/living/silicon/robot/R = user
|
var/mob/living/silicon/robot/R = user
|
||||||
R.cell.charge -= 100
|
R.cell.charge -= 100
|
||||||
|
|||||||
@@ -68,7 +68,7 @@
|
|||||||
|
|
||||||
// make some colorful reagent, and apply it to the lungs
|
// make some colorful reagent, and apply it to the lungs
|
||||||
L.create_reagents(10)
|
L.create_reagents(10)
|
||||||
L.reagents.add_reagent("colorful_reagent", 10)
|
L.reagents.add_reagent(/datum/reagent/colorful_reagent, 10)
|
||||||
L.reagents.reaction(L, TOUCH, 1)
|
L.reagents.reaction(L, TOUCH, 1)
|
||||||
|
|
||||||
// TODO maybe add some colorful vomit?
|
// TODO maybe add some colorful vomit?
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
return (TOXLOSS|OXYLOSS)
|
return (TOXLOSS|OXYLOSS)
|
||||||
else if(can_use(user) && !L)
|
else if(can_use(user) && !L)
|
||||||
user.visible_message("<span class='suicide'>[user] is spraying toner on [user.p_them()]self from [src]! It looks like [user.p_theyre()] trying to commit suicide.</span>")
|
user.visible_message("<span class='suicide'>[user] is spraying toner on [user.p_them()]self from [src]! It looks like [user.p_theyre()] trying to commit suicide.</span>")
|
||||||
user.reagents.add_reagent("colorful_reagent", 1)
|
user.reagents.add_reagent(/datum/reagent/colorful_reagent, 1)
|
||||||
user.reagents.reaction(user, TOUCH, 1)
|
user.reagents.reaction(user, TOUCH, 1)
|
||||||
return TOXLOSS
|
return TOXLOSS
|
||||||
|
|
||||||
|
|||||||
@@ -120,4 +120,4 @@
|
|||||||
flags_1 = CONDUCT_1
|
flags_1 = CONDUCT_1
|
||||||
w_class = WEIGHT_CLASS_SMALL
|
w_class = WEIGHT_CLASS_SMALL
|
||||||
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
materials = list(MAT_METAL=50, MAT_GLASS=50)
|
||||||
grind_results = list("iron" = 10, "silicon" = 10)
|
grind_results = list(/datum/reagent/iron = 10, /datum/reagent/silicon = 10)
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
var/smoketime = 5
|
var/smoketime = 5
|
||||||
w_class = WEIGHT_CLASS_TINY
|
w_class = WEIGHT_CLASS_TINY
|
||||||
heat = 1000
|
heat = 1000
|
||||||
grind_results = list("phosphorus" = 2)
|
grind_results = list(/datum/reagent/phosphorus = 2)
|
||||||
|
|
||||||
/obj/item/match/process()
|
/obj/item/match/process()
|
||||||
smoketime--
|
smoketime--
|
||||||
@@ -113,7 +113,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
var/lastHolder = null
|
var/lastHolder = null
|
||||||
var/smoketime = 300
|
var/smoketime = 300
|
||||||
var/chem_volume = 30
|
var/chem_volume = 30
|
||||||
var/list/list_reagents = list("nicotine" = 15)
|
var/list/list_reagents = list(/datum/reagent/drug/nicotine = 15)
|
||||||
heat = 1000
|
heat = 1000
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/suicide_act(mob/user)
|
/obj/item/clothing/mask/cigarette/suicide_act(mob/user)
|
||||||
@@ -169,15 +169,15 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
hitsound = 'sound/items/welder.ogg'
|
hitsound = 'sound/items/welder.ogg'
|
||||||
damtype = "fire"
|
damtype = "fire"
|
||||||
force = 4
|
force = 4
|
||||||
if(reagents.get_reagent_amount("plasma")) // the plasma explodes when exposed to fire
|
if(reagents.get_reagent_amount(/datum/reagent/toxin/plasma)) // the plasma explodes when exposed to fire
|
||||||
var/datum/effect_system/reagents_explosion/e = new()
|
var/datum/effect_system/reagents_explosion/e = new()
|
||||||
e.set_up(round(reagents.get_reagent_amount("plasma") / 2.5, 1), get_turf(src), 0, 0)
|
e.set_up(round(reagents.get_reagent_amount(/datum/reagent/toxin/plasma) / 2.5, 1), get_turf(src), 0, 0)
|
||||||
e.start()
|
e.start()
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
return
|
||||||
if(reagents.get_reagent_amount("welding_fuel")) // the fuel explodes, too, but much less violently
|
if(reagents.get_reagent_amount(/datum/reagent/fuel)) // the fuel explodes, too, but much less violently
|
||||||
var/datum/effect_system/reagents_explosion/e = new()
|
var/datum/effect_system/reagents_explosion/e = new()
|
||||||
e.set_up(round(reagents.get_reagent_amount("welding_fuel") / 5, 1), get_turf(src), 0, 0)
|
e.set_up(round(reagents.get_reagent_amount(/datum/reagent/fuel) / 5, 1), get_turf(src), 0, 0)
|
||||||
e.start()
|
e.start()
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
return
|
||||||
@@ -268,29 +268,29 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/uplift
|
/obj/item/clothing/mask/cigarette/uplift
|
||||||
desc = "An Uplift Smooth brand cigarette."
|
desc = "An Uplift Smooth brand cigarette."
|
||||||
list_reagents = list("nicotine" = 7.5, "menthol" = 7.5)
|
list_reagents = list(/datum/reagent/drug/nicotine = 7.5, /datum/reagent/consumable/menthol = 7.5)
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/robust
|
/obj/item/clothing/mask/cigarette/robust
|
||||||
desc = "A Robust brand cigarette."
|
desc = "A Robust brand cigarette."
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/robustgold
|
/obj/item/clothing/mask/cigarette/robustgold
|
||||||
desc = "A Robust Gold brand cigarette."
|
desc = "A Robust Gold brand cigarette."
|
||||||
list_reagents = list("nicotine" = 15, "gold" = 1)
|
list_reagents = list(/datum/reagent/drug/nicotine = 15, /datum/reagent/gold = 1)
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/carp
|
/obj/item/clothing/mask/cigarette/carp
|
||||||
desc = "A Carp Classic brand cigarette."
|
desc = "A Carp Classic brand cigarette."
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/syndicate
|
/obj/item/clothing/mask/cigarette/syndicate
|
||||||
desc = "An unknown brand cigarette."
|
desc = "An unknown brand cigarette."
|
||||||
list_reagents = list("nicotine" = 15, "omnizine" = 15)
|
list_reagents = list(/datum/reagent/drug/nicotine = 15, /datum/reagent/medicine/omnizine = 15)
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/shadyjims
|
/obj/item/clothing/mask/cigarette/shadyjims
|
||||||
desc = "A Shady Jim's Super Slims cigarette."
|
desc = "A Shady Jim's Super Slims cigarette."
|
||||||
list_reagents = list("nicotine" = 15, "lipolicide" = 4, "ammonia" = 2, "plantbgone" = 1, "toxin" = 1.5)
|
list_reagents = list(/datum/reagent/drug/nicotine = 15, /datum/reagent/toxin/lipolicide = 4, /datum/reagent/ammonia = 2, /datum/reagent/toxin/plantbgone = 1, /datum/reagent/toxin = 1.5)
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/xeno
|
/obj/item/clothing/mask/cigarette/xeno
|
||||||
desc = "A Xeno Filtered brand cigarette."
|
desc = "A Xeno Filtered brand cigarette."
|
||||||
list_reagents = list ("nicotine" = 20, "regen_jelly" = 15, "krokodil" = 4)
|
list_reagents = list (/datum/reagent/drug/nicotine = 20, /datum/reagent/medicine/regen_jelly = 15, /datum/reagent/drug/krokodil = 4)
|
||||||
|
|
||||||
// Rollies.
|
// Rollies.
|
||||||
|
|
||||||
@@ -313,17 +313,17 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
src.pixel_y = rand(-5, 5)
|
src.pixel_y = rand(-5, 5)
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/rollie/nicotine
|
/obj/item/clothing/mask/cigarette/rollie/nicotine
|
||||||
list_reagents = list("nicotine" = 15)
|
list_reagents = list(/datum/reagent/drug/nicotine = 15)
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/rollie/trippy
|
/obj/item/clothing/mask/cigarette/rollie/trippy
|
||||||
list_reagents = list("nicotine" = 15, "mushroomhallucinogen" = 35)
|
list_reagents = list(/datum/reagent/drug/nicotine = 15, /datum/reagent/drug/mushroomhallucinogen = 35)
|
||||||
starts_lit = TRUE
|
starts_lit = TRUE
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/rollie/cannabis
|
/obj/item/clothing/mask/cigarette/rollie/cannabis
|
||||||
list_reagents = list("space_drugs" = 15, "lipolicide" = 35)
|
list_reagents = list(/datum/reagent/drug/space_drugs = 15, /datum/reagent/toxin/lipolicide = 35)
|
||||||
|
|
||||||
/obj/item/clothing/mask/cigarette/rollie/mindbreaker
|
/obj/item/clothing/mask/cigarette/rollie/mindbreaker
|
||||||
list_reagents = list("mindbreaker" = 35, "lipolicide" = 15)
|
list_reagents = list(/datum/reagent/toxin/mindbreaker = 35, /datum/reagent/toxin/lipolicide = 15)
|
||||||
|
|
||||||
/obj/item/cigbutt/roach
|
/obj/item/cigbutt/roach
|
||||||
name = "roach"
|
name = "roach"
|
||||||
@@ -377,7 +377,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
icon_state = "cigbutt"
|
icon_state = "cigbutt"
|
||||||
w_class = WEIGHT_CLASS_TINY
|
w_class = WEIGHT_CLASS_TINY
|
||||||
throwforce = 0
|
throwforce = 0
|
||||||
grind_results = list("carbon" = 2)
|
grind_results = list(/datum/reagent/carbon = 2)
|
||||||
|
|
||||||
/obj/item/cigbutt/cigarbutt
|
/obj/item/cigbutt/cigarbutt
|
||||||
name = "cigar butt"
|
name = "cigar butt"
|
||||||
@@ -506,7 +506,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
heat = 1500
|
heat = 1500
|
||||||
resistance_flags = FIRE_PROOF
|
resistance_flags = FIRE_PROOF
|
||||||
light_color = LIGHT_COLOR_FIRE
|
light_color = LIGHT_COLOR_FIRE
|
||||||
grind_results = list("iron" = 1, "welding_fuel" = 5, "oil" = 5)
|
grind_results = list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/oil = 5)
|
||||||
|
|
||||||
/obj/item/lighter/Initialize()
|
/obj/item/lighter/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
@@ -665,7 +665,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
heat = 3000 //Blue flame!
|
heat = 3000 //Blue flame!
|
||||||
light_color = LIGHT_COLOR_CYAN
|
light_color = LIGHT_COLOR_CYAN
|
||||||
overlay_state = "slime"
|
overlay_state = "slime"
|
||||||
grind_results = list("iron" = 1, "welding_fuel" = 5, "pyroxadone" = 5)
|
grind_results = list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/medicine/pyroxadone = 5)
|
||||||
|
|
||||||
|
|
||||||
///////////
|
///////////
|
||||||
@@ -719,7 +719,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
/obj/item/clothing/mask/vape/Initialize(mapload, param_color)
|
/obj/item/clothing/mask/vape/Initialize(mapload, param_color)
|
||||||
. = ..()
|
. = ..()
|
||||||
create_reagents(chem_volume, NO_REACT) // so it doesn't react until you light it
|
create_reagents(chem_volume, NO_REACT) // so it doesn't react until you light it
|
||||||
reagents.add_reagent("nicotine", 50)
|
reagents.add_reagent(/datum/reagent/drug/nicotine, 50)
|
||||||
if(!icon_state)
|
if(!icon_state)
|
||||||
if(!param_color)
|
if(!param_color)
|
||||||
param_color = pick("red","blue","black","white","green","purple","yellow","orange")
|
param_color = pick("red","blue","black","white","green","purple","yellow","orange")
|
||||||
@@ -810,14 +810,14 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
|||||||
reagents.reaction(C, INGEST, fraction)
|
reagents.reaction(C, INGEST, fraction)
|
||||||
if(!reagents.trans_to(C, REAGENTS_METABOLISM))
|
if(!reagents.trans_to(C, REAGENTS_METABOLISM))
|
||||||
reagents.remove_any(REAGENTS_METABOLISM)
|
reagents.remove_any(REAGENTS_METABOLISM)
|
||||||
if(reagents.get_reagent_amount("welding_fuel"))
|
if(reagents.get_reagent_amount(/datum/reagent/fuel))
|
||||||
//HOT STUFF
|
//HOT STUFF
|
||||||
C.fire_stacks = 2
|
C.fire_stacks = 2
|
||||||
C.IgniteMob()
|
C.IgniteMob()
|
||||||
|
|
||||||
if(reagents.get_reagent_amount("plasma")) // the plasma explodes when exposed to fire
|
if(reagents.get_reagent_amount(/datum/reagent/toxin/plasma)) // the plasma explodes when exposed to fire
|
||||||
var/datum/effect_system/reagents_explosion/e = new()
|
var/datum/effect_system/reagents_explosion/e = new()
|
||||||
e.set_up(round(reagents.get_reagent_amount("plasma") / 2.5, 1), get_turf(src), 0, 0)
|
e.set_up(round(reagents.get_reagent_amount(/datum/reagent/toxin/plasma) / 2.5, 1), get_turf(src), 0, 0)
|
||||||
e.start()
|
e.start()
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi'
|
righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi'
|
||||||
materials = list(MAT_GLASS=1000)
|
materials = list(MAT_GLASS=1000)
|
||||||
w_class = WEIGHT_CLASS_SMALL
|
w_class = WEIGHT_CLASS_SMALL
|
||||||
grind_results = list("silicon" = 20)
|
grind_results = list(/datum/reagent/silicon = 20)
|
||||||
var/build_path = null
|
var/build_path = null
|
||||||
|
|
||||||
/obj/item/circuitboard/proc/apply_default_parts(obj/machinery/M)
|
/obj/item/circuitboard/proc/apply_default_parts(obj/machinery/M)
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
throwforce = 0
|
throwforce = 0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 7
|
throw_range = 7
|
||||||
grind_results = list("lye" = 10)
|
grind_results = list(/datum/reagent/lye = 10)
|
||||||
var/cleanspeed = 50 //slower than mop
|
var/cleanspeed = 50 //slower than mop
|
||||||
force_string = "robust... against germs"
|
force_string = "robust... against germs"
|
||||||
|
|
||||||
@@ -180,4 +180,4 @@
|
|||||||
name = "Canned Laughter"
|
name = "Canned Laughter"
|
||||||
desc = "Just looking at this makes you want to giggle."
|
desc = "Just looking at this makes you want to giggle."
|
||||||
icon_state = "laughter"
|
icon_state = "laughter"
|
||||||
list_reagents = list("laughter" = 50)
|
list_reagents = list(/datum/reagent/consumable/laughter = 50)
|
||||||
@@ -59,7 +59,7 @@
|
|||||||
|
|
||||||
var/edible = TRUE // That doesn't mean eating it is a good idea
|
var/edible = TRUE // That doesn't mean eating it is a good idea
|
||||||
|
|
||||||
var/list/reagent_contents = list("nutriment" = 1)
|
var/list/reagent_contents = list(/datum/reagent/consumable/nutriment = 1)
|
||||||
// If the user can toggle the colour, a la vanilla spraycan
|
// If the user can toggle the colour, a la vanilla spraycan
|
||||||
var/can_change_colour = FALSE
|
var/can_change_colour = FALSE
|
||||||
|
|
||||||
@@ -485,63 +485,63 @@
|
|||||||
icon_state = "crayonred"
|
icon_state = "crayonred"
|
||||||
paint_color = "#DA0000"
|
paint_color = "#DA0000"
|
||||||
item_color = "red"
|
item_color = "red"
|
||||||
reagent_contents = list("nutriment" = 1, "redcrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/red = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/orange
|
/obj/item/toy/crayon/orange
|
||||||
icon_state = "crayonorange"
|
icon_state = "crayonorange"
|
||||||
paint_color = "#FF9300"
|
paint_color = "#FF9300"
|
||||||
item_color = "orange"
|
item_color = "orange"
|
||||||
reagent_contents = list("nutriment" = 1, "orangecrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/orange = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/yellow
|
/obj/item/toy/crayon/yellow
|
||||||
icon_state = "crayonyellow"
|
icon_state = "crayonyellow"
|
||||||
paint_color = "#FFF200"
|
paint_color = "#FFF200"
|
||||||
item_color = "yellow"
|
item_color = "yellow"
|
||||||
reagent_contents = list("nutriment" = 1, "yellowcrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/yellow = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/green
|
/obj/item/toy/crayon/green
|
||||||
icon_state = "crayongreen"
|
icon_state = "crayongreen"
|
||||||
paint_color = "#A8E61D"
|
paint_color = "#A8E61D"
|
||||||
item_color = "green"
|
item_color = "green"
|
||||||
reagent_contents = list("nutriment" = 1, "greencrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/green = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/blue
|
/obj/item/toy/crayon/blue
|
||||||
icon_state = "crayonblue"
|
icon_state = "crayonblue"
|
||||||
paint_color = "#00B7EF"
|
paint_color = "#00B7EF"
|
||||||
item_color = "blue"
|
item_color = "blue"
|
||||||
reagent_contents = list("nutriment" = 1, "bluecrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/blue = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/purple
|
/obj/item/toy/crayon/purple
|
||||||
icon_state = "crayonpurple"
|
icon_state = "crayonpurple"
|
||||||
paint_color = "#DA00FF"
|
paint_color = "#DA00FF"
|
||||||
item_color = "purple"
|
item_color = "purple"
|
||||||
reagent_contents = list("nutriment" = 1, "purplecrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/purple = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/black
|
/obj/item/toy/crayon/black
|
||||||
icon_state = "crayonblack"
|
icon_state = "crayonblack"
|
||||||
paint_color = "#1C1C1C" //Not completely black because total black looks bad. So Mostly Black.
|
paint_color = "#1C1C1C" //Not completely black because total black looks bad. So Mostly Black.
|
||||||
item_color = "black"
|
item_color = "black"
|
||||||
reagent_contents = list("nutriment" = 1, "blackcrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/black = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/white
|
/obj/item/toy/crayon/white
|
||||||
icon_state = "crayonwhite"
|
icon_state = "crayonwhite"
|
||||||
paint_color = "#FFFFFF"
|
paint_color = "#FFFFFF"
|
||||||
item_color = "white"
|
item_color = "white"
|
||||||
reagent_contents = list("nutriment" = 1, "whitecrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/white = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/mime
|
/obj/item/toy/crayon/mime
|
||||||
icon_state = "crayonmime"
|
icon_state = "crayonmime"
|
||||||
desc = "A very sad-looking crayon."
|
desc = "A very sad-looking crayon."
|
||||||
paint_color = "#FFFFFF"
|
paint_color = "#FFFFFF"
|
||||||
item_color = "mime"
|
item_color = "mime"
|
||||||
reagent_contents = list("nutriment" = 1, "invisiblecrayonpowder" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent/crayonpowder/invisible = 1)
|
||||||
charges = -1
|
charges = -1
|
||||||
|
|
||||||
/obj/item/toy/crayon/rainbow
|
/obj/item/toy/crayon/rainbow
|
||||||
icon_state = "crayonrainbow"
|
icon_state = "crayonrainbow"
|
||||||
paint_color = "#FFF000"
|
paint_color = "#FFF000"
|
||||||
item_color = "rainbow"
|
item_color = "rainbow"
|
||||||
reagent_contents = list("nutriment" = 1, "colorful_reagent" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/colorful_reagent = 1)
|
||||||
drawtype = RANDOM_ANY // just the default starter.
|
drawtype = RANDOM_ANY // just the default starter.
|
||||||
|
|
||||||
charges = -1
|
charges = -1
|
||||||
@@ -621,7 +621,7 @@
|
|||||||
can_change_colour = TRUE
|
can_change_colour = TRUE
|
||||||
gang = TRUE //Gang check is true for all things upon the honored hierarchy of spraycans, except those that are FALSE.
|
gang = TRUE //Gang check is true for all things upon the honored hierarchy of spraycans, except those that are FALSE.
|
||||||
|
|
||||||
reagent_contents = list("welding_fuel" = 1, "ethanol" = 1)
|
reagent_contents = list(/datum/reagent/fuel = 1, /datum/reagent/consumable/ethanol = 1)
|
||||||
|
|
||||||
pre_noise = TRUE
|
pre_noise = TRUE
|
||||||
post_noise = FALSE
|
post_noise = FALSE
|
||||||
@@ -778,7 +778,7 @@
|
|||||||
|
|
||||||
volume_multiplier = 25
|
volume_multiplier = 25
|
||||||
charges = 100
|
charges = 100
|
||||||
reagent_contents = list("clf3" = 1)
|
reagent_contents = list(/datum/reagent/clf3 = 1)
|
||||||
actually_paints = FALSE
|
actually_paints = FALSE
|
||||||
paint_color = "#000000"
|
paint_color = "#000000"
|
||||||
|
|
||||||
@@ -791,7 +791,7 @@
|
|||||||
use_overlays = FALSE
|
use_overlays = FALSE
|
||||||
gang = FALSE
|
gang = FALSE
|
||||||
|
|
||||||
reagent_contents = list("lube" = 1, "banana" = 1)
|
reagent_contents = list(/datum/reagent/lube = 1, /datum/reagent/consumable/banana = 1)
|
||||||
volume_multiplier = 5
|
volume_multiplier = 5
|
||||||
|
|
||||||
/obj/item/toy/crayon/spraycan/lubecan/isValidSurface(surface)
|
/obj/item/toy/crayon/spraycan/lubecan/isValidSurface(surface)
|
||||||
@@ -811,7 +811,7 @@
|
|||||||
|
|
||||||
pre_noise = FALSE
|
pre_noise = FALSE
|
||||||
post_noise = FALSE
|
post_noise = FALSE
|
||||||
reagent_contents = list("nothing" = 1, "mutetoxin" = 1)
|
reagent_contents = list(/datum/reagent/consumable/nothing = 1, /datum/reagent/toxin/mutetoxin = 1)
|
||||||
|
|
||||||
/obj/item/toy/crayon/spraycan/gang
|
/obj/item/toy/crayon/spraycan/gang
|
||||||
charges = 20 // Charges back to 20, which is the default value for them.
|
charges = 20 // Charges back to 20, which is the default value for them.
|
||||||
|
|||||||
@@ -12,7 +12,8 @@
|
|||||||
var/cleaning = FALSE
|
var/cleaning = FALSE
|
||||||
var/cleaning_cycles = 10
|
var/cleaning_cycles = 10
|
||||||
var/patient_laststat = null
|
var/patient_laststat = null
|
||||||
var/list/injection_chems = list("antitoxin", "epinephrine", "salbutamol", "bicaridine", "kelotane")
|
var/list/injection_chems = list(/datum/reagent/medicine/antitoxin, /datum/reagent/medicine/epinephrine,
|
||||||
|
/datum/reagent/medicine/salbutamol, /datum/reagent/medicine/bicaridine, /datum/reagent/medicine/kelotane)
|
||||||
var/eject_port = "ingestion"
|
var/eject_port = "ingestion"
|
||||||
var/escape_in_progress = FALSE
|
var/escape_in_progress = FALSE
|
||||||
var/message_cooldown
|
var/message_cooldown
|
||||||
@@ -183,7 +184,7 @@
|
|||||||
data["chem"] = list()
|
data["chem"] = list()
|
||||||
for(var/chem in injection_chems)
|
for(var/chem in injection_chems)
|
||||||
var/datum/reagent/R = GLOB.chemical_reagents_list[chem]
|
var/datum/reagent/R = GLOB.chemical_reagents_list[chem]
|
||||||
data["chem"] += list(list("name" = R.name, "id" = R.id))
|
data["chem"] += list(list("name" = R.name, "id" = R.type))
|
||||||
|
|
||||||
data["occupant"] = list()
|
data["occupant"] = list()
|
||||||
var/mob/living/mob_occupant = patient
|
var/mob/living/mob_occupant = patient
|
||||||
@@ -227,8 +228,8 @@
|
|||||||
go_out(null, usr)
|
go_out(null, usr)
|
||||||
. = TRUE
|
. = TRUE
|
||||||
if("inject")
|
if("inject")
|
||||||
var/chem = params["chem"]
|
var/chem = text2path(params["chem"])
|
||||||
if(!patient)
|
if(!patient || !chem)
|
||||||
return
|
return
|
||||||
inject_chem(chem, usr)
|
inject_chem(chem, usr)
|
||||||
. = TRUE
|
. = TRUE
|
||||||
|
|||||||
@@ -267,7 +267,7 @@
|
|||||||
var/produce_heat = 1500
|
var/produce_heat = 1500
|
||||||
heat = 1000
|
heat = 1000
|
||||||
light_color = LIGHT_COLOR_FLARE
|
light_color = LIGHT_COLOR_FLARE
|
||||||
grind_results = list("sulfur" = 15)
|
grind_results = list(/datum/reagent/sulfur = 15)
|
||||||
|
|
||||||
/obj/item/flashlight/flare/New()
|
/obj/item/flashlight/flare/New()
|
||||||
fuel = rand(800, 1000) // Sorry for changing this so much but I keep under-estimating how long X number of ticks last in seconds.
|
fuel = rand(800, 1000) // Sorry for changing this so much but I keep under-estimating how long X number of ticks last in seconds.
|
||||||
@@ -430,7 +430,7 @@
|
|||||||
color = LIGHT_COLOR_GREEN
|
color = LIGHT_COLOR_GREEN
|
||||||
icon_state = "glowstick"
|
icon_state = "glowstick"
|
||||||
item_state = "glowstick"
|
item_state = "glowstick"
|
||||||
grind_results = list("phenol" = 15, "hydrogen" = 10, "oxygen" = 5) //Meth-in-a-stick
|
grind_results = list(/datum/reagent/phenol = 15, /datum/reagent/hydrogen = 10, /datum/reagent/oxygen = 5) //Meth-in-a-stick
|
||||||
rad_flags = RAD_NO_CONTAMINATE
|
rad_flags = RAD_NO_CONTAMINATE
|
||||||
var/fuel = 0
|
var/fuel = 0
|
||||||
|
|
||||||
|
|||||||
@@ -262,7 +262,7 @@ SLIME SCANNER
|
|||||||
temp_message += " <span class='info'>Subject has abnormal brain fuctions.</span>"
|
temp_message += " <span class='info'>Subject has abnormal brain fuctions.</span>"
|
||||||
|
|
||||||
//Astrogen shenanigans
|
//Astrogen shenanigans
|
||||||
if(H.reagents.has_reagent("astral"))
|
if(H.reagents.has_reagent(/datum/reagent/fermi/astral))
|
||||||
if(H.mind)
|
if(H.mind)
|
||||||
temp_message += " <span class='danger'>Warning: subject may be possesed.</span>"
|
temp_message += " <span class='danger'>Warning: subject may be possesed.</span>"
|
||||||
else
|
else
|
||||||
@@ -465,19 +465,18 @@ SLIME SCANNER
|
|||||||
else
|
else
|
||||||
msg += "<span class='notice'>Subject is not addicted to any reagents.</span>\n"
|
msg += "<span class='notice'>Subject is not addicted to any reagents.</span>\n"
|
||||||
|
|
||||||
if(M.reagents.has_reagent("fermiTox"))
|
var/datum/reagent/impure/fermiTox/F = M.reagents.has_reagent(/datum/reagent/impure/fermiTox)
|
||||||
var/datum/reagent/fermiTox = M.reagents.has_reagent("fermiTox")
|
switch(F?.volume)
|
||||||
switch(fermiTox.volume)
|
if(5 to 10)
|
||||||
if(5 to 10)
|
msg += "<span class='notice'>Subject contains a low amount of toxic isomers.</span>\n"
|
||||||
msg += "<span class='notice'>Subject contains a low amount of toxic isomers.</span>\n"
|
if(10 to 25)
|
||||||
if(10 to 25)
|
msg += "<span class='danger'>Subject contains toxic isomers.</span>\n"
|
||||||
msg += "<span class='danger'>Subject contains toxic isomers.</span>\n"
|
if(25 to 50)
|
||||||
if(25 to 50)
|
msg += "<span class='danger'>Subject contains a substantial amount of toxic isomers.</span>\n"
|
||||||
msg += "<span class='danger'>Subject contains a substantial amount of toxic isomers.</span>\n"
|
if(50 to 95)
|
||||||
if(50 to 95)
|
msg += "<span class='danger'>Subject contains a high amount of toxic isomers.</span>\n"
|
||||||
msg += "<span class='danger'>Subject contains a high amount of toxic isomers.</span>\n"
|
if(95 to INFINITY)
|
||||||
if(95 to INFINITY)
|
msg += "<span class='danger'>Subject contains a extremely dangerous amount of toxic isomers.</span>\n"
|
||||||
msg += "<span class='danger'>Subject contains a extremely dangerous amount of toxic isomers.</span>\n"
|
|
||||||
|
|
||||||
msg += "*---------*</span>"
|
msg += "*---------*</span>"
|
||||||
to_chat(user, msg)
|
to_chat(user, msg)
|
||||||
@@ -519,7 +518,7 @@ SLIME SCANNER
|
|||||||
throw_range = 7
|
throw_range = 7
|
||||||
tool_behaviour = TOOL_ANALYZER
|
tool_behaviour = TOOL_ANALYZER
|
||||||
materials = list(MAT_METAL=30, MAT_GLASS=20)
|
materials = list(MAT_METAL=30, MAT_GLASS=20)
|
||||||
grind_results = list("mercury" = 5, "iron" = 5, "silicon" = 5)
|
grind_results = list(/datum/reagent/mercury = 5, /datum/reagent/iron = 5, /datum/reagent/silicon = 5)
|
||||||
var/cooldown = FALSE
|
var/cooldown = FALSE
|
||||||
var/cooldown_time = 250
|
var/cooldown_time = 250
|
||||||
var/accuracy // 0 is the best accuracy.
|
var/accuracy // 0 is the best accuracy.
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
resistance_flags = FIRE_PROOF
|
resistance_flags = FIRE_PROOF
|
||||||
var/max_water = 50
|
var/max_water = 50
|
||||||
var/last_use = 1
|
var/last_use = 1
|
||||||
var/chem = "water"
|
var/chem = /datum/reagent/water
|
||||||
var/safety = TRUE
|
var/safety = TRUE
|
||||||
var/refilling = FALSE
|
var/refilling = FALSE
|
||||||
var/tanktype = /obj/structure/reagent_dispensers/watertank
|
var/tanktype = /obj/structure/reagent_dispensers/watertank
|
||||||
|
|||||||
@@ -332,9 +332,9 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("aluminium", 30)
|
B1.reagents.add_reagent(/datum/reagent/aluminium, 30)
|
||||||
B2.reagents.add_reagent("foaming_agent", 10)
|
B2.reagents.add_reagent(/datum/reagent/foaming_agent, 10)
|
||||||
B2.reagents.add_reagent("facid", 10)
|
B2.reagents.add_reagent(/datum/reagent/toxin/acid/fluacid, 10)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -350,9 +350,9 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("aluminium", 75)
|
B1.reagents.add_reagent(/datum/reagent/aluminium, 75)
|
||||||
B2.reagents.add_reagent("smart_foaming_agent", 25)
|
B2.reagents.add_reagent(/datum/reagent/smart_foaming_agent, 25)
|
||||||
B2.reagents.add_reagent("facid", 25)
|
B2.reagents.add_reagent(/datum/reagent/toxin/acid/fluacid, 25)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -368,9 +368,9 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("phosphorus", 25)
|
B1.reagents.add_reagent(/datum/reagent/phosphorus, 25)
|
||||||
B2.reagents.add_reagent("stable_plasma", 25)
|
B2.reagents.add_reagent(/datum/reagent/stable_plasma, 25)
|
||||||
B2.reagents.add_reagent("sacid", 25)
|
B2.reagents.add_reagent(/datum/reagent/toxin/acid, 25)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -386,10 +386,10 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("plantbgone", 25)
|
B1.reagents.add_reagent(/datum/reagent/toxin/plantbgone, 25)
|
||||||
B1.reagents.add_reagent("potassium", 25)
|
B1.reagents.add_reagent(/datum/reagent/potassium, 25)
|
||||||
B2.reagents.add_reagent("phosphorus", 25)
|
B2.reagents.add_reagent(/datum/reagent/phosphorus, 25)
|
||||||
B2.reagents.add_reagent("sugar", 25)
|
B2.reagents.add_reagent(/datum/reagent/consumable/sugar, 25)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -405,9 +405,9 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("fluorosurfactant", 40)
|
B1.reagents.add_reagent(/datum/reagent/fluorosurfactant, 40)
|
||||||
B2.reagents.add_reagent("water", 40)
|
B2.reagents.add_reagent(/datum/reagent/water, 40)
|
||||||
B2.reagents.add_reagent("cleaner", 10)
|
B2.reagents.add_reagent(/datum/reagent/space_cleaner, 10)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -423,9 +423,9 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("fluorosurfactant", 40)
|
B1.reagents.add_reagent(/datum/reagent/fluorosurfactant, 40)
|
||||||
B2.reagents.add_reagent("water", 40)
|
B2.reagents.add_reagent(/datum/reagent/water, 40)
|
||||||
B2.reagents.add_reagent("ez_clean", 60) //ensures a t h i c c distribution
|
B2.reagents.add_reagent(/datum/reagent/space_cleaner/ez_clean, 60) //ensures a t h i c c distribution
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -442,10 +442,10 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("condensedcapsaicin", 60)
|
B1.reagents.add_reagent(/datum/reagent/consumable/condensedcapsaicin, 60)
|
||||||
B1.reagents.add_reagent("potassium", 40)
|
B1.reagents.add_reagent(/datum/reagent/potassium, 40)
|
||||||
B2.reagents.add_reagent("phosphorus", 40)
|
B2.reagents.add_reagent(/datum/reagent/phosphorus, 40)
|
||||||
B2.reagents.add_reagent("sugar", 40)
|
B2.reagents.add_reagent(/datum/reagent/consumable/sugar, 40)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -461,11 +461,11 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("facid", 290)
|
B1.reagents.add_reagent(/datum/reagent/toxin/acid/fluacid, 290)
|
||||||
B1.reagents.add_reagent("potassium", 10)
|
B1.reagents.add_reagent(/datum/reagent/potassium, 10)
|
||||||
B2.reagents.add_reagent("phosphorus", 10)
|
B2.reagents.add_reagent(/datum/reagent/phosphorus, 10)
|
||||||
B2.reagents.add_reagent("sugar", 10)
|
B2.reagents.add_reagent(/datum/reagent/consumable/sugar, 10)
|
||||||
B2.reagents.add_reagent("facid", 280)
|
B2.reagents.add_reagent(/datum/reagent/toxin/acid/fluacid, 280)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -481,10 +481,10 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("colorful_reagent", 25)
|
B1.reagents.add_reagent(/datum/reagent/colorful_reagent, 25)
|
||||||
B1.reagents.add_reagent("potassium", 25)
|
B1.reagents.add_reagent(/datum/reagent/potassium, 25)
|
||||||
B2.reagents.add_reagent("phosphorus", 25)
|
B2.reagents.add_reagent(/datum/reagent/phosphorus, 25)
|
||||||
B2.reagents.add_reagent("sugar", 25)
|
B2.reagents.add_reagent(/datum/reagent/consumable/sugar, 25)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -493,7 +493,7 @@
|
|||||||
name = "generic glitter grenade"
|
name = "generic glitter grenade"
|
||||||
desc = "You shouldn't see this description."
|
desc = "You shouldn't see this description."
|
||||||
stage = READY
|
stage = READY
|
||||||
var/glitter_type = "glitter"
|
var/glitter_type = /datum/reagent/glitter
|
||||||
|
|
||||||
/obj/item/grenade/chem_grenade/glitter/Initialize()
|
/obj/item/grenade/chem_grenade/glitter/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
@@ -501,9 +501,9 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent(glitter_type, 25)
|
B1.reagents.add_reagent(glitter_type, 25)
|
||||||
B1.reagents.add_reagent("potassium", 25)
|
B1.reagents.add_reagent(/datum/reagent/potassium, 25)
|
||||||
B2.reagents.add_reagent("phosphorus", 25)
|
B2.reagents.add_reagent(/datum/reagent/phosphorus, 25)
|
||||||
B2.reagents.add_reagent("sugar", 25)
|
B2.reagents.add_reagent(/datum/reagent/consumable/sugar, 25)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -511,17 +511,17 @@
|
|||||||
/obj/item/grenade/chem_grenade/glitter/pink
|
/obj/item/grenade/chem_grenade/glitter/pink
|
||||||
name = "pink glitter bomb"
|
name = "pink glitter bomb"
|
||||||
desc = "For that HOT glittery look."
|
desc = "For that HOT glittery look."
|
||||||
glitter_type = "pink_glitter"
|
glitter_type = /datum/reagent/glitter/pink
|
||||||
|
|
||||||
/obj/item/grenade/chem_grenade/glitter/blue
|
/obj/item/grenade/chem_grenade/glitter/blue
|
||||||
name = "blue glitter bomb"
|
name = "blue glitter bomb"
|
||||||
desc = "For that COOL glittery look."
|
desc = "For that COOL glittery look."
|
||||||
glitter_type = "blue_glitter"
|
glitter_type = /datum/reagent/glitter/blue
|
||||||
|
|
||||||
/obj/item/grenade/chem_grenade/glitter/white
|
/obj/item/grenade/chem_grenade/glitter/white
|
||||||
name = "white glitter bomb"
|
name = "white glitter bomb"
|
||||||
desc = "For that somnolent glittery look."
|
desc = "For that somnolent glittery look."
|
||||||
glitter_type = "white_glitter"
|
glitter_type = /datum/reagent/glitter/white
|
||||||
|
|
||||||
/obj/item/grenade/chem_grenade/clf3
|
/obj/item/grenade/chem_grenade/clf3
|
||||||
name = "clf3 grenade"
|
name = "clf3 grenade"
|
||||||
@@ -533,10 +533,10 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("fluorosurfactant", 250)
|
B1.reagents.add_reagent(/datum/reagent/fluorosurfactant, 250)
|
||||||
B1.reagents.add_reagent("clf3", 50)
|
B1.reagents.add_reagent(/datum/reagent/clf3, 50)
|
||||||
B2.reagents.add_reagent("water", 250)
|
B2.reagents.add_reagent(/datum/reagent/water, 250)
|
||||||
B2.reagents.add_reagent("clf3", 50)
|
B2.reagents.add_reagent(/datum/reagent/clf3, 50)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -551,13 +551,13 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("cryptobiolin", 75)
|
B1.reagents.add_reagent(/datum/reagent/cryptobiolin, 75)
|
||||||
B1.reagents.add_reagent("water", 50)
|
B1.reagents.add_reagent(/datum/reagent/water, 50)
|
||||||
B1.reagents.add_reagent("mutetoxin", 50)
|
B1.reagents.add_reagent(/datum/reagent/toxin/mutetoxin, 50)
|
||||||
B1.reagents.add_reagent("spore", 75)
|
B1.reagents.add_reagent(/datum/reagent/toxin/spore, 75)
|
||||||
B1.reagents.add_reagent("itching_powder", 50)
|
B1.reagents.add_reagent(/datum/reagent/toxin/itching_powder, 50)
|
||||||
B2.reagents.add_reagent("fluorosurfactant", 150)
|
B2.reagents.add_reagent(/datum/reagent/fluorosurfactant, 150)
|
||||||
B2.reagents.add_reagent("mutagen", 150)
|
B2.reagents.add_reagent(/datum/reagent/toxin/mutagen, 150)
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
|
|
||||||
@@ -571,11 +571,11 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/bluespace/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("potassium", 50)
|
B1.reagents.add_reagent(/datum/reagent/potassium, 50)
|
||||||
B1.reagents.add_reagent("phosphorus", 50)
|
B1.reagents.add_reagent(/datum/reagent/phosphorus, 50)
|
||||||
B1.reagents.add_reagent("fungalspores", 200)
|
B1.reagents.add_reagent(/datum/reagent/fungalspores, 200)
|
||||||
B2.reagents.add_reagent("blood", 250)
|
B2.reagents.add_reagent(/datum/reagent/blood, 250)
|
||||||
B2.reagents.add_reagent("sugar", 50)
|
B2.reagents.add_reagent(/datum/reagent/consumable/sugar, 50)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
@@ -591,8 +591,8 @@
|
|||||||
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src)
|
||||||
var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src)
|
var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src)
|
||||||
|
|
||||||
B1.reagents.add_reagent("potassium", 100)
|
B1.reagents.add_reagent(/datum/reagent/potassium, 100)
|
||||||
B2.reagents.add_reagent("holywater", 100)
|
B2.reagents.add_reagent(/datum/reagent/water/holywater, 100)
|
||||||
|
|
||||||
beakers += B1
|
beakers += B1
|
||||||
beakers += B2
|
beakers += B2
|
||||||
|
|||||||
@@ -94,11 +94,11 @@
|
|||||||
var/chem = pick(slime_chems)
|
var/chem = pick(slime_chems)
|
||||||
var/amount = 5
|
var/amount = 5
|
||||||
if(chem == "lesser plasma") //In the rare case we get another rainbow.
|
if(chem == "lesser plasma") //In the rare case we get another rainbow.
|
||||||
chem = "plasma"
|
chem = /datum/reagent/toxin/plasma
|
||||||
amount = 4
|
amount = 4
|
||||||
if(chem == "holy water and uranium")
|
if(chem == "holy water and uranium")
|
||||||
chem = "uranium"
|
chem = /datum/reagent/uranium
|
||||||
reagents.add_reagent("holywater")
|
reagents.add_reagent(/datum/reagent/water/holywater)
|
||||||
reagents.add_reagent(chem,amount)
|
reagents.add_reagent(chem,amount)
|
||||||
|
|
||||||
/obj/effect/payload_spawner/random_slime/spawn_payload(type, numspawned)
|
/obj/effect/payload_spawner/random_slime/spawn_payload(type, numspawned)
|
||||||
|
|||||||
@@ -789,7 +789,7 @@
|
|||||||
|
|
||||||
praying = TRUE
|
praying = TRUE
|
||||||
if(do_after(user, 20, target = M))
|
if(do_after(user, 20, target = M))
|
||||||
M.reagents?.add_reagent("holywater", 5)
|
M.reagents?.add_reagent(/datum/reagent/water/holywater, 5)
|
||||||
to_chat(M, "<span class='notice'>[user]'s prayer to [deity_name] has eased your pain!</span>")
|
to_chat(M, "<span class='notice'>[user]'s prayer to [deity_name] has eased your pain!</span>")
|
||||||
M.adjustToxLoss(-5, TRUE, TRUE)
|
M.adjustToxLoss(-5, TRUE, TRUE)
|
||||||
M.adjustOxyLoss(-5)
|
M.adjustOxyLoss(-5)
|
||||||
|
|||||||
@@ -75,7 +75,7 @@
|
|||||||
L.SetKnockdown(0)
|
L.SetKnockdown(0)
|
||||||
L.SetSleeping(0)
|
L.SetSleeping(0)
|
||||||
L.SetUnconscious(0)
|
L.SetUnconscious(0)
|
||||||
L.reagents.add_reagent("muscle_stimulant", CLAMP(5 - L.reagents.get_reagent_amount("muscle_stimulant"), 0, 5)) //If you don't have legs or get bola'd, tough luck!
|
L.reagents.add_reagent(/datum/reagent/medicine/muscle_stimulant, CLAMP(5 - L.reagents.get_reagent_amount(/datum/reagent/medicine/muscle_stimulant), 0, 5)) //If you don't have legs or get bola'd, tough luck!
|
||||||
colorize(L)
|
colorize(L)
|
||||||
|
|
||||||
/obj/item/hot_potato/examine(mob/user)
|
/obj/item/hot_potato/examine(mob/user)
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
/obj/item/implant/adrenalin/activate()
|
/obj/item/implant/adrenalin/activate()
|
||||||
. = ..()
|
. = ..()
|
||||||
uses--
|
uses--
|
||||||
imp_in.do_adrenaline(150, TRUE, 0, 0, TRUE, list("inaprovaline" = 3, "synaptizine" = 10, "regen_jelly" = 10, "stimulants" = 10), "<span class='boldnotice'>You feel a sudden surge of energy!</span>")
|
imp_in.do_adrenaline(150, TRUE, 0, 0, TRUE, list(/datum/reagent/medicine/inaprovaline = 3, /datum/reagent/medicine/synaptizine = 10, /datum/reagent/medicine/regen_jelly = 10, /datum/reagent/medicine/stimulants = 10), "<span class='boldnotice'>You feel a sudden surge of energy!</span>")
|
||||||
to_chat(imp_in, "<span class='notice'>You feel a sudden surge of energy!</span>")
|
to_chat(imp_in, "<span class='notice'>You feel a sudden surge of energy!</span>")
|
||||||
if(!uses)
|
if(!uses)
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|||||||
@@ -41,10 +41,10 @@
|
|||||||
if(forkload)
|
if(forkload)
|
||||||
if(M == user)
|
if(M == user)
|
||||||
M.visible_message("<span class='notice'>[user] eats a delicious forkful of omelette!</span>")
|
M.visible_message("<span class='notice'>[user] eats a delicious forkful of omelette!</span>")
|
||||||
M.reagents.add_reagent(forkload.id, 1)
|
M.reagents.add_reagent(forkload.type, 1)
|
||||||
else
|
else
|
||||||
M.visible_message("<span class='notice'>[user] feeds [M] a delicious forkful of omelette!</span>")
|
M.visible_message("<span class='notice'>[user] feeds [M] a delicious forkful of omelette!</span>")
|
||||||
M.reagents.add_reagent(forkload.id, 1)
|
M.reagents.add_reagent(forkload.type, 1)
|
||||||
icon_state = "fork"
|
icon_state = "fork"
|
||||||
forkload = null
|
forkload = null
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/obj/item/mop/proc/clean(turf/A)
|
/obj/item/mop/proc/clean(turf/A)
|
||||||
if(reagents.has_reagent("water", 1) || reagents.has_reagent("holywater", 1) || reagents.has_reagent("vodka", 1) || reagents.has_reagent("cleaner", 1))
|
if(reagents.has_reagent(/datum/reagent/water, 1) || reagents.has_reagent(/datum/reagent/water/holywater, 1) || reagents.has_reagent(/datum/reagent/consumable/ethanol/vodka, 1) || reagents.has_reagent(/datum/reagent/space_cleaner, 1))
|
||||||
SEND_SIGNAL(A, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_MEDIUM)
|
SEND_SIGNAL(A, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_MEDIUM)
|
||||||
A.clean_blood()
|
A.clean_blood()
|
||||||
for(var/obj/effect/O in A)
|
for(var/obj/effect/O in A)
|
||||||
@@ -98,7 +98,7 @@
|
|||||||
stamusage = 1
|
stamusage = 1
|
||||||
var/refill_enabled = TRUE //Self-refill toggle for when a janitor decides to mop with something other than water.
|
var/refill_enabled = TRUE //Self-refill toggle for when a janitor decides to mop with something other than water.
|
||||||
var/refill_rate = 1 //Rate per process() tick mop refills itself
|
var/refill_rate = 1 //Rate per process() tick mop refills itself
|
||||||
var/refill_reagent = "water" //Determins what reagent to use for refilling, just in case someone wanted to make a HOLY MOP OF PURGING
|
var/refill_reagent = /datum/reagent/water //Determins what reagent to use for refilling, just in case someone wanted to make a HOLY MOP OF PURGING
|
||||||
|
|
||||||
/obj/item/mop/advanced/New()
|
/obj/item/mop/advanced/New()
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -98,7 +98,7 @@
|
|||||||
/obj/item/banner/medical/special_inspiration(mob/living/carbon/human/H)
|
/obj/item/banner/medical/special_inspiration(mob/living/carbon/human/H)
|
||||||
H.adjustToxLoss(-15)
|
H.adjustToxLoss(-15)
|
||||||
H.setOxyLoss(0)
|
H.setOxyLoss(0)
|
||||||
H.reagents.add_reagent("inaprovaline", 5)
|
H.reagents.add_reagent(/datum/reagent/medicine/inaprovaline, 5)
|
||||||
|
|
||||||
/obj/item/banner/science
|
/obj/item/banner/science
|
||||||
name = "sciencia banner"
|
name = "sciencia banner"
|
||||||
|
|||||||
@@ -466,15 +466,15 @@
|
|||||||
name = "medical cyborg expanded hypospray"
|
name = "medical cyborg expanded hypospray"
|
||||||
desc = "An upgrade to the Medical module's hypospray, allowing it \
|
desc = "An upgrade to the Medical module's hypospray, allowing it \
|
||||||
to treat a wider range of conditions and problems."
|
to treat a wider range of conditions and problems."
|
||||||
additional_reagents = list("mannitol", "oculine", "inacusiate",
|
additional_reagents = list(/datum/reagent/medicine/mannitol, /datum/reagent/medicine/oculine, /datum/reagent/medicine/inacusiate,
|
||||||
"mutadone", "haloperidol")
|
/datum/reagent/medicine/mutadone, /datum/reagent/medicine/haloperidol)
|
||||||
|
|
||||||
/obj/item/borg/upgrade/hypospray/high_strength
|
/obj/item/borg/upgrade/hypospray/high_strength
|
||||||
name = "medical cyborg high-strength hypospray"
|
name = "medical cyborg high-strength hypospray"
|
||||||
desc = "An upgrade to the Medical module's hypospray, containing \
|
desc = "An upgrade to the Medical module's hypospray, containing \
|
||||||
stronger versions of existing chemicals."
|
stronger versions of existing chemicals."
|
||||||
additional_reagents = list("oxandrolone", "sal_acid", "rezadone",
|
additional_reagents = list(/datum/reagent/medicine/oxandrolone, /datum/reagent/medicine/sal_acid,
|
||||||
"pen_acid")
|
/datum/reagent/medicine/rezadone, /datum/reagent/medicine/pen_acid)
|
||||||
|
|
||||||
/obj/item/borg/upgrade/piercing_hypospray
|
/obj/item/borg/upgrade/piercing_hypospray
|
||||||
name = "cyborg piercing hypospray"
|
name = "cyborg piercing hypospray"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
points = 50
|
points = 50
|
||||||
var/blink_range = 8 // The teleport range when crushed/thrown at someone.
|
var/blink_range = 8 // The teleport range when crushed/thrown at someone.
|
||||||
refined_type = /obj/item/stack/sheet/bluespace_crystal
|
refined_type = /obj/item/stack/sheet/bluespace_crystal
|
||||||
grind_results = list("bluespace" = 20)
|
grind_results = list(/datum/reagent/bluespace = 20)
|
||||||
|
|
||||||
/obj/item/stack/ore/bluespace_crystal/refined
|
/obj/item/stack/ore/bluespace_crystal/refined
|
||||||
name = "refined bluespace crystal"
|
name = "refined bluespace crystal"
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
blink_range = 4 // Not as good as the organic stuff!
|
blink_range = 4 // Not as good as the organic stuff!
|
||||||
points = 0 //nice try
|
points = 0 //nice try
|
||||||
refined_type = null
|
refined_type = null
|
||||||
grind_results = list("bluespace" = 10, "silicon" = 20)
|
grind_results = list(/datum/reagent/bluespace = 10, /datum/reagent/silicon = 20)
|
||||||
|
|
||||||
//Polycrystals, aka stacks
|
//Polycrystals, aka stacks
|
||||||
/obj/item/stack/sheet/bluespace_crystal
|
/obj/item/stack/sheet/bluespace_crystal
|
||||||
@@ -66,7 +66,7 @@
|
|||||||
materials = list(MAT_BLUESPACE=MINERAL_MATERIAL_AMOUNT)
|
materials = list(MAT_BLUESPACE=MINERAL_MATERIAL_AMOUNT)
|
||||||
attack_verb = list("bluespace polybashed", "bluespace polybattered", "bluespace polybludgeoned", "bluespace polythrashed", "bluespace polysmashed")
|
attack_verb = list("bluespace polybashed", "bluespace polybattered", "bluespace polybludgeoned", "bluespace polythrashed", "bluespace polysmashed")
|
||||||
novariants = TRUE
|
novariants = TRUE
|
||||||
grind_results = list("bluespace" = 20)
|
grind_results = list(/datum/reagent/bluespace = 20)
|
||||||
point_value = 30
|
point_value = 30
|
||||||
var/crystal_type = /obj/item/stack/ore/bluespace_crystal/refined
|
var/crystal_type = /obj/item/stack/ore/bluespace_crystal/refined
|
||||||
|
|
||||||
|
|||||||
@@ -57,7 +57,7 @@
|
|||||||
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
|
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
|
||||||
var/heal_brute = 20
|
var/heal_brute = 20
|
||||||
self_delay = 20
|
self_delay = 20
|
||||||
grind_results = list("styptic_powder" = 10)
|
grind_results = list(/datum/reagent/medicine/styptic_powder = 10)
|
||||||
|
|
||||||
/obj/item/stack/medical/bruise_pack/heal(mob/living/M, mob/user)
|
/obj/item/stack/medical/bruise_pack/heal(mob/living/M, mob/user)
|
||||||
if(M.stat == DEAD)
|
if(M.stat == DEAD)
|
||||||
@@ -140,7 +140,7 @@
|
|||||||
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
|
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
|
||||||
var/heal_burn = 20
|
var/heal_burn = 20
|
||||||
self_delay = 20
|
self_delay = 20
|
||||||
grind_results = list("silver_sulfadiazine" = 10)
|
grind_results = list(/datum/reagent/medicine/silver_sulfadiazine = 10)
|
||||||
|
|
||||||
/obj/item/stack/medical/ointment/heal(mob/living/M, mob/user)
|
/obj/item/stack/medical/ointment/heal(mob/living/M, mob/user)
|
||||||
if(M.stat == DEAD)
|
if(M.stat == DEAD)
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
throw_range = 7
|
throw_range = 7
|
||||||
flags_1 = CONDUCT_1
|
flags_1 = CONDUCT_1
|
||||||
max_amount = 60
|
max_amount = 60
|
||||||
grind_results = list("silicon" = 20, "copper" = 5)
|
grind_results = list(/datum/reagent/silicon = 20, /datum/reagent/copper = 5)
|
||||||
|
|
||||||
/obj/item/stack/light_w/attackby(obj/item/O, mob/user, params)
|
/obj/item/stack/light_w/attackby(obj/item/O, mob/user, params)
|
||||||
if(istype(O, /obj/item/stack/sheet/metal))
|
if(istype(O, /obj/item/stack/sheet/metal))
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ GLOBAL_LIST_INIT(sandbag_recipes, list ( \
|
|||||||
sheettype = "diamond"
|
sheettype = "diamond"
|
||||||
materials = list(MAT_DIAMOND=MINERAL_MATERIAL_AMOUNT)
|
materials = list(MAT_DIAMOND=MINERAL_MATERIAL_AMOUNT)
|
||||||
novariants = TRUE
|
novariants = TRUE
|
||||||
grind_results = list("carbon" = 20)
|
grind_results = list(/datum/reagent/carbon = 20)
|
||||||
point_value = 25
|
point_value = 25
|
||||||
merge_type = /obj/item/stack/sheet/mineral/diamond
|
merge_type = /obj/item/stack/sheet/mineral/diamond
|
||||||
|
|
||||||
@@ -135,7 +135,7 @@ GLOBAL_LIST_INIT(diamond_recipes, list ( \
|
|||||||
sheettype = "uranium"
|
sheettype = "uranium"
|
||||||
materials = list(MAT_URANIUM=MINERAL_MATERIAL_AMOUNT)
|
materials = list(MAT_URANIUM=MINERAL_MATERIAL_AMOUNT)
|
||||||
novariants = TRUE
|
novariants = TRUE
|
||||||
grind_results = list("uranium" = 20)
|
grind_results = list(/datum/reagent/uranium = 20)
|
||||||
point_value = 20
|
point_value = 20
|
||||||
merge_type = /obj/item/stack/sheet/mineral/uranium
|
merge_type = /obj/item/stack/sheet/mineral/uranium
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@ GLOBAL_LIST_INIT(uranium_recipes, list ( \
|
|||||||
resistance_flags = FLAMMABLE
|
resistance_flags = FLAMMABLE
|
||||||
max_integrity = 100
|
max_integrity = 100
|
||||||
materials = list(MAT_PLASMA=MINERAL_MATERIAL_AMOUNT)
|
materials = list(MAT_PLASMA=MINERAL_MATERIAL_AMOUNT)
|
||||||
grind_results = list("plasma" = 20)
|
grind_results = list(/datum/reagent/toxin/plasma = 20)
|
||||||
point_value = 20
|
point_value = 20
|
||||||
merge_type = /obj/item/stack/sheet/mineral/plasma
|
merge_type = /obj/item/stack/sheet/mineral/plasma
|
||||||
|
|
||||||
@@ -203,7 +203,7 @@ GLOBAL_LIST_INIT(plasma_recipes, list ( \
|
|||||||
singular_name = "gold bar"
|
singular_name = "gold bar"
|
||||||
sheettype = "gold"
|
sheettype = "gold"
|
||||||
materials = list(MAT_GOLD=MINERAL_MATERIAL_AMOUNT)
|
materials = list(MAT_GOLD=MINERAL_MATERIAL_AMOUNT)
|
||||||
grind_results = list("gold" = 20)
|
grind_results = list(/datum/reagent/gold = 20)
|
||||||
point_value = 20
|
point_value = 20
|
||||||
merge_type = /obj/item/stack/sheet/mineral/gold
|
merge_type = /obj/item/stack/sheet/mineral/gold
|
||||||
|
|
||||||
@@ -232,7 +232,7 @@ GLOBAL_LIST_INIT(gold_recipes, list ( \
|
|||||||
singular_name = "silver bar"
|
singular_name = "silver bar"
|
||||||
sheettype = "silver"
|
sheettype = "silver"
|
||||||
materials = list(MAT_SILVER=MINERAL_MATERIAL_AMOUNT)
|
materials = list(MAT_SILVER=MINERAL_MATERIAL_AMOUNT)
|
||||||
grind_results = list("silver" = 20)
|
grind_results = list(/datum/reagent/silver = 20)
|
||||||
point_value = 20
|
point_value = 20
|
||||||
merge_type = /obj/item/stack/sheet/mineral/silver
|
merge_type = /obj/item/stack/sheet/mineral/silver
|
||||||
tableVariant = /obj/structure/table/optable
|
tableVariant = /obj/structure/table/optable
|
||||||
@@ -262,7 +262,7 @@ GLOBAL_LIST_INIT(silver_recipes, list ( \
|
|||||||
sheettype = "bananium"
|
sheettype = "bananium"
|
||||||
materials = list(MAT_BANANIUM=MINERAL_MATERIAL_AMOUNT)
|
materials = list(MAT_BANANIUM=MINERAL_MATERIAL_AMOUNT)
|
||||||
novariants = TRUE
|
novariants = TRUE
|
||||||
grind_results = list("banana" = 20)
|
grind_results = list(/datum/reagent/consumable/banana = 20)
|
||||||
point_value = 50
|
point_value = 50
|
||||||
merge_type = /obj/item/stack/sheet/mineral/bananium
|
merge_type = /obj/item/stack/sheet/mineral/bananium
|
||||||
|
|
||||||
@@ -342,7 +342,7 @@ GLOBAL_LIST_INIT(plastitanium_recipes, list ( \
|
|||||||
singular_name = "snow block"
|
singular_name = "snow block"
|
||||||
force = 1
|
force = 1
|
||||||
throwforce = 2
|
throwforce = 2
|
||||||
grind_results = list("ice" = 20)
|
grind_results = list(/datum/reagent/consumable/ice = 20)
|
||||||
merge_type = /obj/item/stack/sheet/mineral/snow
|
merge_type = /obj/item/stack/sheet/mineral/snow
|
||||||
|
|
||||||
GLOBAL_LIST_INIT(snow_recipes, list ( \
|
GLOBAL_LIST_INIT(snow_recipes, list ( \
|
||||||
@@ -422,7 +422,7 @@ GLOBAL_LIST_INIT(abductor_recipes, list ( \
|
|||||||
icon_state = "slag"
|
icon_state = "slag"
|
||||||
singular_name = "coal lump"
|
singular_name = "coal lump"
|
||||||
merge_type = /obj/item/stack/sheet/mineral/coal
|
merge_type = /obj/item/stack/sheet/mineral/coal
|
||||||
grind_results = list("carbon" = 20)
|
grind_results = list(/datum/reagent/carbon = 20)
|
||||||
|
|
||||||
/obj/item/stack/sheet/mineral/coal/attackby(obj/item/W, mob/user, params)
|
/obj/item/stack/sheet/mineral/coal/attackby(obj/item/W, mob/user, params)
|
||||||
if(W.get_temperature() > 300)//If the temperature of the object is over 300, then ignite
|
if(W.get_temperature() > 300)//If the temperature of the object is over 300, then ignite
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \
|
|||||||
flags_1 = CONDUCT_1
|
flags_1 = CONDUCT_1
|
||||||
resistance_flags = FIRE_PROOF
|
resistance_flags = FIRE_PROOF
|
||||||
merge_type = /obj/item/stack/sheet/metal
|
merge_type = /obj/item/stack/sheet/metal
|
||||||
grind_results = list("iron" = 20)
|
grind_results = list(/datum/reagent/iron = 20)
|
||||||
point_value = 2
|
point_value = 2
|
||||||
tableVariant = /obj/structure/table
|
tableVariant = /obj/structure/table
|
||||||
|
|
||||||
@@ -168,7 +168,7 @@ GLOBAL_LIST_INIT(plasteel_recipes, list ( \
|
|||||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 80)
|
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 80)
|
||||||
resistance_flags = FIRE_PROOF
|
resistance_flags = FIRE_PROOF
|
||||||
merge_type = /obj/item/stack/sheet/plasteel
|
merge_type = /obj/item/stack/sheet/plasteel
|
||||||
grind_results = list("iron" = 20, "plasma" = 20)
|
grind_results = list(/datum/reagent/iron = 20, /datum/reagent/toxin/plasma = 20)
|
||||||
point_value = 23
|
point_value = 23
|
||||||
tableVariant = /obj/structure/table/reinforced
|
tableVariant = /obj/structure/table/reinforced
|
||||||
|
|
||||||
@@ -238,7 +238,7 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \
|
|||||||
resistance_flags = FLAMMABLE
|
resistance_flags = FLAMMABLE
|
||||||
merge_type = /obj/item/stack/sheet/mineral/wood
|
merge_type = /obj/item/stack/sheet/mineral/wood
|
||||||
novariants = TRUE
|
novariants = TRUE
|
||||||
grind_results = list("carbon" = 20)
|
grind_results = list(/datum/reagent/carbon = 20)
|
||||||
|
|
||||||
|
|
||||||
/obj/item/stack/sheet/mineral/wood/attackby(obj/item/W, mob/user, params) // NOTE: sheet_types.dm is where the WOOD stack lives. Maybe move this over there.
|
/obj/item/stack/sheet/mineral/wood/attackby(obj/item/W, mob/user, params) // NOTE: sheet_types.dm is where the WOOD stack lives. Maybe move this over there.
|
||||||
@@ -296,7 +296,7 @@ GLOBAL_LIST_INIT(bamboo_recipes, list ( \
|
|||||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0)
|
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0)
|
||||||
resistance_flags = FLAMMABLE
|
resistance_flags = FLAMMABLE
|
||||||
merge_type = /obj/item/stack/sheet/mineral/bamboo
|
merge_type = /obj/item/stack/sheet/mineral/bamboo
|
||||||
grind_results = list("carbon" = 5)
|
grind_results = list(/datum/reagent/carbon = 5)
|
||||||
|
|
||||||
/obj/item/stack/sheet/mineral/bamboo/Initialize(mapload, new_amount, merge = TRUE)
|
/obj/item/stack/sheet/mineral/bamboo/Initialize(mapload, new_amount, merge = TRUE)
|
||||||
recipes = GLOB.bamboo_recipes
|
recipes = GLOB.bamboo_recipes
|
||||||
@@ -511,7 +511,7 @@ GLOBAL_LIST_INIT(runed_metal_recipes, list ( \
|
|||||||
sheettype = "runed"
|
sheettype = "runed"
|
||||||
merge_type = /obj/item/stack/sheet/runed_metal
|
merge_type = /obj/item/stack/sheet/runed_metal
|
||||||
novariants = TRUE
|
novariants = TRUE
|
||||||
grind_results = list("iron" = 5, "blood" = 15)
|
grind_results = list(/datum/reagent/iron = 5, /datum/reagent/blood = 15)
|
||||||
|
|
||||||
/obj/item/stack/sheet/runed_metal/ratvar_act()
|
/obj/item/stack/sheet/runed_metal/ratvar_act()
|
||||||
new /obj/item/stack/tile/brass(loc, amount)
|
new /obj/item/stack/tile/brass(loc, amount)
|
||||||
@@ -586,7 +586,7 @@ GLOBAL_LIST_INIT(brass_recipes, list ( \
|
|||||||
throw_range = 3
|
throw_range = 3
|
||||||
turf_type = /turf/open/floor/clockwork
|
turf_type = /turf/open/floor/clockwork
|
||||||
novariants = FALSE
|
novariants = FALSE
|
||||||
grind_results = list("iron" = 5, "teslium" = 15, "holyoil" = 1)
|
grind_results = list(/datum/reagent/iron = 5, /datum/reagent/teslium = 15, /datum/reagent/fuel/holyoil = 1)
|
||||||
merge_type = /obj/item/stack/tile/brass
|
merge_type = /obj/item/stack/tile/brass
|
||||||
tableVariant = /obj/structure/table/reinforced/brass
|
tableVariant = /obj/structure/table/reinforced/brass
|
||||||
|
|
||||||
@@ -639,7 +639,7 @@ GLOBAL_LIST_INIT(bronze_recipes, list ( \
|
|||||||
throw_range = 3
|
throw_range = 3
|
||||||
turf_type = /turf/open/floor/bronze
|
turf_type = /turf/open/floor/bronze
|
||||||
novariants = FALSE
|
novariants = FALSE
|
||||||
grind_results = list("iron" = 5, "copper" = 3) //we have no "tin" reagent so this is the closest thing
|
grind_results = list(/datum/reagent/iron = 5, /datum/reagent/copper = 3) //we have no "tin" reagent so this is the closest thing
|
||||||
merge_type = /obj/item/stack/tile/bronze
|
merge_type = /obj/item/stack/tile/bronze
|
||||||
tableVariant = /obj/structure/table/bronze
|
tableVariant = /obj/structure/table/bronze
|
||||||
|
|
||||||
@@ -693,7 +693,7 @@ GLOBAL_LIST_INIT(bronze_recipes, list ( \
|
|||||||
w_class = WEIGHT_CLASS_NORMAL
|
w_class = WEIGHT_CLASS_NORMAL
|
||||||
throw_speed = 1
|
throw_speed = 1
|
||||||
throw_range = 3
|
throw_range = 3
|
||||||
grind_results = list("carbon" = 10)
|
grind_results = list(/datum/reagent/carbon = 10)
|
||||||
merge_type = /obj/item/stack/sheet/bone
|
merge_type = /obj/item/stack/sheet/bone
|
||||||
|
|
||||||
GLOBAL_LIST_INIT(plastic_recipes, list(
|
GLOBAL_LIST_INIT(plastic_recipes, list(
|
||||||
|
|||||||
@@ -163,16 +163,16 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "bible",
|
|||||||
for(var/obj/effect/rune/R in orange(2,user))
|
for(var/obj/effect/rune/R in orange(2,user))
|
||||||
R.invisibility = 0
|
R.invisibility = 0
|
||||||
if(user.mind && (user.mind.isholy))
|
if(user.mind && (user.mind.isholy))
|
||||||
if(A.reagents && A.reagents.has_reagent("water")) // blesses all the water in the holder
|
if(A.reagents && A.reagents.has_reagent(/datum/reagent/water)) // blesses all the water in the holder
|
||||||
to_chat(user, "<span class='notice'>You bless [A].</span>")
|
to_chat(user, "<span class='notice'>You bless [A].</span>")
|
||||||
var/water2holy = A.reagents.get_reagent_amount("water")
|
var/water2holy = A.reagents.get_reagent_amount(/datum/reagent/water)
|
||||||
A.reagents.del_reagent("water")
|
A.reagents.del_reagent(/datum/reagent/water)
|
||||||
A.reagents.add_reagent("holywater",water2holy)
|
A.reagents.add_reagent(/datum/reagent/water/holywater,water2holy)
|
||||||
if(A.reagents && A.reagents.has_reagent("unholywater")) // yeah yeah, copy pasted code - sue me
|
if(A.reagents && A.reagents.has_reagent(/datum/reagent/fuel/unholywater)) // yeah yeah, copy pasted code - sue me
|
||||||
to_chat(user, "<span class='notice'>You purify [A].</span>")
|
to_chat(user, "<span class='notice'>You purify [A].</span>")
|
||||||
var/unholy2clean = A.reagents.get_reagent_amount("unholywater")
|
var/unholy2clean = A.reagents.get_reagent_amount(/datum/reagent/fuel/unholywater)
|
||||||
A.reagents.del_reagent("unholywater")
|
A.reagents.del_reagent(/datum/reagent/fuel/unholywater)
|
||||||
A.reagents.add_reagent("holywater",unholy2clean)
|
A.reagents.add_reagent(/datum/reagent/water/holywater,unholy2clean)
|
||||||
if(istype(A, /obj/item/twohanded/required/cult_bastard) && !iscultist(user))
|
if(istype(A, /obj/item/twohanded/required/cult_bastard) && !iscultist(user))
|
||||||
var/obj/item/twohanded/required/cult_bastard/sword = A
|
var/obj/item/twohanded/required/cult_bastard/sword = A
|
||||||
to_chat(user, "<span class='notice'>You begin to exorcise [sword].</span>")
|
to_chat(user, "<span class='notice'>You begin to exorcise [sword].</span>")
|
||||||
|
|||||||
@@ -439,8 +439,8 @@
|
|||||||
if(empty)
|
if(empty)
|
||||||
return
|
return
|
||||||
new /obj/item/hypospray/mkii/tricord(src)
|
new /obj/item/hypospray/mkii/tricord(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/tricord(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/tricord(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/tricord(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/tricord(src)
|
||||||
|
|
||||||
/obj/item/storage/hypospraykit/fire
|
/obj/item/storage/hypospraykit/fire
|
||||||
name = "burn treatment hypospray kit"
|
name = "burn treatment hypospray kit"
|
||||||
@@ -452,8 +452,8 @@
|
|||||||
if(empty)
|
if(empty)
|
||||||
return
|
return
|
||||||
new /obj/item/hypospray/mkii/burn(src)
|
new /obj/item/hypospray/mkii/burn(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/kelotane(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/kelotane(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/kelotane(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/kelotane(src)
|
||||||
|
|
||||||
/obj/item/storage/hypospraykit/toxin
|
/obj/item/storage/hypospraykit/toxin
|
||||||
name = "toxin treatment hypospray kit"
|
name = "toxin treatment hypospray kit"
|
||||||
@@ -464,8 +464,8 @@
|
|||||||
if(empty)
|
if(empty)
|
||||||
return
|
return
|
||||||
new /obj/item/hypospray/mkii/toxin(src)
|
new /obj/item/hypospray/mkii/toxin(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/antitoxin(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/antitoxin(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/antitoxin(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/antitoxin(src)
|
||||||
|
|
||||||
/obj/item/storage/hypospraykit/o2
|
/obj/item/storage/hypospraykit/o2
|
||||||
name = "oxygen deprivation hypospray kit"
|
name = "oxygen deprivation hypospray kit"
|
||||||
@@ -476,8 +476,8 @@
|
|||||||
if(empty)
|
if(empty)
|
||||||
return
|
return
|
||||||
new /obj/item/hypospray/mkii/oxygen(src)
|
new /obj/item/hypospray/mkii/oxygen(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/dexalin(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/dexalin(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/dexalin(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/dexalin(src)
|
||||||
|
|
||||||
/obj/item/storage/hypospraykit/enlarge
|
/obj/item/storage/hypospraykit/enlarge
|
||||||
name = "organomegaly trauma hypospray kit"
|
name = "organomegaly trauma hypospray kit"
|
||||||
@@ -488,12 +488,12 @@
|
|||||||
if(empty)
|
if(empty)
|
||||||
return
|
return
|
||||||
new /obj/item/hypospray/mkii/enlarge(src)
|
new /obj/item/hypospray/mkii/enlarge(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/breastreduction(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/breastreduction(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/breastreduction(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/breastreduction(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/breastreduction(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/breastreduction(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/penisreduction(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/penisreduction(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/penisreduction(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/penisreduction(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/penisreduction(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/penisreduction(src)
|
||||||
|
|
||||||
/obj/item/storage/hypospraykit/brute
|
/obj/item/storage/hypospraykit/brute
|
||||||
name = "brute trauma hypospray kit"
|
name = "brute trauma hypospray kit"
|
||||||
@@ -504,8 +504,8 @@
|
|||||||
if(empty)
|
if(empty)
|
||||||
return
|
return
|
||||||
new /obj/item/hypospray/mkii/brute(src)
|
new /obj/item/hypospray/mkii/brute(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/bicaridine(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/bicaridine(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/bicaridine(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/small/bicaridine(src)
|
||||||
|
|
||||||
/obj/item/storage/hypospraykit/tactical
|
/obj/item/storage/hypospraykit/tactical
|
||||||
name = "combat hypospray kit"
|
name = "combat hypospray kit"
|
||||||
@@ -517,8 +517,8 @@
|
|||||||
return
|
return
|
||||||
new /obj/item/defibrillator/compact/combat/loaded(src)
|
new /obj/item/defibrillator/compact/combat/loaded(src)
|
||||||
new /obj/item/hypospray/mkii/CMO/combat(src)
|
new /obj/item/hypospray/mkii/CMO/combat(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/combat(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/large/combat(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/combat(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/large/combat(src)
|
||||||
|
|
||||||
/obj/item/storage/hypospraykit/cmo
|
/obj/item/storage/hypospraykit/cmo
|
||||||
name = "deluxe hypospray kit"
|
name = "deluxe hypospray kit"
|
||||||
@@ -537,11 +537,11 @@
|
|||||||
if(empty)
|
if(empty)
|
||||||
return
|
return
|
||||||
new /obj/item/hypospray/mkii/CMO(src)
|
new /obj/item/hypospray/mkii/CMO(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/tricord(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/large/tricord(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/charcoal(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/large/charcoal(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/salglu(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/large/salglu(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/dexalin(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/large/dexalin(src)
|
||||||
new /obj/item/reagent_containers/glass/bottle/vial/large/preloaded/synthflesh(src)
|
new /obj/item/reagent_containers/glass/bottle/vial/large/synthflesh(src)
|
||||||
|
|
||||||
/obj/item/storage/box/vials
|
/obj/item/storage/box/vials
|
||||||
name = "box of hypovials"
|
name = "box of hypovials"
|
||||||
|
|||||||
@@ -148,7 +148,7 @@
|
|||||||
|
|
||||||
/obj/item/watertank/janitor/Initialize()
|
/obj/item/watertank/janitor/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
reagents.add_reagent("cleaner", 500)
|
reagents.add_reagent(/datum/reagent/space_cleaner, 500)
|
||||||
|
|
||||||
/obj/item/reagent_containers/spray/mister/janitor
|
/obj/item/reagent_containers/spray/mister/janitor
|
||||||
name = "janitor spray nozzle"
|
name = "janitor spray nozzle"
|
||||||
@@ -184,7 +184,7 @@
|
|||||||
|
|
||||||
/obj/item/watertank/atmos/Initialize()
|
/obj/item/watertank/atmos/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
reagents.add_reagent("water", 200)
|
reagents.add_reagent(/datum/reagent/water, 200)
|
||||||
|
|
||||||
/obj/item/watertank/atmos/make_noz()
|
/obj/item/watertank/atmos/make_noz()
|
||||||
return new /obj/item/extinguisher/mini/nozzle(src)
|
return new /obj/item/extinguisher/mini/nozzle(src)
|
||||||
@@ -436,13 +436,13 @@
|
|||||||
|
|
||||||
/obj/item/watertank/op/Initialize()
|
/obj/item/watertank/op/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
reagents.add_reagent("mutagen",350)
|
reagents.add_reagent(/datum/reagent/toxin/mutagen,350)
|
||||||
reagents.add_reagent("napalm",125)
|
reagents.add_reagent(/datum/reagent/napalm,125)
|
||||||
reagents.add_reagent("welding_fuel",125)
|
reagents.add_reagent(/datum/reagent/fuel,125)
|
||||||
reagents.add_reagent("clf3",300)
|
reagents.add_reagent(/datum/reagent/clf3,300)
|
||||||
reagents.add_reagent("cryptobiolin",350)
|
reagents.add_reagent(/datum/reagent/cryptobiolin,350)
|
||||||
reagents.add_reagent("plasma",250)
|
reagents.add_reagent(/datum/reagent/toxin/plasma,250)
|
||||||
reagents.add_reagent("condensedcapsaicin",500)
|
reagents.add_reagent(/datum/reagent/consumable/condensedcapsaicin,500)
|
||||||
|
|
||||||
/obj/item/reagent_containers/spray/mister/op
|
/obj/item/reagent_containers/spray/mister/op
|
||||||
desc = "A mister nozzle attached to several extended water tanks. It suspiciously has a compressor in the system and is labelled entirely in New Cyrillic."
|
desc = "A mister nozzle attached to several extended water tanks. It suspiciously has a compressor in the system and is labelled entirely in New Cyrillic."
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
/obj/item/weldingtool/Initialize()
|
/obj/item/weldingtool/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
create_reagents(max_fuel)
|
create_reagents(max_fuel)
|
||||||
reagents.add_reagent("welding_fuel", max_fuel)
|
reagents.add_reagent(/datum/reagent/fuel, max_fuel)
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|
||||||
|
|
||||||
@@ -97,7 +97,7 @@
|
|||||||
|
|
||||||
/obj/item/weldingtool/proc/explode()
|
/obj/item/weldingtool/proc/explode()
|
||||||
var/turf/T = get_turf(loc)
|
var/turf/T = get_turf(loc)
|
||||||
var/plasmaAmount = reagents.get_reagent_amount("plasma")
|
var/plasmaAmount = reagents.get_reagent_amount(/datum/reagent/toxin/plasma)
|
||||||
dyn_explosion(T, plasmaAmount/5)//20 plasma in a standard welder has a 4 power explosion. no breaches, but enough to kill/dismember holder
|
dyn_explosion(T, plasmaAmount/5)//20 plasma in a standard welder has a 4 power explosion. no breaches, but enough to kill/dismember holder
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|
||||||
@@ -142,7 +142,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/obj/item/weldingtool/attack_self(mob/user)
|
/obj/item/weldingtool/attack_self(mob/user)
|
||||||
if(src.reagents.has_reagent("plasma"))
|
if(src.reagents.has_reagent(/datum/reagent/toxin/plasma))
|
||||||
message_admins("[ADMIN_LOOKUPFLW(user)] activated a rigged welder at [AREACOORD(user)].")
|
message_admins("[ADMIN_LOOKUPFLW(user)] activated a rigged welder at [AREACOORD(user)].")
|
||||||
explode()
|
explode()
|
||||||
switched_on(user)
|
switched_on(user)
|
||||||
@@ -154,7 +154,7 @@
|
|||||||
|
|
||||||
// Returns the amount of fuel in the welder
|
// Returns the amount of fuel in the welder
|
||||||
/obj/item/weldingtool/proc/get_fuel()
|
/obj/item/weldingtool/proc/get_fuel()
|
||||||
return reagents.get_reagent_amount("welding_fuel")
|
return reagents.get_reagent_amount(/datum/reagent/fuel)
|
||||||
|
|
||||||
|
|
||||||
// Uses fuel from the welding tool.
|
// Uses fuel from the welding tool.
|
||||||
@@ -165,7 +165,7 @@
|
|||||||
if(used)
|
if(used)
|
||||||
burned_fuel_for = 0
|
burned_fuel_for = 0
|
||||||
if(get_fuel() >= used)
|
if(get_fuel() >= used)
|
||||||
reagents.remove_reagent("welding_fuel", used)
|
reagents.remove_reagent(/datum/reagent/fuel, used)
|
||||||
check_fuel()
|
check_fuel()
|
||||||
return TRUE
|
return TRUE
|
||||||
else
|
else
|
||||||
@@ -333,7 +333,7 @@
|
|||||||
|
|
||||||
/obj/item/weldingtool/abductor/process()
|
/obj/item/weldingtool/abductor/process()
|
||||||
if(get_fuel() <= max_fuel)
|
if(get_fuel() <= max_fuel)
|
||||||
reagents.add_reagent("welding_fuel", 1)
|
reagents.add_reagent(/datum/reagent/fuel, 1)
|
||||||
..()
|
..()
|
||||||
|
|
||||||
/obj/item/weldingtool/hugetank
|
/obj/item/weldingtool/hugetank
|
||||||
@@ -377,7 +377,7 @@
|
|||||||
..()
|
..()
|
||||||
if(get_fuel() < max_fuel && nextrefueltick < world.time)
|
if(get_fuel() < max_fuel && nextrefueltick < world.time)
|
||||||
nextrefueltick = world.time + 10
|
nextrefueltick = world.time + 10
|
||||||
reagents.add_reagent("welding_fuel", 1)
|
reagents.add_reagent(/datum/reagent/fuel, 1)
|
||||||
|
|
||||||
/obj/item/weldingtool/advanced
|
/obj/item/weldingtool/advanced
|
||||||
name = "advanced welding tool"
|
name = "advanced welding tool"
|
||||||
@@ -390,7 +390,7 @@
|
|||||||
|
|
||||||
/obj/item/weldingtool/advanced/process()
|
/obj/item/weldingtool/advanced/process()
|
||||||
if(get_fuel() <= max_fuel)
|
if(get_fuel() <= max_fuel)
|
||||||
reagents.add_reagent("welding_fuel", 1)
|
reagents.add_reagent(/datum/reagent/fuel, 1)
|
||||||
..()
|
..()
|
||||||
|
|
||||||
#undef WELDER_FUEL_BURN_INTERVAL
|
#undef WELDER_FUEL_BURN_INTERVAL
|
||||||
|
|||||||
@@ -70,12 +70,12 @@
|
|||||||
name = "crushed can"
|
name = "crushed can"
|
||||||
icon_state = "cola"
|
icon_state = "cola"
|
||||||
resistance_flags = NONE
|
resistance_flags = NONE
|
||||||
grind_results = list("aluminium" = 10)
|
grind_results = list(/datum/reagent/aluminium = 10)
|
||||||
|
|
||||||
/obj/item/trash/boritos
|
/obj/item/trash/boritos
|
||||||
name = "boritos bag"
|
name = "boritos bag"
|
||||||
icon_state = "boritos"
|
icon_state = "boritos"
|
||||||
grind_results = list("aluminium" = 1) //from the mylar bag
|
grind_results = list(/datum/reagent/aluminium = 1) //from the mylar bag
|
||||||
|
|
||||||
/obj/item/trash/attack(mob/M, mob/living/user)
|
/obj/item/trash/attack(mob/M, mob/living/user)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
return
|
return
|
||||||
last_process = world.time
|
last_process = world.time
|
||||||
to_chat(user, "<span class='notice'>The water feels warm and soothing as you touch it. The fountain immediately dries up shortly afterwards.</span>")
|
to_chat(user, "<span class='notice'>The water feels warm and soothing as you touch it. The fountain immediately dries up shortly afterwards.</span>")
|
||||||
user.reagents.add_reagent("godblood",20)
|
user.reagents.add_reagent(/datum/reagent/medicine/omnizine/godblood,20)
|
||||||
update_icon()
|
update_icon()
|
||||||
addtimer(CALLBACK(src, /atom/.proc/update_icon), time_between_uses)
|
addtimer(CALLBACK(src, /atom/.proc/update_icon), time_between_uses)
|
||||||
|
|
||||||
|
|||||||
@@ -103,7 +103,7 @@
|
|||||||
if (!open)
|
if (!open)
|
||||||
return
|
return
|
||||||
var/obj/item/reagent_containers/RG = I
|
var/obj/item/reagent_containers/RG = I
|
||||||
RG.reagents.add_reagent("water", min(RG.volume - RG.reagents.total_volume, RG.amount_per_transfer_from_this))
|
RG.reagents.add_reagent(/datum/reagent/water, min(RG.volume - RG.reagents.total_volume, RG.amount_per_transfer_from_this))
|
||||||
to_chat(user, "<span class='notice'>You fill [RG] from [src]. Gross.</span>")
|
to_chat(user, "<span class='notice'>You fill [RG] from [src]. Gross.</span>")
|
||||||
else
|
else
|
||||||
return ..()
|
return ..()
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
icon = 'icons/obj/items_and_weapons.dmi'
|
icon = 'icons/obj/items_and_weapons.dmi'
|
||||||
icon_state = "urinalcake"
|
icon_state = "urinalcake"
|
||||||
w_class = WEIGHT_CLASS_TINY
|
w_class = WEIGHT_CLASS_TINY
|
||||||
list_reagents = list("chlorine" = 3, "ammonia" = 1)
|
list_reagents = list(/datum/reagent/chlorine = 3, /datum/reagent/ammonia = 1)
|
||||||
|
|
||||||
/obj/item/reagent_containers/food/urinalcake/attack_self(mob/living/user)
|
/obj/item/reagent_containers/food/urinalcake/attack_self(mob/living/user)
|
||||||
user.visible_message("<span class='notice'>[user] squishes [src]!</span>", "<span class='notice'>You squish [src].</span>", "<i>You hear a squish.</i>")
|
user.visible_message("<span class='notice'>[user] squishes [src]!</span>", "<span class='notice'>You squish [src].</span>", "<i>You hear a squish.</i>")
|
||||||
@@ -463,7 +463,7 @@
|
|||||||
desc = "A sink used for washing one's hands and face."
|
desc = "A sink used for washing one's hands and face."
|
||||||
anchored = TRUE
|
anchored = TRUE
|
||||||
var/busy = FALSE //Something's being washed at the moment
|
var/busy = FALSE //Something's being washed at the moment
|
||||||
var/dispensedreagent = "water" // for whenever plumbing happens
|
var/dispensedreagent = /datum/reagent/water // for whenever plumbing happens
|
||||||
|
|
||||||
|
|
||||||
/obj/structure/sink/attack_hand(mob/living/user)
|
/obj/structure/sink/attack_hand(mob/living/user)
|
||||||
@@ -538,7 +538,7 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
if(istype(O, /obj/item/mop))
|
if(istype(O, /obj/item/mop))
|
||||||
O.reagents.add_reagent("[dispensedreagent]", 5)
|
O.reagents.add_reagent(dispensedreagent, 5)
|
||||||
to_chat(user, "<span class='notice'>You wet [O] in [src].</span>")
|
to_chat(user, "<span class='notice'>You wet [O] in [src].</span>")
|
||||||
playsound(loc, 'sound/effects/slosh.ogg', 25, 1)
|
playsound(loc, 'sound/effects/slosh.ogg', 25, 1)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -554,12 +554,10 @@
|
|||||||
clear_reagents_to_vomit_pool(C,V)
|
clear_reagents_to_vomit_pool(C,V)
|
||||||
|
|
||||||
/proc/clear_reagents_to_vomit_pool(mob/living/carbon/M, obj/effect/decal/cleanable/vomit/V)
|
/proc/clear_reagents_to_vomit_pool(mob/living/carbon/M, obj/effect/decal/cleanable/vomit/V)
|
||||||
|
for(var/datum/reagent/consumable/R in M.reagents.reagent_list) //clears the stomach of anything that might be digested as food
|
||||||
|
if(R.nutriment_factor > 0)
|
||||||
|
M.reagents.del_reagent(R.type)
|
||||||
M.reagents.trans_to(V, M.reagents.total_volume / 10)
|
M.reagents.trans_to(V, M.reagents.total_volume / 10)
|
||||||
for(var/datum/reagent/R in M.reagents.reagent_list) //clears the stomach of anything that might be digested as food
|
|
||||||
if(istype(R, /datum/reagent/consumable))
|
|
||||||
var/datum/reagent/consumable/nutri_check = R
|
|
||||||
if(nutri_check.nutriment_factor >0)
|
|
||||||
M.reagents.remove_reagent(R.id,R.volume)
|
|
||||||
|
|
||||||
//Whatever happens after high temperature fire dies out or thermite reaction works.
|
//Whatever happens after high temperature fire dies out or thermite reaction works.
|
||||||
//Should return new turf
|
//Should return new turf
|
||||||
|
|||||||
@@ -795,7 +795,7 @@
|
|||||||
icon_state = "bed"
|
icon_state = "bed"
|
||||||
can_buckle = 1
|
can_buckle = 1
|
||||||
|
|
||||||
var/static/list/injected_reagents = list("corazone")
|
var/static/list/injected_reagents = list(/datum/reagent/medicine/corazone)
|
||||||
|
|
||||||
/obj/structure/table/optable/abductor/Crossed(atom/movable/AM)
|
/obj/structure/table/optable/abductor/Crossed(atom/movable/AM)
|
||||||
. = ..()
|
. = ..()
|
||||||
|
|||||||
@@ -143,9 +143,9 @@
|
|||||||
create_reagents(10)
|
create_reagents(10)
|
||||||
|
|
||||||
if(overmind && overmind.blob_reagent_datum)
|
if(overmind && overmind.blob_reagent_datum)
|
||||||
reagents.add_reagent(overmind.blob_reagent_datum.id, 10)
|
reagents.add_reagent(overmind.blob_reagent_datum.type, 10)
|
||||||
else
|
else
|
||||||
reagents.add_reagent("spore", 10)
|
reagents.add_reagent(/datum/reagent/toxin/spore, 10)
|
||||||
|
|
||||||
// Attach the smoke spreader and setup/start it.
|
// Attach the smoke spreader and setup/start it.
|
||||||
S.attach(location)
|
S.attach(location)
|
||||||
|
|||||||
@@ -13,5 +13,5 @@
|
|||||||
|
|
||||||
//Recover from stuns.
|
//Recover from stuns.
|
||||||
/obj/effect/proc_holder/changeling/adrenaline/sting_action(mob/living/user)
|
/obj/effect/proc_holder/changeling/adrenaline/sting_action(mob/living/user)
|
||||||
user.do_adrenaline(0, FALSE, 70, 0, TRUE, list("epinephrine" = 3, "changelingmeth" = 10, "mannitol" = 10, "regen_jelly" = 10, "changelingadrenaline" = 5), "<span class='notice'>Energy rushes through us.</span>", 0, 0.75, 0)
|
user.do_adrenaline(0, FALSE, 70, 0, TRUE, list(/datum/reagent/medicine/epinephrine = 3, /datum/reagent/drug/methamphetamine/changeling = 10, /datum/reagent/medicine/mannitol = 10, /datum/reagent/medicine/regen_jelly = 10, /datum/reagent/medicine/changelingadrenaline = 5), "<span class='notice'>Energy rushes through us.</span>", 0, 0.75, 0)
|
||||||
return TRUE
|
return TRUE
|
||||||
@@ -58,7 +58,7 @@
|
|||||||
target.mind.linglink = 1
|
target.mind.linglink = 1
|
||||||
target.say("[MODE_TOKEN_CHANGELING] AAAAARRRRGGGGGHHHHH!!")
|
target.say("[MODE_TOKEN_CHANGELING] AAAAARRRRGGGGGHHHHH!!")
|
||||||
to_chat(target, "<font color=#800040><span class='boldannounce'>You can now communicate in the changeling hivemind, say \"[MODE_TOKEN_CHANGELING] message\" to communicate!</span>")
|
to_chat(target, "<font color=#800040><span class='boldannounce'>You can now communicate in the changeling hivemind, say \"[MODE_TOKEN_CHANGELING] message\" to communicate!</span>")
|
||||||
target.reagents.add_reagent("salbutamol", 40) // So they don't choke to death while you interrogate them
|
target.reagents.add_reagent(/datum/reagent/medicine/salbutamol, 40) // So they don't choke to death while you interrogate them
|
||||||
sleep(1800)
|
sleep(1800)
|
||||||
SSblackbox.record_feedback("nested tally", "changeling_powers", 1, list("[name]", "[i]"))
|
SSblackbox.record_feedback("nested tally", "changeling_powers", 1, list("[name]", "[i]"))
|
||||||
if(!do_mob(user, target, 20))
|
if(!do_mob(user, target, 20))
|
||||||
|
|||||||
@@ -500,7 +500,7 @@
|
|||||||
/obj/item/clothing/suit/space/changeling/process()
|
/obj/item/clothing/suit/space/changeling/process()
|
||||||
if(ishuman(loc))
|
if(ishuman(loc))
|
||||||
var/mob/living/carbon/human/H = loc
|
var/mob/living/carbon/human/H = loc
|
||||||
H.reagents.add_reagent("salbutamol", REAGENTS_METABOLISM)
|
H.reagents.add_reagent(/datum/reagent/medicine/salbutamol, REAGENTS_METABOLISM)
|
||||||
|
|
||||||
/obj/item/clothing/head/helmet/space/changeling
|
/obj/item/clothing/head/helmet/space/changeling
|
||||||
name = "flesh mass"
|
name = "flesh mass"
|
||||||
|
|||||||
@@ -28,10 +28,10 @@
|
|||||||
C.vomit(0, toxic = TRUE)
|
C.vomit(0, toxic = TRUE)
|
||||||
O.forceMove(get_turf(user))
|
O.forceMove(get_turf(user))
|
||||||
|
|
||||||
user.reagents.add_reagent("mutadone", 10)
|
user.reagents.add_reagent(/datum/reagent/medicine/mutadone, 10)
|
||||||
user.reagents.add_reagent("pen_jelly", 20)
|
user.reagents.add_reagent(/datum/reagent/medicine/pen_acid/pen_jelly, 20)
|
||||||
user.reagents.add_reagent("antihol", 10)
|
user.reagents.add_reagent(/datum/reagent/medicine/antihol, 10)
|
||||||
user.reagents.add_reagent("mannitol", 25)
|
user.reagents.add_reagent(/datum/reagent/medicine/mannitol, 25)
|
||||||
|
|
||||||
if(isliving(user))
|
if(isliving(user))
|
||||||
var/mob/living/L = user
|
var/mob/living/L = user
|
||||||
|
|||||||
@@ -104,11 +104,11 @@
|
|||||||
var/mob/living/carbon/C = target
|
var/mob/living/carbon/C = target
|
||||||
. = TRUE
|
. = TRUE
|
||||||
if(istype(C))
|
if(istype(C))
|
||||||
if(C.reagents.has_reagent("changeling_sting_real"))
|
if(C.reagents.has_reagent(/datum/reagent/changeling_string))
|
||||||
C.reagents.add_reagent("changeling_sting_real",120)
|
C.reagents.add_reagent(/datum/reagent/changeling_string,120)
|
||||||
log_combat(user, target, "stung", "transformation sting", ", extending the duration.")
|
log_combat(user, target, "stung", "transformation sting", ", extending the duration.")
|
||||||
else
|
else
|
||||||
C.reagents.add_reagent("changeling_sting_real",120,list("desired_dna" = selected_dna.dna))
|
C.reagents.add_reagent(/datum/reagent/changeling_string,120,list("desired_dna" = selected_dna.dna))
|
||||||
log_combat(user, target, "stung", "transformation sting", " new identity is '[selected_dna.dna.real_name]'")
|
log_combat(user, target, "stung", "transformation sting", " new identity is '[selected_dna.dna.real_name]'")
|
||||||
|
|
||||||
|
|
||||||
@@ -243,8 +243,8 @@
|
|||||||
/obj/effect/proc_holder/changeling/sting/LSD/sting_action(mob/user, mob/target)
|
/obj/effect/proc_holder/changeling/sting/LSD/sting_action(mob/user, mob/target)
|
||||||
log_combat(user, target, "stung", "LSD sting")
|
log_combat(user, target, "stung", "LSD sting")
|
||||||
if(target.reagents)
|
if(target.reagents)
|
||||||
target.reagents.add_reagent("regenerative_materia", 5)
|
target.reagents.add_reagent(/datum/reagent/blob/regenerative_materia, 5)
|
||||||
target.reagents.add_reagent("mindbreaker", 5)
|
target.reagents.add_reagent(/datum/reagent/toxin/mindbreaker, 5)
|
||||||
return TRUE
|
return TRUE
|
||||||
|
|
||||||
/obj/effect/proc_holder/changeling/sting/cryo
|
/obj/effect/proc_holder/changeling/sting/cryo
|
||||||
@@ -262,5 +262,5 @@
|
|||||||
/obj/effect/proc_holder/changeling/sting/cryo/sting_action(mob/user, mob/target)
|
/obj/effect/proc_holder/changeling/sting/cryo/sting_action(mob/user, mob/target)
|
||||||
log_combat(user, target, "stung", "cryo sting")
|
log_combat(user, target, "stung", "cryo sting")
|
||||||
if(target.reagents)
|
if(target.reagents)
|
||||||
target.reagents.add_reagent("frostoil", 30)
|
target.reagents.add_reagent(/datum/reagent/consumable/frostoil, 30)
|
||||||
return TRUE
|
return TRUE
|
||||||
|
|||||||
@@ -100,7 +100,7 @@
|
|||||||
var/burndamage = L.getFireLoss()
|
var/burndamage = L.getFireLoss()
|
||||||
var/oxydamage = L.getOxyLoss()
|
var/oxydamage = L.getOxyLoss()
|
||||||
var/totaldamage = brutedamage + burndamage + oxydamage
|
var/totaldamage = brutedamage + burndamage + oxydamage
|
||||||
if(!totaldamage && (!L.reagents || !L.reagents.has_reagent("holywater")))
|
if(!totaldamage && (!L.reagents || !L.reagents.has_reagent(/datum/reagent/water/holywater)))
|
||||||
to_chat(ranged_ability_user, "<span class='inathneq'>\"[L] is unhurt and untainted.\"</span>")
|
to_chat(ranged_ability_user, "<span class='inathneq'>\"[L] is unhurt and untainted.\"</span>")
|
||||||
return TRUE
|
return TRUE
|
||||||
|
|
||||||
@@ -108,7 +108,7 @@
|
|||||||
|
|
||||||
to_chat(ranged_ability_user, "<span class='brass'>You bathe [L == ranged_ability_user ? "yourself":"[L]"] in Inath-neq's power!</span>")
|
to_chat(ranged_ability_user, "<span class='brass'>You bathe [L == ranged_ability_user ? "yourself":"[L]"] in Inath-neq's power!</span>")
|
||||||
var/targetturf = get_turf(L)
|
var/targetturf = get_turf(L)
|
||||||
var/has_holy_water = (L.reagents && L.reagents.has_reagent("holywater"))
|
var/has_holy_water = (L.reagents && L.reagents.has_reagent(/datum/reagent/water/holywater))
|
||||||
var/healseverity = max(round(totaldamage*0.05, 1), 1) //shows the general severity of the damage you just healed, 1 glow per 20
|
var/healseverity = max(round(totaldamage*0.05, 1), 1) //shows the general severity of the damage you just healed, 1 glow per 20
|
||||||
for(var/i in 1 to healseverity)
|
for(var/i in 1 to healseverity)
|
||||||
new /obj/effect/temp_visual/heal(targetturf, "#1E8CE1")
|
new /obj/effect/temp_visual/heal(targetturf, "#1E8CE1")
|
||||||
@@ -129,7 +129,7 @@
|
|||||||
playsound(targetturf, 'sound/magic/staff_healing.ogg', 50, 1)
|
playsound(targetturf, 'sound/magic/staff_healing.ogg', 50, 1)
|
||||||
|
|
||||||
if(has_holy_water)
|
if(has_holy_water)
|
||||||
L.reagents.remove_reagent("holywater", 1000)
|
L.reagents.del_reagent(/datum/reagent/water/holywater)
|
||||||
|
|
||||||
remove_ranged_ability()
|
remove_ranged_ability()
|
||||||
|
|
||||||
|
|||||||
@@ -487,7 +487,7 @@
|
|||||||
icon = 'icons/obj/drinks.dmi'
|
icon = 'icons/obj/drinks.dmi'
|
||||||
icon_state = "holyflask"
|
icon_state = "holyflask"
|
||||||
color = "#333333"
|
color = "#333333"
|
||||||
list_reagents = list("unholywater" = 50)
|
list_reagents = list(/datum/reagent/fuel/unholywater = 50)
|
||||||
|
|
||||||
/obj/item/shuttle_curse
|
/obj/item/shuttle_curse
|
||||||
name = "cursed orb"
|
name = "cursed orb"
|
||||||
@@ -797,7 +797,7 @@
|
|||||||
if(ishuman(target))
|
if(ishuman(target))
|
||||||
var/mob/living/carbon/human/H = target
|
var/mob/living/carbon/human/H = target
|
||||||
if(H.stat != DEAD)
|
if(H.stat != DEAD)
|
||||||
H.reagents.add_reagent("unholywater", 4)
|
H.reagents.add_reagent(/datum/reagent/fuel/unholywater, 4)
|
||||||
if(isshade(target) || isconstruct(target))
|
if(isshade(target) || isconstruct(target))
|
||||||
var/mob/living/simple_animal/M = target
|
var/mob/living/simple_animal/M = target
|
||||||
if(M.health+5 < M.maxHealth)
|
if(M.health+5 < M.maxHealth)
|
||||||
@@ -898,7 +898,7 @@
|
|||||||
if(ishuman(target))
|
if(ishuman(target))
|
||||||
var/mob/living/carbon/human/H = target
|
var/mob/living/carbon/human/H = target
|
||||||
if(H.stat != DEAD)
|
if(H.stat != DEAD)
|
||||||
H.reagents.add_reagent("unholywater", 7)
|
H.reagents.add_reagent(/datum/reagent/fuel/unholywater, 7)
|
||||||
if(isshade(target) || isconstruct(target))
|
if(isshade(target) || isconstruct(target))
|
||||||
var/mob/living/simple_animal/M = target
|
var/mob/living/simple_animal/M = target
|
||||||
if(M.health+15 < M.maxHealth)
|
if(M.health+15 < M.maxHealth)
|
||||||
|
|||||||
@@ -24,11 +24,11 @@ This file contains the cult dagger and rune list code
|
|||||||
|
|
||||||
/obj/item/melee/cultblade/dagger/attack(mob/living/M, mob/living/user)
|
/obj/item/melee/cultblade/dagger/attack(mob/living/M, mob/living/user)
|
||||||
if(iscultist(M))
|
if(iscultist(M))
|
||||||
if(M.reagents && M.reagents.has_reagent("holywater")) //allows cultists to be rescued from the clutches of ordained religion
|
if(M.reagents && M.reagents.has_reagent(/datum/reagent/water/holywater)) //allows cultists to be rescued from the clutches of ordained religion
|
||||||
to_chat(user, "<span class='cult'>You remove the taint from [M].</span>" )
|
to_chat(user, "<span class='cult'>You remove the taint from [M].</span>" )
|
||||||
var/holy2unholy = M.reagents.get_reagent_amount("holywater")
|
var/holy2unholy = M.reagents.get_reagent_amount(/datum/reagent/water/holywater)
|
||||||
M.reagents.del_reagent("holywater")
|
M.reagents.del_reagent(/datum/reagent/water/holywater)
|
||||||
M.reagents.add_reagent("unholywater",holy2unholy)
|
M.reagents.add_reagent(/datum/reagent/fuel/unholywater,holy2unholy)
|
||||||
log_combat(user, M, "smacked", src, " removing the holy water from them")
|
log_combat(user, M, "smacked", src, " removing the holy water from them")
|
||||||
return FALSE
|
return FALSE
|
||||||
. = ..()
|
. = ..()
|
||||||
|
|||||||
@@ -384,14 +384,14 @@ GLOBAL_LIST_INIT(devil_suffix, list(" the Red", " the Soulless", " the Master",
|
|||||||
if(BANISH_WATER)
|
if(BANISH_WATER)
|
||||||
if(iscarbon(body))
|
if(iscarbon(body))
|
||||||
var/mob/living/carbon/H = body
|
var/mob/living/carbon/H = body
|
||||||
return H.reagents.has_reagent("holy water")
|
return H.reagents.has_reagent(/datum/reagent/water/holywater)
|
||||||
return 0
|
return 0
|
||||||
if(BANISH_COFFIN)
|
if(BANISH_COFFIN)
|
||||||
return (body && istype(body.loc, /obj/structure/closet/crate/coffin))
|
return (body && istype(body.loc, /obj/structure/closet/crate/coffin))
|
||||||
if(BANISH_FORMALDYHIDE)
|
if(BANISH_FORMALDYHIDE)
|
||||||
if(iscarbon(body))
|
if(iscarbon(body))
|
||||||
var/mob/living/carbon/H = body
|
var/mob/living/carbon/H = body
|
||||||
return H.reagents.has_reagent("formaldehyde")
|
return H.reagents.has_reagent(/datum/reagent/toxin/formaldehyde)
|
||||||
return 0
|
return 0
|
||||||
if(BANISH_RUNES)
|
if(BANISH_RUNES)
|
||||||
if(body)
|
if(body)
|
||||||
|
|||||||
@@ -513,7 +513,7 @@
|
|||||||
/obj/machinery/nuclearbomb/beer/proc/fizzbuzz()
|
/obj/machinery/nuclearbomb/beer/proc/fizzbuzz()
|
||||||
var/datum/reagents/R = new/datum/reagents(1000)
|
var/datum/reagents/R = new/datum/reagents(1000)
|
||||||
R.my_atom = src
|
R.my_atom = src
|
||||||
R.add_reagent("beer", 100)
|
R.add_reagent(/datum/reagent/consumable/ethanol/beer, 100)
|
||||||
|
|
||||||
var/datum/effect_system/foam_spread/foam = new
|
var/datum/effect_system/foam_spread/foam = new
|
||||||
foam.set_up(200, get_turf(src), R)
|
foam.set_up(200, get_turf(src), R)
|
||||||
|
|||||||
@@ -353,7 +353,7 @@
|
|||||||
to_chat(H, "<span class='revenminor'>You feel [pick("suddenly sick", "a surge of nausea", "like your skin is <i>wrong</i>")].</span>")
|
to_chat(H, "<span class='revenminor'>You feel [pick("suddenly sick", "a surge of nausea", "like your skin is <i>wrong</i>")].</span>")
|
||||||
else
|
else
|
||||||
if(mob.reagents)
|
if(mob.reagents)
|
||||||
mob.reagents.add_reagent("plasma", 5)
|
mob.reagents.add_reagent(/datum/reagent/toxin/plasma, 5)
|
||||||
else
|
else
|
||||||
mob.adjustToxLoss(5)
|
mob.adjustToxLoss(5)
|
||||||
for(var/obj/structure/spacevine/vine in T) //Fucking with botanists, the ability.
|
for(var/obj/structure/spacevine/vine in T) //Fucking with botanists, the ability.
|
||||||
|
|||||||
@@ -175,7 +175,7 @@
|
|||||||
if(C.reagents.total_volume >= C.volume)
|
if(C.reagents.total_volume >= C.volume)
|
||||||
to_chat(user, "<span class='danger'>[C] is full.</span>")
|
to_chat(user, "<span class='danger'>[C] is full.</span>")
|
||||||
return
|
return
|
||||||
C.reagents.add_reagent("plasma", rand(5, 10))
|
C.reagents.add_reagent(/datum/reagent/toxin/plasma, rand(5, 10))
|
||||||
user.visible_message("[user] scoops some plasma from the [src] with \the [C].", "<span class='notice'>You scoop out some plasma from the [src] using \the [C].</span>")
|
user.visible_message("[user] scoops some plasma from the [src] with \the [C].", "<span class='notice'>You scoop out some plasma from the [src] using \the [C].</span>")
|
||||||
|
|
||||||
/turf/open/lava/plasma/burn_stuff(AM)
|
/turf/open/lava/plasma/burn_stuff(AM)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
/datum/bounty/reagent/applies_to(obj/O)
|
/datum/bounty/reagent/applies_to(obj/O)
|
||||||
if(!istype(O, /obj/item/reagent_containers))
|
if(!istype(O, /obj/item/reagent_containers))
|
||||||
return FALSE
|
return FALSE
|
||||||
if(!O.reagents || !O.reagents.has_reagent(wanted_reagent.id))
|
if(!O.reagents || !O.reagents.has_reagent(wanted_reagent.type))
|
||||||
return FALSE
|
return FALSE
|
||||||
if(O.flags_1 & HOLOGRAM_1)
|
if(O.flags_1 & HOLOGRAM_1)
|
||||||
return FALSE
|
return FALSE
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
/datum/bounty/reagent/ship(obj/O)
|
/datum/bounty/reagent/ship(obj/O)
|
||||||
if(!applies_to(O))
|
if(!applies_to(O))
|
||||||
return
|
return
|
||||||
shipped_volume += O.reagents.get_reagent_amount(wanted_reagent.id)
|
shipped_volume += O.reagents.get_reagent_amount(wanted_reagent.type)
|
||||||
if(shipped_volume > required_volume)
|
if(shipped_volume > required_volume)
|
||||||
shipped_volume = required_volume
|
shipped_volume = required_volume
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
if(!istype(other_bounty, /datum/bounty/reagent))
|
if(!istype(other_bounty, /datum/bounty/reagent))
|
||||||
return TRUE
|
return TRUE
|
||||||
var/datum/bounty/reagent/R = other_bounty
|
var/datum/bounty/reagent/R = other_bounty
|
||||||
return wanted_reagent.id != R.wanted_reagent.id
|
return wanted_reagent.type != R.wanted_reagent.type
|
||||||
|
|
||||||
/datum/bounty/reagent/simple_drink
|
/datum/bounty/reagent/simple_drink
|
||||||
name = "Simple Drink"
|
name = "Simple Drink"
|
||||||
|
|||||||
@@ -81,7 +81,7 @@
|
|||||||
/obj/item/reagent_containers/food/snacks/clothing
|
/obj/item/reagent_containers/food/snacks/clothing
|
||||||
name = "oops"
|
name = "oops"
|
||||||
desc = "If you're reading this it means I messed up. This is related to moths eating clothes and I didn't know a better way to do it than making a new food object."
|
desc = "If you're reading this it means I messed up. This is related to moths eating clothes and I didn't know a better way to do it than making a new food object."
|
||||||
list_reagents = list("nutriment" = 1)
|
list_reagents = list(/datum/reagent/consumable/nutriment = 1)
|
||||||
tastes = list("dust" = 1, "lint" = 1)
|
tastes = list("dust" = 1, "lint" = 1)
|
||||||
|
|
||||||
/obj/item/clothing/attack(mob/M, mob/user, def_zone)
|
/obj/item/clothing/attack(mob/M, mob/user, def_zone)
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
/obj/item/clothing/glasses/phantomthief/syndicate/proc/injectadrenaline(mob/user, combatmodestate)
|
/obj/item/clothing/glasses/phantomthief/syndicate/proc/injectadrenaline(mob/user, combatmodestate)
|
||||||
if(istype(user) && combatmodestate && world.time >= nextadrenalinepop)
|
if(istype(user) && combatmodestate && world.time >= nextadrenalinepop)
|
||||||
nextadrenalinepop = world.time + 5 MINUTES
|
nextadrenalinepop = world.time + 5 MINUTES
|
||||||
user.reagents.add_reagent("syndicateadrenals", 5)
|
user.reagents.add_reagent(/datum/reagent/syndicateadrenals, 5)
|
||||||
user.playsound_local(user, 'sound/misc/adrenalinject.ogg', 100, 0, pressure_affected = FALSE)
|
user.playsound_local(user, 'sound/misc/adrenalinject.ogg', 100, 0, pressure_affected = FALSE)
|
||||||
|
|
||||||
/obj/item/clothing/glasses/phantomthief/syndicate/equipped(mob/user, slot)
|
/obj/item/clothing/glasses/phantomthief/syndicate/equipped(mob/user, slot)
|
||||||
|
|||||||
@@ -53,7 +53,7 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
var/obj/item/reagent_containers/glass/bucket/bucket = H.get_item_for_held_index(1)
|
var/obj/item/reagent_containers/glass/bucket/bucket = H.get_item_for_held_index(1)
|
||||||
bucket.reagents.add_reagent("water",70)
|
bucket.reagents.add_reagent(/datum/reagent/water,70)
|
||||||
|
|
||||||
/datum/outfit/laser_tag
|
/datum/outfit/laser_tag
|
||||||
name = "Laser Tag Red"
|
name = "Laser Tag Red"
|
||||||
|
|||||||
@@ -157,7 +157,7 @@
|
|||||||
icon = 'icons/obj/holiday_misc.dmi'
|
icon = 'icons/obj/holiday_misc.dmi'
|
||||||
icon_state = "candyheart"
|
icon_state = "candyheart"
|
||||||
desc = "A heart-shaped candy that reads: "
|
desc = "A heart-shaped candy that reads: "
|
||||||
list_reagents = list("sugar" = 2)
|
list_reagents = list(/datum/reagent/consumable/sugar = 2)
|
||||||
junkiness = 5
|
junkiness = 5
|
||||||
|
|
||||||
/obj/item/reagent_containers/food/snacks/candyheart/New()
|
/obj/item/reagent_containers/food/snacks/candyheart/New()
|
||||||
|
|||||||
@@ -15,48 +15,46 @@
|
|||||||
var/randomProbability = 1
|
var/randomProbability = 1
|
||||||
var/reagentsAmount = 100
|
var/reagentsAmount = 100
|
||||||
var/list/saferChems = list(
|
var/list/saferChems = list(
|
||||||
"water",
|
/datum/reagent/water,
|
||||||
"carbon",
|
/datum/reagent/carbon,
|
||||||
"flour",
|
/datum/reagent/consumable/flour,
|
||||||
"cleaner",
|
/datum/reagent/space_cleaner,
|
||||||
"nutriment",
|
/datum/reagent/consumable/nutriment,
|
||||||
"condensedcapsaicin",
|
/datum/reagent/consumable/condensedcapsaicin,
|
||||||
"mushroomhallucinogen",
|
/datum/reagent/drug/mushroomhallucinogen,
|
||||||
"lube",
|
/datum/reagent/lube,
|
||||||
"pink_glitter",
|
/datum/reagent/glitter/pink,
|
||||||
"cryptobiolin",
|
/datum/reagent/cryptobiolin,
|
||||||
"plantbgone",
|
/datum/reagent/toxin/plantbgone,
|
||||||
"blood",
|
/datum/reagent/blood,
|
||||||
"charcoal",
|
/datum/reagent/medicine/charcoal,
|
||||||
"space_drugs",
|
/datum/reagent/drug/space_drugs,
|
||||||
"morphine",
|
/datum/reagent/medicine/morphine,
|
||||||
"holywater",
|
/datum/reagent/water/holywater,
|
||||||
"ethanol",
|
/datum/reagent/consumable/ethanol,
|
||||||
"hot_coco",
|
/datum/reagent/consumable/hot_coco,
|
||||||
"sacid",
|
/datum/reagent/toxin/acid,
|
||||||
"mindbreaker",
|
/datum/reagent/toxin/mindbreaker,
|
||||||
"rotatium",
|
/datum/reagent/toxin/rotatium,
|
||||||
"bluespace",
|
/datum/reagent/bluespace,
|
||||||
"pax",
|
/datum/reagent/pax,
|
||||||
"laughter",
|
/datum/reagent/consumable/laughter,
|
||||||
"concentrated_barbers_aid",
|
/datum/reagent/concentrated_barbers_aid,
|
||||||
"colorful_reagent",
|
/datum/reagent/colorful_reagent,
|
||||||
"dizzysolution",
|
/datum/reagent/peaceborg_confuse,
|
||||||
"tiresolution",
|
/datum/reagent/peaceborg_tire,
|
||||||
"sodiumchloride",
|
/datum/reagent/consumable/sodiumchloride,
|
||||||
"beer",
|
/datum/reagent/consumable/ethanol/beer,
|
||||||
"hair_dye",
|
/datum/reagent/hair_dye,
|
||||||
"sugar",
|
/datum/reagent/consumable/sugar,
|
||||||
"white_glitter",
|
/datum/reagent/glitter/white,
|
||||||
"growthserum",
|
/datum/reagent/growthserum,
|
||||||
"cornoil",
|
/datum/reagent/consumable/cornoil,
|
||||||
"uranium",
|
/datum/reagent/uranium,
|
||||||
"carpet",
|
/datum/reagent/carpet,
|
||||||
"firefighting_foam",
|
/datum/reagent/firefighting_foam,
|
||||||
"semen",
|
/datum/reagent/consumable/tearjuice,
|
||||||
"femcum",
|
/datum/reagent/medicine/strange_reagent
|
||||||
"tearjuice",
|
|
||||||
"strange_reagent"
|
|
||||||
|
|
||||||
)
|
)
|
||||||
//needs to be chemid unit checked at some point
|
//needs to be chemid unit checked at some point
|
||||||
@@ -165,7 +163,7 @@
|
|||||||
if(vent && vent.loc && !vent.welded)
|
if(vent && vent.loc && !vent.welded)
|
||||||
var/datum/reagents/R = new/datum/reagents(1000)
|
var/datum/reagents/R = new/datum/reagents(1000)
|
||||||
R.my_atom = vent
|
R.my_atom = vent
|
||||||
R.add_reagent("beer", reagentsAmount)
|
R.add_reagent(/datum/reagent/consumable/ethanol/beer, reagentsAmount)
|
||||||
|
|
||||||
var/datum/effect_system/foam_spread/foam = new
|
var/datum/effect_system/foam_spread/foam = new
|
||||||
foam.set_up(200, get_turf(vent), R)
|
foam.set_up(200, get_turf(vent), R)
|
||||||
@@ -180,7 +178,7 @@
|
|||||||
if(vent && vent.loc && !vent.welded)
|
if(vent && vent.loc && !vent.welded)
|
||||||
var/datum/reagents/R = new/datum/reagents(1000)
|
var/datum/reagents/R = new/datum/reagents(1000)
|
||||||
R.my_atom = vent
|
R.my_atom = vent
|
||||||
R.add_reagent("semen", reagentsAmount)
|
R.add_reagent(/datum/reagent/consumable/semen, reagentsAmount)
|
||||||
|
|
||||||
var/datum/effect_system/foam_spread/foam = new
|
var/datum/effect_system/foam_spread/foam = new
|
||||||
foam.set_up(200, get_turf(vent), R)
|
foam.set_up(200, get_turf(vent), R)
|
||||||
@@ -195,7 +193,7 @@
|
|||||||
if(vent && vent.loc && !vent.welded)
|
if(vent && vent.loc && !vent.welded)
|
||||||
var/datum/reagents/R = new/datum/reagents(1000)
|
var/datum/reagents/R = new/datum/reagents(1000)
|
||||||
R.my_atom = vent
|
R.my_atom = vent
|
||||||
R.add_reagent("femcum", reagentsAmount)
|
R.add_reagent(/datum/reagent/consumable/femcum, reagentsAmount)
|
||||||
|
|
||||||
var/datum/effect_system/foam_spread/foam = new
|
var/datum/effect_system/foam_spread/foam = new
|
||||||
foam.set_up(200, get_turf(vent), R)
|
foam.set_up(200, get_turf(vent), R)
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user