This commit is contained in:
Arkatos1
2019-08-12 16:36:43 +02:00
403 changed files with 14978 additions and 3882 deletions
@@ -282,7 +282,7 @@
var/amount_per_pill = reagents.total_volume / count
if(amount_per_pill > 100)
amount_per_pill = 100
var/name = input(usr,"Name:","Name your pill!","[reagents.get_master_reagent_name()] ([amount_per_pill]u)") as text|null
var/name = clean_input("Name:","Name your pill!","[reagents.get_master_reagent_name()] ([amount_per_pill]u)")
if(!name)
return
name = reject_bad_text(name)
@@ -303,7 +303,7 @@
P.forceMove(loaded_pill_bottle)
updateUsrDialog()
else
var/name = input(usr, "Name:", "Name your bag!", reagents.get_master_reagent_name()) as text|null
var/name = clean_input("Name:", "Name your bag!", reagents.get_master_reagent_name())
if(!name)
return
name = reject_bad_text(name)
@@ -328,7 +328,7 @@
var/amount_per_patch = reagents.total_volume/count
if(amount_per_patch > 40)
amount_per_patch = 40
var/name = input(usr, "Name:", "Name your patch!", "[reagents.get_master_reagent_name()] ([amount_per_patch]u)") as text|null
var/name = clean_input("Name:", "Name your patch!", "[reagents.get_master_reagent_name()] ([amount_per_patch]u)")
if(!name)
return
name = reject_bad_text(name)
@@ -350,7 +350,7 @@
else if(href_list["createbottle"])
if(!condi)
var/name = input(usr, "Name:", "Name your bottle!", reagents.get_master_reagent_name()) as text|null
var/name = clean_input("Name:", "Name your bottle!", reagents.get_master_reagent_name())
if(!name)
return
name = reject_bad_text(name)
@@ -135,12 +135,11 @@
return
else if(href_list["empty_beaker"])
beaker.reagents.clear_reagents()
eject_beaker()
updateUsrDialog()
return
else if(href_list["eject"])
beaker:loc = loc
beaker = null
icon_state = "mixer0"
eject_beaker()
updateUsrDialog()
return
else if(href_list["clear"])
@@ -173,6 +172,11 @@
add_fingerprint(usr)
/obj/machinery/computer/pandemic/proc/eject_beaker()
beaker.forceMove(loc)
beaker = null
icon_state = "mixer0"
//Prints a nice virus release form. Props to Urbanliner for the layout
/obj/machinery/computer/pandemic/proc/print_form(var/datum/disease/advance/D, mob/living/user)
D = archive_diseases[D.GetDiseaseID()]
@@ -308,7 +312,7 @@
dat += "nothing<BR>"
else
dat += "nothing<BR>"
dat += "<BR><A href='?src=[UID()];eject=1'>Eject beaker</A>[((R.total_volume&&R.reagent_list.len) ? "-- <A href='?src=[UID()];empty_beaker=1'>Empty beaker</A>":"")]<BR>"
dat += "<BR><A href='?src=[UID()];eject=1'>Eject beaker</A>[((R.total_volume&&R.reagent_list.len) ? "-- <A href='?src=[UID()];empty_beaker=1'>Empty and eject beaker</A>":"")]<BR>"
dat += "<A href='?src=[user.UID()];mach_close=pandemic'>Close</A>"
var/datum/browser/popup = new(user, "pandemic", name, 575, 400)
@@ -115,6 +115,24 @@
update_flags |= M.adjustToxLoss(1, FALSE)
return list(0, update_flags)
/datum/reagent/consumable/ethanol/hooch
name = "Hooch"
id = "hooch"
description = "Either someone's failure at cocktail making or attempt in alcohol production. In any case, do you really want to drink that?"
color = "#664300" // rgb: 102, 67, 0
dizzy_adj = 7
alcohol_perc = 1
drink_icon = "glass_brown2"
drink_name = "Hooch"
drink_desc = "You've really hit rock bottom now... your liver packed its bags and left last night."
taste_message = "pure resignation"
/datum/reagent/consumable/ethanol/hooch/on_mob_life(mob/living/carbon/M)
if(M.mind && M.mind.assigned_role == "Assistant")
M.heal_organ_damage(1, 1)
. = 1
return ..() || .
/datum/reagent/consumable/ethanol/rum
name = "Rum"
id = "rum"
@@ -1361,3 +1379,15 @@
taste_message = flavor
if(holder.my_atom)
holder.my_atom.on_reagent_change()
/datum/reagent/consumable/ethanol/bacchus_blessing //An EXTREMELY powerful drink. Smashed in seconds, dead in minutes.
name = "Bacchus' Blessing"
id = "bacchus_blessing"
description = "Unidentifiable mixture. Unmeasurably high alcohol content."
color = rgb(51, 19, 3) //Sickly brown
dizzy_adj = 21
alcohol_perc = 3 //I warned you
drink_icon = "glass_brown2"
drink_name = "Bacchus' Blessing"
drink_desc = "You didn't think it was possible for a liquid to be so utterly revolting. Are you sure about this...?"
taste_message = "a wall of bricks"
@@ -290,6 +290,11 @@
addiction_chance = 5
taste_message = "health"
/datum/reagent/medicine/omnizine/godblood
name = "Godblood"
description = "Slowly heals all damage types. Has a rather high overdose threshold. Glows with mysterious power."
overdose_threshold = 150
/datum/reagent/medicine/omnizine/on_mob_life(mob/living/M)
var/update_flags = STATUS_UPDATE_NONE
update_flags |= M.adjustToxLoss(-1*REAGENTS_EFFECT_MULTIPLIER, FALSE)
@@ -457,6 +457,7 @@
C.AdjustDizzy(volume)
C.AddComponent(/datum/component/jestosterone, mind_type)
C.AddComponent(/datum/component/squeak, null, null, null, null, null, TRUE)
C.AddComponent(/datum/component/waddling)
/datum/reagent/jestosterone/on_mob_life(mob/living/carbon/M)
if(!istype(M))
@@ -493,8 +494,10 @@
..()
GET_COMPONENT_FROM(remove_fun, /datum/component/jestosterone, M)
GET_COMPONENT_FROM(squeaking, /datum/component/squeak, M)
GET_COMPONENT_FROM(waddling, /datum/component/waddling, M)
remove_fun.Destroy()
squeaking.Destroy()
waddling.Destroy()
/datum/reagent/royal_bee_jelly
name = "royal bee jelly"
@@ -1174,3 +1174,14 @@
M.electrocute_act(rand(5, 20), "Teslium in their body", 1, TRUE) //Override because it's caused from INSIDE of you
playsound(M, "sparks", 50, 1)
return ..()
/datum/reagent/gluttonytoxin
name = "Gluttony's Blessing"
id = "gluttonytoxin"
description = "An advanced corruptive toxin produced by something terrible."
reagent_state = LIQUID
color = "#5EFF3B" //RGB: 94, 255, 59
taste_message = "decay"
/datum/reagent/gluttonytoxin/reaction_mob(mob/living/L, method=TOUCH, reac_volume)
L.ForceContractDisease(new /datum/disease/transformation/morph())
@@ -851,4 +851,20 @@
required_reagents = list("rum" = 5, "cream" = 5, "egg" = 5)
result_amount = 15
mix_message = "The eggs nog together. Pretend that \"nog\" is a verb."
mix_sound = 'sound/goonstation/misc/drinkfizz.ogg'
mix_sound = 'sound/goonstation/misc/drinkfizz.ogg'
/datum/chemical_reaction/hooch
name = "Hooch"
id = "hooch"
result = "hooch"
required_reagents = list("ethanol" = 2, "fuel" = 1)
result_amount = 3
required_catalysts = list("enzyme" = 1)
/datum/chemical_reaction/bacchus_blessing
name = "Bacchus' Blessing"
id = "bacchus_blessing"
result = "bacchus_blessing"
required_reagents = list("hooch" = 1, "absinthe" = 1, "manlydorf" = 1, "syndicatebomb" = 1)
result_amount = 4
mix_message = "<span class='warning'>The mixture turns to a sickening froth.</span>"
@@ -73,7 +73,7 @@
if(user.a_intent == INTENT_HARM)
M.visible_message("<span class='danger'>[user] splashes the contents of [src] onto [M]!</span>", \
"<span class='userdanger'>[user] splashes the contents of [src] onto [M]!</span>")
add_attack_logs(M, user, "Splashed with [name] containing [contained]", !!M.ckey ? null : ATKLOG_ALL)
add_attack_logs(user, M, "Splashed with [name] containing [contained]", !!M.ckey ? null : ATKLOG_ALL)
if(!iscarbon(user))
M.LAssailant = null
else
@@ -90,11 +90,12 @@
if(!reagents || !reagents.total_volume)
return // The drink might be empty after the delay, such as by spam-feeding
M.visible_message("<span class='danger'>[user] feeds something to [M].</span>", "<span class='userdanger'>[user] feeds something to you.</span>")
add_attack_logs(M, user, "Fed with [name] containing [contained]", !!M.ckey ? null : ATKLOG_ALL)
add_attack_logs(user, M, "Fed with [name] containing [contained]", !!M.ckey ? null : ATKLOG_ALL)
else
to_chat(user, "<span class='notice'>You swallow a gulp of [src].</span>")
reagents.reaction(M, INGEST)
var/fraction = min(5 / reagents.total_volume, 1)
reagents.reaction(M, INGEST, fraction)
addtimer(CALLBACK(reagents, /datum/reagents.proc/trans_to, M, 5), 5)
playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1)
else
@@ -246,9 +247,9 @@
if(assembly)
assembly.HasProximity(AM)
/obj/item/reagent_containers/glass/beaker/Crossed(atom/movable/AM)
/obj/item/reagent_containers/glass/beaker/Crossed(atom/movable/AM, oldloc)
if(assembly)
assembly.Crossed(AM)
assembly.Crossed(AM, oldloc)
/obj/item/reagent_containers/glass/beaker/on_found(mob/finder) //for mousetraps
if(assembly)
@@ -289,12 +289,6 @@
icon_state = "[rounded_vol]"
item_state = "syringe_[rounded_vol]"
////////////////////////////////////////////////////////////////////////////////
/// Syringes. END
////////////////////////////////////////////////////////////////////////////////
/obj/item/reagent_containers/syringe/antiviral
name = "Syringe (spaceacillin)"
desc = "Contains antiviral agents."
@@ -327,3 +321,10 @@
name = "bioterror syringe"
desc = "Contains several paralyzing reagents."
list_reagents = list("neurotoxin" = 5, "capulettium_plus" = 5, "sodium_thiopental" = 5)
/obj/item/reagent_containers/syringe/gluttony
name = "Gluttony's Blessing"
desc = "A syringe recovered from a dread place. It probably isn't wise to use."
amount_per_transfer_from_this = 1
volume = 1
list_reagents = list("gluttonytoxin" = 1)
+3 -2
View File
@@ -187,9 +187,9 @@
if(rig)
rig.HasProximity(AM)
/obj/structure/reagent_dispensers/fueltank/Crossed(atom/movable/AM)
/obj/structure/reagent_dispensers/fueltank/Crossed(atom/movable/AM, oldloc)
if(rig)
rig.Crossed(AM)
rig.Crossed(AM, oldloc)
/obj/structure/reagent_dispensers/fueltank/hear_talk(mob/living/M, list/message_pieces)
if(rig)
@@ -220,6 +220,7 @@
icon_state = "water_cooler"
anchored = 1
tank_volume = 500
reagent_id = "water"
var/paper_cups = 25 //Paper cups left from the cooler
/obj/structure/reagent_dispensers/water_cooler/examine(mob/user)