From 059df7ef65c8c158ab7de01a36f2fec2759c279d Mon Sep 17 00:00:00 2001 From: "giacomand@gmail.com" Date: Tue, 31 Jul 2012 20:38:06 +0000 Subject: [PATCH] -Renamed "acid" to "sacid" -Sorted the dispensable chemicals list alphabetically. -Made the chemical dispenser use process() instead of calling itself in a spawn() -Made the receiver and broadcaster easier to build (less parts) git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4256 316c924e-a436-60f5-8080-3fe189b3f50e --- code/defines/obj/hydro.dm | 2 +- code/game/machinery/constructable_frame.dm | 12 +- code/game/machinery/hydroponics.dm | 6 +- code/game/objects/grenades/chem_grenade.dm | 2 +- code/modules/chemical/Chemistry-Machinery.dm | 1075 +++++++++--------- code/modules/chemical/Chemistry-Reagents.dm | 12 +- code/modules/chemical/Chemistry-Recipes.dm | 20 +- code/modules/chemical/Chemistry-Tools.dm | 2 +- code/modules/research/designs.dm | 154 +-- 9 files changed, 647 insertions(+), 638 deletions(-) diff --git a/code/defines/obj/hydro.dm b/code/defines/obj/hydro.dm index 1e812fc0aa6..bb53686d280 100644 --- a/code/defines/obj/hydro.dm +++ b/code/defines/obj/hydro.dm @@ -1822,7 +1822,7 @@ New() ..() reagents.add_reagent("nutriment", 1+round((potency / 50), 1)) - reagents.add_reagent("acid", round(potency, 1)) + reagents.add_reagent("sacid", round(potency, 1)) force = round((5+potency/5), 1) /obj/item/weapon/grown/deathnettle // -- Skie diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index afa5664e6d4..cf79c1ee9c8 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -244,12 +244,12 @@ obj/item/weapon/circuitboard/rdserver build_path = "/obj/machinery/telecomms/receiver" board_type = "machine" origin_tech = "programming=4;engineering=3;bluespace=2" - frame_desc = "Requires 1 Subspace Ansible, 1 Hyperwave Filter, 2 Manipulators, and 1 Advanced Scanning Module." + frame_desc = "Requires 1 Subspace Ansible, 1 Hyperwave Filter, 2 Manipulators, and 1 Micro-Laser." req_components = list( "/obj/item/weapon/stock_parts/subspace/ansible" = 1, "/obj/item/weapon/stock_parts/subspace/filter" = 1, "/obj/item/weapon/stock_parts/manipulator" = 2, - "/obj/item/weapon/stock_parts/scanning_module/adv" = 1) + "/obj/item/weapon/stock_parts/micro_laser" = 1) /obj/item/weapon/circuitboard/telecomms/hub name = "Circuit Board (Hub Mainframe)" @@ -267,11 +267,11 @@ obj/item/weapon/circuitboard/rdserver build_path = "/obj/machinery/telecomms/relay" board_type = "machine" origin_tech = "programming=3;engineering=4;bluespace=3" - frame_desc = "Requires 2 Manipulators, 2 Cable Coil and 2 Subspace Amplifier." + frame_desc = "Requires 2 Manipulators, 2 Cable Coil and 2 Hyperwave Filters." req_components = list( "/obj/item/weapon/stock_parts/manipulator" = 2, "/obj/item/weapon/cable_coil" = 2, - "/obj/item/weapon/stock_parts/subspace/amplifier" = 2) + "/obj/item/weapon/stock_parts/subspace/filter" = 2) /obj/item/weapon/circuitboard/telecomms/bus name = "Circuit Board (Bus Mainframe)" @@ -314,14 +314,12 @@ obj/item/weapon/circuitboard/rdserver build_path = "/obj/machinery/telecomms/broadcaster" board_type = "machine" origin_tech = "programming=4;engineering=4;bluespace=2" - frame_desc = "Requires 2 Manipulators, 1 Cable Coil, 1 Hyperwave Filter, 1 Ansible Crystal, 1 Subspace Transmitter, 1 Subspace Amplifier and 2 High-Powered Micro-Lasers. " + frame_desc = "Requires 2 Manipulators, 1 Cable Coil, 1 Hyperwave Filter, 1 Ansible Crystal and 2 High-Powered Micro-Lasers. " req_components = list( "/obj/item/weapon/stock_parts/manipulator" = 2, "/obj/item/weapon/cable_coil" = 1, "/obj/item/weapon/stock_parts/subspace/filter" = 1, "/obj/item/weapon/stock_parts/subspace/crystal" = 1, - "/obj/item/weapon/stock_parts/subspace/transmitter" = 1, - "/obj/item/weapon/stock_parts/subspace/amplifier" = 1, "/obj/item/weapon/stock_parts/micro_laser/high" = 2) diff --git a/code/game/machinery/hydroponics.dm b/code/game/machinery/hydroponics.dm index ab4c2038cab..6ca5c9d626f 100644 --- a/code/game/machinery/hydroponics.dm +++ b/code/game/machinery/hydroponics.dm @@ -555,9 +555,9 @@ obj/machinery/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob) src.nutrilevel += round(S.reagents.get_reagent_amount("sodawater")*0.1) // Man, you guys are retards - if(S.reagents.has_reagent("acid", 1)) - src.health -= round(S.reagents.get_reagent_amount("acid")*1) - src.toxic += round(S.reagents.get_reagent_amount("acid")*1.5) + if(S.reagents.has_reagent("sacid", 1)) + src.health -= round(S.reagents.get_reagent_amount("sacid")*1) + src.toxic += round(S.reagents.get_reagent_amount("sacid")*1.5) src.weedlevel -= rand(1,2) // SERIOUSLY diff --git a/code/game/objects/grenades/chem_grenade.dm b/code/game/objects/grenades/chem_grenade.dm index 7fbda2b62da..571711028e7 100644 --- a/code/game/objects/grenades/chem_grenade.dm +++ b/code/game/objects/grenades/chem_grenade.dm @@ -253,7 +253,7 @@ B1.reagents.add_reagent("aluminum", 25) B2.reagents.add_reagent("plasma", 25) - B2.reagents.add_reagent("acid", 25) + B2.reagents.add_reagent("sacid", 25) beakers += B1 beakers += B2 diff --git a/code/modules/chemical/Chemistry-Machinery.dm b/code/modules/chemical/Chemistry-Machinery.dm index b72a2111aaa..fabbb949af9 100644 --- a/code/modules/chemical/Chemistry-Machinery.dm +++ b/code/modules/chemical/Chemistry-Machinery.dm @@ -2,7 +2,7 @@ #define LIQUID 2 #define GAS 3 -/obj/machinery/chem_dispenser/ +/obj/machinery/chem_dispenser name = "chem dispenser" density = 1 anchored = 1 @@ -14,155 +14,166 @@ var/max_energy = 75 var/amount = 30 var/beaker = null - var/list/dispensable_reagents = list("hydrogen","lithium","carbon","nitrogen","oxygen","fluorine","sodium","aluminum","silicon","phosphorus","sulfur","chlorine","potassium","iron","copper","mercury","radium","water","ethanol","sugar","acid",) - proc + var/recharged = 0 + var/list/dispensable_reagents = list("hydrogen","lithium","carbon","nitrogen","oxygen","fluorine", + "sodium","aluminum","silicon","phosphorus","sulfur","chlorine","potassium","iron", + "copper","mercury","radium","water","ethanol","sugar","sacid") + +/obj/machinery/chem_dispenser/proc/recharge() + if(stat & (BROKEN|NOPOWER)) return + var/addenergy = 2 + var/oldenergy = energy + energy = min(energy + addenergy, max_energy) + if(energy != oldenergy) + use_power(2000) // This thing uses up alot of power (this is still low as shit for creating reagents from thin air) + +/obj/machinery/chem_dispenser/power_change() + if(powered()) + stat &= ~NOPOWER + else + spawn(rand(0, 15)) + stat |= NOPOWER + +/obj/machinery/chem_dispenser/process() + + if(recharged < 0) recharge() - if(stat & BROKEN) return - var/addenergy = 4 - if(energy + addenergy > energy) - addenergy = energy - addenergy - if(energy < max_energy) - energy += addenergy - use_power(2000) // This thing uses up alot of power (this is still low as shit for creating reagents from thin air) - spawn(200) recharge() + recharged = 20 + else + recharged -= 1 - power_change() - if(powered()) - stat &= ~NOPOWER - else - spawn(rand(0, 15)) - stat |= NOPOWER +/obj/machinery/chem_dispenser/New() + ..() + recharge() + dispensable_reagents = sortList(dispensable_reagents) - New() - recharge() - - ex_act(severity) - switch(severity) - if(1.0) +/obj/machinery/chem_dispenser/ex_act(severity) + switch(severity) + if(1.0) + del(src) + return + if(2.0) + if (prob(50)) del(src) return - if(2.0) - if (prob(50)) - del(src) - return - blob_act() - if (prob(50)) - del(src) - - meteorhit() +/obj/machinery/chem_dispenser/blob_act() + if (prob(50)) del(src) + +/obj/machinery/chem_dispenser/meteorhit() + del(src) + return + +/obj/machinery/chem_dispenser/proc/updateWindow(mob/user as mob) + winset(user, "chemdispenser.energy", "text=\"Energy: [src.energy]\"") + winset(user, "chemdispenser.amount", "text=\"Amount: [src.amount]\"") + if (beaker) + winset(user, "chemdispenser.eject", "text=\"Eject beaker\"") + else + winset(user, "chemdispenser.eject", "text=\"\[Insert beaker\]\"") +/obj/machinery/chem_dispenser/proc/initWindow(mob/user as mob) + var/i = 0 + var list/nameparams = params2list(winget(user, "chemdispenser_reagents.template_name", "pos;size;type;image;image-mode")) + var list/buttonparams = params2list(winget(user, "chemdispenser_reagents.template_dispense", "pos;size;type;image;image-mode;text;is-flat")) + for(var/re in dispensable_reagents) + for(var/da in typesof(/datum/reagent) - /datum/reagent) + var/datum/reagent/temp = new da() + if(temp.id == re) + var list/newparams1 = nameparams.Copy() + var list/newparams2 = buttonparams.Copy() + var/posy = 8 + 40 * i + newparams1["pos"] = text("8,[posy]") + newparams2["pos"] = text("248,[posy]") + newparams1["parent"] = "chemdispenser_reagents" + newparams2["parent"] = "chemdispenser_reagents" + newparams1["text"] = temp.name + newparams2["command"] = text("skincmd \"chemdispenser;[temp.id]\"") + winset(user, "chemdispenser_reagent_name[i]", list2params(newparams1)) + winset(user, "chemdispenser_reagent_dispense[i]", list2params(newparams2)) + i++ + winset(user, "chemdispenser_reagents", "size=340x[8 + 40 * i]") + +/obj/machinery/chem_dispenser/SkinCmd(mob/user as mob, var/data as text) + if(stat & (BROKEN|NOPOWER)) return + if(usr.stat || usr.restrained()) return + if(!in_range(src, usr)) return + + usr.machine = src + + if (data == "amountc") + var/num = input("Enter desired output amount", "Amount", "30") as num + if (num) + amount = text2num(num) + else if (data == "eject") + if (src.beaker) + var/obj/item/weapon/reagent_containers/glass/B = src.beaker + B.loc = src.loc + src.beaker = null + else if (copytext(data, 1, 7) == "amount") + if (text2num(copytext(data, 7))) + amount = text2num(copytext(data, 7)) + else + if (dispensable_reagents.Find(data) && beaker != null) + var/obj/item/weapon/reagent_containers/glass/B = src.beaker + var/datum/reagents/R = B.reagents + var/space = R.maximum_volume - R.total_volume + R.add_reagent(data, min(amount, energy * 10, space)) + energy = max(energy - min(amount, space) / 10, 0) + + amount = round(amount, 10) // Chem dispenser doesnt really have that much prescion + if (amount < 0) // Since the user can actually type the commands himself, some sanity checking + amount = 0 + if (amount > 100) + amount = 100 + + for(var/mob/player) + if (player.machine == src && player.client) + updateWindow(player) + + src.add_fingerprint(usr) + return + +/obj/machinery/chem_dispenser/attackby(var/obj/item/weapon/reagent_containers/glass/B as obj, var/mob/user as mob) + if(isrobot(user)) return - proc/updateWindow(mob/user as mob) - winset(user, "chemdispenser.energy", "text=\"Energy: [src.energy]\"") - winset(user, "chemdispenser.amount", "text=\"Amount: [src.amount]\"") - if (beaker) - winset(user, "chemdispenser.eject", "text=\"Eject beaker\"") - else - winset(user, "chemdispenser.eject", "text=\"\[Insert beaker\]\"") - proc/initWindow(mob/user as mob) - var/i = 0 - var list/nameparams = params2list(winget(user, "chemdispenser_reagents.template_name", "pos;size;type;image;image-mode")) - var list/buttonparams = params2list(winget(user, "chemdispenser_reagents.template_dispense", "pos;size;type;image;image-mode;text;is-flat")) - for(var/re in dispensable_reagents) - for(var/da in typesof(/datum/reagent) - /datum/reagent) - var/datum/reagent/temp = new da() - if(temp.id == re) - var list/newparams1 = nameparams.Copy() - var list/newparams2 = buttonparams.Copy() - var/posy = 8 + 40 * i - newparams1["pos"] = text("8,[posy]") - newparams2["pos"] = text("248,[posy]") - newparams1["parent"] = "chemdispenser_reagents" - newparams2["parent"] = "chemdispenser_reagents" - newparams1["text"] = temp.name - newparams2["command"] = text("skincmd \"chemdispenser;[temp.id]\"") - winset(user, "chemdispenser_reagent_name[i]", list2params(newparams1)) - winset(user, "chemdispenser_reagent_dispense[i]", list2params(newparams2)) - i++ - winset(user, "chemdispenser_reagents", "size=340x[8 + 40 * i]") - - SkinCmd(mob/user as mob, var/data as text) - if(stat & (BROKEN|NOPOWER)) return - if(usr.stat || usr.restrained()) return - if(!in_range(src, usr)) return - - usr.machine = src - - if (data == "amountc") - var/num = text2num(input("Enter desired output amount", "Amount", "30")) - if (num) - amount = text2num(num) - else if (data == "eject") - if (src.beaker) - var/obj/item/weapon/reagent_containers/glass/B = src.beaker - B.loc = src.loc - src.beaker = null - else if (copytext(data, 1, 7) == "amount") - if (text2num(copytext(data, 7))) - amount = text2num(copytext(data, 7)) - else - if (dispensable_reagents.Find(data) && beaker != null) - var/obj/item/weapon/reagent_containers/glass/B = src.beaker - var/datum/reagents/R = B.reagents - var/space = R.maximum_volume - R.total_volume - R.add_reagent(data, min(amount, energy * 10, space)) - energy = max(energy - min(amount, space) / 10, 0) - - amount = round(amount, 10) // Chem dispenser doesnt really have that much prescion - if (amount < 0) // Since the user can actually type the commands himself, some sanity checking - amount = 0 - if (amount > 100) - amount = 100 - - for(var/mob/player) - if (player.machine == src && player.client) - updateWindow(player) - - src.add_fingerprint(usr) + if(!istype(B, /obj/item/weapon/reagent_containers/glass)) return - attackby(var/obj/item/weapon/reagent_containers/glass/B as obj, var/mob/user as mob) - if(isrobot(user)) - return - - if(!istype(B, /obj/item/weapon/reagent_containers/glass)) - return - - if(src.beaker) - user << "A beaker is already loaded into the machine." - return - - src.beaker = B - user.drop_item() - B.loc = src - user << "You add the beaker to the machine!" - for(var/mob/player) - if (player.machine == src && player.client) - updateWindow(player) - - attack_ai(mob/user as mob) - return src.attack_hand(user) - - attack_paw(mob/user as mob) - return src.attack_hand(user) - - attack_hand(mob/user as mob) - if(stat & BROKEN) - return - user.machine = src - - initWindow(user) - updateWindow(user) - winshow(user, "chemdispenser", 1) - user.skincmds["chemdispenser"] = src + if(src.beaker) + user << "A beaker is already loaded into the machine." return + src.beaker = B + user.drop_item() + B.loc = src + user << "You add the beaker to the machine!" + for(var/mob/player) + if (player.machine == src && player.client) + updateWindow(player) + +/obj/machinery/chem_dispenser/attack_ai(mob/user as mob) + return src.attack_hand(user) + +/obj/machinery/chem_dispenser/attack_paw(mob/user as mob) + return src.attack_hand(user) + +/obj/machinery/chem_dispenser/attack_hand(mob/user as mob) + if(stat & BROKEN) + return + user.machine = src + + initWindow(user) + updateWindow(user) + winshow(user, "chemdispenser", 1) + user.skincmds["chemdispenser"] = src + return + ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -/obj/machinery/chem_master/ +/obj/machinery/chem_master name = "ChemMaster 3000" density = 1 anchored = 1 @@ -176,259 +187,259 @@ var/condi = 0 var/useramount = 30 // Last used amount - New() - var/datum/reagents/R = new/datum/reagents(100) - reagents = R - R.my_atom = src +/obj/machinery/chem_master/New() + var/datum/reagents/R = new/datum/reagents(100) + reagents = R + R.my_atom = src - ex_act(severity) - switch(severity) - if(1.0) +/obj/machinery/chem_master/ex_act(severity) + switch(severity) + if(1.0) + del(src) + return + if(2.0) + if (prob(50)) del(src) return - if(2.0) - if (prob(50)) - del(src) - return - blob_act() - if (prob(50)) - del(src) - - meteorhit() +/obj/machinery/chem_master/blob_act() + if (prob(50)) del(src) - return - power_change() - if(powered()) - stat &= ~NOPOWER - else - spawn(rand(0, 15)) - stat |= NOPOWER +/obj/machinery/chem_master/meteorhit() + del(src) + return - attackby(var/obj/item/weapon/B as obj, var/mob/user as mob) +/obj/machinery/chem_master/power_change() + if(powered()) + stat &= ~NOPOWER + else + spawn(rand(0, 15)) + stat |= NOPOWER - if(istype(B, /obj/item/weapon/reagent_containers/glass)) +/obj/machinery/chem_master/attackby(var/obj/item/weapon/B as obj, var/mob/user as mob) - if(src.beaker) - user << "A beaker is already loaded into the machine." - return - src.beaker = B - user.drop_item() - B.loc = src - user << "You add the beaker to the machine!" - src.updateUsrDialog() - icon_state = "mixer1" + if(istype(B, /obj/item/weapon/reagent_containers/glass)) - else if(istype(B, /obj/item/weapon/storage/pill_bottle)) + if(src.beaker) + user << "A beaker is already loaded into the machine." + return + src.beaker = B + user.drop_item() + B.loc = src + user << "You add the beaker to the machine!" + src.updateUsrDialog() + icon_state = "mixer1" - if(src.loaded_pill_bottle) - user << "A pill bottle is already loaded into the machine." - return + else if(istype(B, /obj/item/weapon/storage/pill_bottle)) - src.loaded_pill_bottle = B - user.drop_item() - B.loc = src - user << "You add the pill bottle into the dispenser slot!" - src.updateUsrDialog() - return - - - Topic(href, href_list) - if(stat & (BROKEN|NOPOWER)) return - if(usr.stat || usr.restrained()) return - if(!in_range(src, usr)) return - - src.add_fingerprint(usr) - usr.machine = src - - - if (href_list["ejectp"]) - if(loaded_pill_bottle) - loaded_pill_bottle.loc = src.loc - loaded_pill_bottle = null - else if(href_list["close"]) - usr << browse(null, "window=chemmaster") - usr.machine = null + if(src.loaded_pill_bottle) + user << "A pill bottle is already loaded into the machine." return - if(beaker) - var/datum/reagents/R = beaker:reagents - if (href_list["analyze"]) - var/dat = "" - if(!condi) - dat += "Chemmaster 3000Chemical infos:

Name:
[href_list["name"]]

Description:
[href_list["desc"]]


(Back)" - else - dat += "Condimaster 3000Condiment infos:

Name:
[href_list["name"]]

Description:
[href_list["desc"]]


(Back)" - usr << browse(dat, "window=chem_master;size=575x400") - return - else if (href_list["add1"]) + src.loaded_pill_bottle = B + user.drop_item() + B.loc = src + user << "You add the pill bottle into the dispenser slot!" + src.updateUsrDialog() + return - /* - (this fixes a pretty serious exploit) ~~ Doohl - R.remove_reagent(href_list["add1"], 1) //Remove/add used instead of trans_to since we're moving a specific reagent. - reagents.add_reagent(href_list["add1"], 1) - */ - R.trans_id_to(src, href_list["add1"], 1) +/obj/machinery/chem_master/Topic(href, href_list) + if(stat & (BROKEN|NOPOWER)) return + if(usr.stat || usr.restrained()) return + if(!in_range(src, usr)) return - else if (href_list["add5"]) - R.trans_id_to(src, href_list["add5"], 5) - else if (href_list["add10"]) - R.trans_id_to(src, href_list["add10"], 10) - else if (href_list["addall"]) - var/temp_amt = R.get_reagent_amount(href_list["addall"]) - R.trans_id_to(src, href_list["addall"], temp_amt) - else if (href_list["addcustom"]) + src.add_fingerprint(usr) + usr.machine = src - var/id = href_list["addcustom"] - useramount = input("Select the amount to transfer.", 30, useramount) as num - useramount = isgoodnumber(useramount) - var/realamount = R.get_reagent_amount(id) - R.trans_id_to(src, href_list["addcustom"], realamount) - else if (href_list["remove1"]) - reagents.remove_reagent(href_list["remove1"], 1) - if(mode) R.add_reagent(href_list["remove1"], 1) - else if (href_list["remove5"]) - reagents.remove_reagent(href_list["remove5"], 5) - if(mode) R.add_reagent(href_list["remove5"], 5) - else if (href_list["remove10"]) - reagents.remove_reagent(href_list["remove10"], 10) - if(mode) R.add_reagent(href_list["remove10"], 10) - else if (href_list["removeall"]) - if(mode) - var/temp_amt = reagents.get_reagent_amount(href_list["removeall"]) - R.add_reagent(href_list["removeall"], temp_amt) - reagents.del_reagent(href_list["removeall"]) - else if (href_list["removecustom"]) + if (href_list["ejectp"]) + if(loaded_pill_bottle) + loaded_pill_bottle.loc = src.loc + loaded_pill_bottle = null + else if(href_list["close"]) + usr << browse(null, "window=chemmaster") + usr.machine = null + return - var/id = href_list["removecustom"] - useramount = input("Select the amount to transfer.", 30, useramount) as num - useramount = isgoodnumber(useramount) - reagents.remove_reagent(id, useramount) - if(mode) R.add_reagent(id, useramount) + if(beaker) + var/datum/reagents/R = beaker:reagents + if (href_list["analyze"]) + var/dat = "" + if(!condi) + dat += "Chemmaster 3000Chemical infos:

Name:
[href_list["name"]]

Description:
[href_list["desc"]]


(Back)" + else + dat += "Condimaster 3000Condiment infos:

Name:
[href_list["name"]]

Description:
[href_list["desc"]]


(Back)" + usr << browse(dat, "window=chem_master;size=575x400") + return + else if (href_list["add1"]) - else if (href_list["toggle"]) - if(mode) - mode = 0 - else - mode = 1 - else if (href_list["main"]) - attack_hand(usr) - return - else if (href_list["eject"]) - if(beaker) - beaker:loc = src.loc - beaker = null - reagents.clear_reagents() - icon_state = "mixer0" - else if (href_list["createpill"]) - var/name = reject_bad_text(input(usr,"Name:","Name your pill!",reagents.get_master_reagent_name())) - var/obj/item/weapon/reagent_containers/pill/P + /* + (this fixes a pretty serious exploit) ~~ Doohl + R.remove_reagent(href_list["add1"], 1) //Remove/add used instead of trans_to since we're moving a specific reagent. + reagents.add_reagent(href_list["add1"], 1) + */ - if(loaded_pill_bottle && loaded_pill_bottle.contents.len < loaded_pill_bottle.storage_slots) - P = new/obj/item/weapon/reagent_containers/pill(loaded_pill_bottle) - else - P = new/obj/item/weapon/reagent_containers/pill(src.loc) + R.trans_id_to(src, href_list["add1"], 1) + else if (href_list["add5"]) + R.trans_id_to(src, href_list["add5"], 5) + else if (href_list["add10"]) + R.trans_id_to(src, href_list["add10"], 10) + else if (href_list["addall"]) + var/temp_amt = R.get_reagent_amount(href_list["addall"]) + R.trans_id_to(src, href_list["addall"], temp_amt) + else if (href_list["addcustom"]) + + var/id = href_list["addcustom"] + useramount = input("Select the amount to transfer.", 30, useramount) as num + useramount = isgoodnumber(useramount) + var/realamount = R.get_reagent_amount(id) + R.trans_id_to(src, href_list["addcustom"], realamount) + + else if (href_list["remove1"]) + reagents.remove_reagent(href_list["remove1"], 1) + if(mode) R.add_reagent(href_list["remove1"], 1) + else if (href_list["remove5"]) + reagents.remove_reagent(href_list["remove5"], 5) + if(mode) R.add_reagent(href_list["remove5"], 5) + else if (href_list["remove10"]) + reagents.remove_reagent(href_list["remove10"], 10) + if(mode) R.add_reagent(href_list["remove10"], 10) + else if (href_list["removeall"]) + if(mode) + var/temp_amt = reagents.get_reagent_amount(href_list["removeall"]) + R.add_reagent(href_list["removeall"], temp_amt) + reagents.del_reagent(href_list["removeall"]) + else if (href_list["removecustom"]) + + var/id = href_list["removecustom"] + useramount = input("Select the amount to transfer.", 30, useramount) as num + useramount = isgoodnumber(useramount) + reagents.remove_reagent(id, useramount) + if(mode) R.add_reagent(id, useramount) + + else if (href_list["toggle"]) + if(mode) + mode = 0 + else + mode = 1 + else if (href_list["main"]) + attack_hand(usr) + return + else if (href_list["eject"]) + if(beaker) + beaker:loc = src.loc + beaker = null + reagents.clear_reagents() + icon_state = "mixer0" + else if (href_list["createpill"]) + var/name = reject_bad_text(input(usr,"Name:","Name your pill!",reagents.get_master_reagent_name())) + var/obj/item/weapon/reagent_containers/pill/P + + if(loaded_pill_bottle && loaded_pill_bottle.contents.len < loaded_pill_bottle.storage_slots) + P = new/obj/item/weapon/reagent_containers/pill(loaded_pill_bottle) + else + P = new/obj/item/weapon/reagent_containers/pill(src.loc) + + if(!name) name = reagents.get_master_reagent_name() + P.name = "[name] pill" + P.pixel_x = rand(-7, 7) //random position + P.pixel_y = rand(-7, 7) + reagents.trans_to(P,50) + + else if (href_list["createbottle"]) + if(!condi) + var/name = reject_bad_text(input(usr,"Name:","Name your bottle!",reagents.get_master_reagent_name())) + var/obj/item/weapon/reagent_containers/glass/bottle/P = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) if(!name) name = reagents.get_master_reagent_name() - P.name = "[name] pill" + P.name = "[name] bottle" P.pixel_x = rand(-7, 7) //random position P.pixel_y = rand(-7, 7) + reagents.trans_to(P,30) + else + var/obj/item/weapon/reagent_containers/food/condiment/P = new/obj/item/weapon/reagent_containers/food/condiment(src.loc) reagents.trans_to(P,50) - else if (href_list["createbottle"]) - if(!condi) - var/name = reject_bad_text(input(usr,"Name:","Name your bottle!",reagents.get_master_reagent_name())) - var/obj/item/weapon/reagent_containers/glass/bottle/P = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) - if(!name) name = reagents.get_master_reagent_name() - P.name = "[name] bottle" - P.pixel_x = rand(-7, 7) //random position - P.pixel_y = rand(-7, 7) - reagents.trans_to(P,30) - else - var/obj/item/weapon/reagent_containers/food/condiment/P = new/obj/item/weapon/reagent_containers/food/condiment(src.loc) - reagents.trans_to(P,50) + src.updateUsrDialog() + return - src.updateUsrDialog() +/obj/machinery/chem_master/attack_ai(mob/user as mob) + return src.attack_hand(user) + +/obj/machinery/chem_master/attack_paw(mob/user as mob) + return src.attack_hand(user) + +/obj/machinery/chem_master/attack_hand(mob/user as mob) + if(stat & BROKEN) return - - attack_ai(mob/user as mob) - return src.attack_hand(user) - - attack_paw(mob/user as mob) - return src.attack_hand(user) - - attack_hand(mob/user as mob) - if(stat & BROKEN) - return - user.machine = src - var/dat = "" - if(!beaker) - dat = "Please insert beaker.
" - if(src.loaded_pill_bottle) - dat += "Eject Pill Bottle \[[loaded_pill_bottle.contents.len]/[loaded_pill_bottle.storage_slots]\]

" - else - dat += "No pill bottle inserted.

" - dat += "Close" + user.machine = src + var/dat = "" + if(!beaker) + dat = "Please insert beaker.
" + if(src.loaded_pill_bottle) + dat += "Eject Pill Bottle \[[loaded_pill_bottle.contents.len]/[loaded_pill_bottle.storage_slots]\]

" else - var/datum/reagents/R = beaker:reagents - dat += "Eject beaker and Clear Buffer
" - if(src.loaded_pill_bottle) - dat += "Eject Pill Bottle \[[loaded_pill_bottle.contents.len]/[loaded_pill_bottle.storage_slots]\]

" - else - dat += "No pill bottle inserted.

" - if(!R.total_volume) - dat += "Beaker is empty." - else - dat += "Add to buffer:
" - for(var/datum/reagent/G in R.reagent_list) - dat += "[G.name] , [G.volume] Units - " - dat += "(Analyze) " - dat += "(1) " - if(G.volume >= 5) dat += "(5) " - if(G.volume >= 10) dat += "(10) " - dat += "(All) " - dat += "(Custom)
" - if(!mode) - dat += "
Transfer to disposal:
" - else - dat += "
Transfer to beaker:
" - if(reagents.total_volume) - for(var/datum/reagent/N in reagents.reagent_list) - dat += "[N.name] , [N.volume] Units - " - dat += "(Analyze) " - dat += "(1) " - if(N.volume >= 5) dat += "(5) " - if(N.volume >= 10) dat += "(10) " - dat += "(All) " - dat += "(Custom)
" - else - dat += "Empty
" - if(!condi) - dat += "

Create pill (50 units max)
" - dat += "Create bottle (30 units max)" - else - dat += "Create bottle (50 units max)" + dat += "No pill bottle inserted.

" + dat += "Close" + else + var/datum/reagents/R = beaker:reagents + dat += "Eject beaker and Clear Buffer
" + if(src.loaded_pill_bottle) + dat += "Eject Pill Bottle \[[loaded_pill_bottle.contents.len]/[loaded_pill_bottle.storage_slots]\]

" + else + dat += "No pill bottle inserted.

" + if(!R.total_volume) + dat += "Beaker is empty." + else + dat += "Add to buffer:
" + for(var/datum/reagent/G in R.reagent_list) + dat += "[G.name] , [G.volume] Units - " + dat += "(Analyze) " + dat += "(1) " + if(G.volume >= 5) dat += "(5) " + if(G.volume >= 10) dat += "(10) " + dat += "(All) " + dat += "(Custom)
" + if(!mode) + dat += "
Transfer to disposal:
" + else + dat += "
Transfer to beaker:
" + if(reagents.total_volume) + for(var/datum/reagent/N in reagents.reagent_list) + dat += "[N.name] , [N.volume] Units - " + dat += "(Analyze) " + dat += "(1) " + if(N.volume >= 5) dat += "(5) " + if(N.volume >= 10) dat += "(10) " + dat += "(All) " + dat += "(Custom)
" + else + dat += "Empty
" if(!condi) - user << browse("Chemmaster 3000Chemmaster menu:

[dat]", "window=chem_master;size=575x400") + dat += "

Create pill (50 units max)
" + dat += "Create bottle (30 units max)" else - user << browse("Condimaster 3000Condimaster menu:

[dat]", "window=chem_master;size=575x400") - onclose(user, "chem_master") - return + dat += "Create bottle (50 units max)" + if(!condi) + user << browse("Chemmaster 3000Chemmaster menu:

[dat]", "window=chem_master;size=575x400") + else + user << browse("Condimaster 3000Condimaster menu:

[dat]", "window=chem_master;size=575x400") + onclose(user, "chem_master") + return - proc/isgoodnumber(var/num) - if(isnum(num)) - if(num > 200) - num = 200 - else if(num < 0) - num = 1 - else - num = round(num) - return num +/obj/machinery/chem_master/proc/isgoodnumber(var/num) + if(isnum(num)) + if(num > 200) + num = 200 + else if(num < 0) + num = 1 else - return 0 + num = round(num) + return num + else + return 0 @@ -452,208 +463,208 @@ var/obj/item/weapon/reagent_containers/glass/beaker = null - set_broken() +/obj/machinery/computer/pandemic/set_broken() + icon_state = (src.beaker?"mixer1_b":"mixer0_b") + stat |= BROKEN + + +/obj/machinery/computer/pandemic/power_change() + + if(stat & BROKEN) icon_state = (src.beaker?"mixer1_b":"mixer0_b") - stat |= BROKEN + + else if(powered()) + icon_state = (src.beaker?"mixer1":"mixer0") + stat &= ~NOPOWER + + else + spawn(rand(0, 15)) + src.icon_state = (src.beaker?"mixer1_nopower":"mixer0_nopower") + stat |= NOPOWER - power_change() +/obj/machinery/computer/pandemic/Topic(href, href_list) + if(stat & (NOPOWER|BROKEN)) return + if(usr.stat || usr.restrained()) return + if(!in_range(src, usr)) return - if(stat & BROKEN) - icon_state = (src.beaker?"mixer1_b":"mixer0_b") - - else if(powered()) - icon_state = (src.beaker?"mixer1":"mixer0") - stat &= ~NOPOWER + usr.machine = src + if(!beaker) return + if (href_list["create_vaccine"]) + if(!src.wait) + var/obj/item/weapon/reagent_containers/glass/bottle/B = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) + if(B) + var/vaccine_type = text2path(href_list["create_vaccine"])//the path is received as string - converting + var/datum/disease/D = new vaccine_type + if(D) + B.name = "[D.name] vaccine bottle" + B.reagents.add_reagent("vaccine",15,vaccine_type) + del(D) + wait = 1 + var/datum/reagents/R = beaker.reagents + var/datum/reagent/blood/Blood = null + for(var/datum/reagent/blood/L in R.reagent_list) + if(L) + Blood = L + break + var/list/res = Blood.data["resistances"] + spawn(res.len*500) + src.wait = null else - spawn(rand(0, 15)) - src.icon_state = (src.beaker?"mixer1_nopower":"mixer0_nopower") - stat |= NOPOWER - - - Topic(href, href_list) - if(stat & (NOPOWER|BROKEN)) return - if(usr.stat || usr.restrained()) return - if(!in_range(src, usr)) return - - usr.machine = src - if(!beaker) return - - if (href_list["create_vaccine"]) - if(!src.wait) - var/obj/item/weapon/reagent_containers/glass/bottle/B = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) - if(B) - var/vaccine_type = text2path(href_list["create_vaccine"])//the path is received as string - converting - var/datum/disease/D = new vaccine_type - if(D) - B.name = "[D.name] vaccine bottle" - B.reagents.add_reagent("vaccine",15,vaccine_type) - del(D) - wait = 1 - var/datum/reagents/R = beaker.reagents - var/datum/reagent/blood/Blood = null - for(var/datum/reagent/blood/L in R.reagent_list) - if(L) - Blood = L - break - var/list/res = Blood.data["resistances"] - spawn(res.len*500) - src.wait = null - else - src.temphtml = "The replicator is not ready yet." + src.temphtml = "The replicator is not ready yet." + src.updateUsrDialog() + return + else if (href_list["create_virus_culture"]) + if(!wait) + var/obj/item/weapon/reagent_containers/glass/bottle/B = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) + B.icon_state = "bottle3" + var/type = text2path(href_list["create_virus_culture"])//the path is received as string - converting + var/datum/disease/D = new type + var/list/data = list("viruses"=list(D)) + var/name = sanitize(input(usr,"Name:","Name the culture",D.name)) + if(!name || name == " ") name = D.name + B.name = "[name] culture bottle" + B.desc = "A small bottle. Contains [D.agent] culture in synthblood medium." + B.reagents.add_reagent("blood",20,data) src.updateUsrDialog() - return - else if (href_list["create_virus_culture"]) - if(!wait) - var/obj/item/weapon/reagent_containers/glass/bottle/B = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) - B.icon_state = "bottle3" - var/type = text2path(href_list["create_virus_culture"])//the path is received as string - converting - var/datum/disease/D = new type - var/list/data = list("viruses"=list(D)) - var/name = sanitize(input(usr,"Name:","Name the culture",D.name)) - if(!name || name == " ") name = D.name - B.name = "[name] culture bottle" - B.desc = "A small bottle. Contains [D.agent] culture in synthblood medium." - B.reagents.add_reagent("blood",20,data) - src.updateUsrDialog() - wait = 1 - spawn(2000) - src.wait = null - else - src.temphtml = "The replicator is not ready yet." - src.updateUsrDialog() - return - else if (href_list["empty_beaker"]) - beaker.reagents.clear_reagents() - src.updateUsrDialog() - return - else if (href_list["eject"]) - beaker:loc = src.loc - beaker = null - icon_state = "mixer0" - src.updateUsrDialog() - return - else if(href_list["clear"]) - src.temphtml = "" - src.updateUsrDialog() - return + wait = 1 + spawn(2000) + src.wait = null else - usr << browse(null, "window=pandemic") - src.updateUsrDialog() - return - - src.add_fingerprint(usr) + src.temphtml = "The replicator is not ready yet." + src.updateUsrDialog() + return + else if (href_list["empty_beaker"]) + beaker.reagents.clear_reagents() + src.updateUsrDialog() + return + else if (href_list["eject"]) + beaker:loc = src.loc + beaker = null + icon_state = "mixer0" + src.updateUsrDialog() + return + else if(href_list["clear"]) + src.temphtml = "" + src.updateUsrDialog() + return + else + usr << browse(null, "window=pandemic") + src.updateUsrDialog() return - attack_ai(mob/user as mob) - return src.attack_hand(user) + src.add_fingerprint(usr) + return - attack_paw(mob/user as mob) - return src.attack_hand(user) +/obj/machinery/computer/pandemic/attack_ai(mob/user as mob) + return src.attack_hand(user) - attack_hand(mob/user as mob) - if(stat & (NOPOWER|BROKEN)) - return - user.machine = src - var/dat = "" - if(src.temphtml) - dat = "[src.temphtml]

Main Menu" - else if(!beaker) - dat += "Please insert beaker.
" - dat += "Close" +/obj/machinery/computer/pandemic/attack_paw(mob/user as mob) + return src.attack_hand(user) + +/obj/machinery/computer/pandemic/attack_hand(mob/user as mob) + if(stat & (NOPOWER|BROKEN)) + return + user.machine = src + var/dat = "" + if(src.temphtml) + dat = "[src.temphtml]

Main Menu" + else if(!beaker) + dat += "Please insert beaker.
" + dat += "Close" + else + var/datum/reagents/R = beaker.reagents + var/datum/reagent/blood/Blood = null + for(var/datum/reagent/blood/B in R.reagent_list) + if(B) + Blood = B + break + if(!R.total_volume||!R.reagent_list.len) + dat += "The beaker is empty
" + else if(!Blood) + dat += "No blood sample found in beaker" else - var/datum/reagents/R = beaker.reagents - var/datum/reagent/blood/Blood = null - for(var/datum/reagent/blood/B in R.reagent_list) - if(B) - Blood = B - break - if(!R.total_volume||!R.reagent_list.len) - dat += "The beaker is empty
" - else if(!Blood) - dat += "No blood sample found in beaker" - else - dat += "

Blood sample data:

" - dat += "Blood DNA: [(Blood.data["blood_DNA"]||"none")]
" - dat += "Blood Type: [(Blood.data["blood_type"]||"none")]
" + dat += "

Blood sample data:

" + dat += "Blood DNA: [(Blood.data["blood_DNA"]||"none")]
" + dat += "Blood Type: [(Blood.data["blood_type"]||"none")]
" - if(Blood.data["viruses"]) - var/list/vir = Blood.data["viruses"] - if(vir.len) - for(var/datum/disease/D in Blood.data["viruses"]) - if(!D.hidden[PANDEMIC]) + if(Blood.data["viruses"]) + var/list/vir = Blood.data["viruses"] + if(vir.len) + for(var/datum/disease/D in Blood.data["viruses"]) + if(!D.hidden[PANDEMIC]) - dat += "Disease Agent: [D?"[D.agent] - Create virus culture bottle":"none"]
" - dat += "Common name: [(D.name||"none")]
" - dat += "Description: [(D.desc||"none")]
" - dat += "Possible cure: [(D.cure||"none")]

" + dat += "Disease Agent: [D?"[D.agent] - Create virus culture bottle":"none"]
" + dat += "Common name: [(D.name||"none")]
" + dat += "Description: [(D.desc||"none")]
" + dat += "Possible cure: [(D.cure||"none")]

" - dat += "Contains antibodies to: " - if(Blood.data["resistances"]) - var/list/res = Blood.data["resistances"] - if(res.len) - dat += "
" - else - dat += "nothing
" + dat += "Contains antibodies to: " + if(Blood.data["resistances"]) + var/list/res = Blood.data["resistances"] + if(res.len) + dat += "
" else dat += "nothing
" - dat += "
Eject beaker[((R.total_volume&&R.reagent_list.len) ? "-- Empty beaker":"")]
" - dat += "Close" + else + dat += "nothing
" + dat += "
Eject beaker[((R.total_volume&&R.reagent_list.len) ? "-- Empty beaker":"")]
" + dat += "Close" - user << browse("[src.name]
[dat]", "window=pandemic;size=575x400") - onclose(user, "pandemic") - return + user << browse("[src.name]
[dat]", "window=pandemic;size=575x400") + onclose(user, "pandemic") + return - attackby(var/obj/I as obj, var/mob/user as mob) - if(istype(I, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'Screwdriver.ogg', 50, 1) - if(do_after(user, 20)) - if (src.stat & BROKEN) - user << "\blue The broken glass falls out." - var/obj/structure/computerframe/A = new /obj/structure/computerframe(src.loc) - new /obj/item/weapon/shard(src.loc) - var/obj/item/weapon/circuitboard/pandemic/M = new /obj/item/weapon/circuitboard/pandemic(A) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 3 - A.icon_state = "3" - A.anchored = 1 - del(src) - else - user << "\blue You disconnect the monitor." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - var/obj/item/weapon/circuitboard/pandemic/M = new /obj/item/weapon/circuitboard/pandemic(A) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 4 - A.icon_state = "4" - A.anchored = 1 - del(src) - else if(istype(I, /obj/item/weapon/reagent_containers/glass)) - if(stat & (NOPOWER|BROKEN)) return - if(src.beaker) - user << "A beaker is already loaded into the machine." - return +/obj/machinery/computer/pandemic/attackby(var/obj/I as obj, var/mob/user as mob) + if(istype(I, /obj/item/weapon/screwdriver)) + playsound(src.loc, 'Screwdriver.ogg', 50, 1) + if(do_after(user, 20)) + if (src.stat & BROKEN) + user << "\blue The broken glass falls out." + var/obj/structure/computerframe/A = new /obj/structure/computerframe(src.loc) + new /obj/item/weapon/shard(src.loc) + var/obj/item/weapon/circuitboard/pandemic/M = new /obj/item/weapon/circuitboard/pandemic(A) + for (var/obj/C in src) + C.loc = src.loc + A.circuit = M + A.state = 3 + A.icon_state = "3" + A.anchored = 1 + del(src) + else + user << "\blue You disconnect the monitor." + var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) + var/obj/item/weapon/circuitboard/pandemic/M = new /obj/item/weapon/circuitboard/pandemic(A) + for (var/obj/C in src) + C.loc = src.loc + A.circuit = M + A.state = 4 + A.icon_state = "4" + A.anchored = 1 + del(src) + else if(istype(I, /obj/item/weapon/reagent_containers/glass)) + if(stat & (NOPOWER|BROKEN)) return + if(src.beaker) + user << "A beaker is already loaded into the machine." + return - src.beaker = I - user.drop_item() - I.loc = src - user << "You add the beaker to the machine!" - src.updateUsrDialog() - icon_state = "mixer1" + src.beaker = I + user.drop_item() + I.loc = src + user << "You add the beaker to the machine!" + src.updateUsrDialog() + icon_state = "mixer1" - else - ..() - return + else + ..() + return //////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// /obj/machinery/reagentgrinder @@ -678,7 +689,7 @@ /obj/item/stack/sheet/clown = list("banana" = 20), /obj/item/stack/sheet/silver = list("silver" = 20), /obj/item/stack/sheet/gold = list("gold" = 20), - /obj/item/weapon/grown/nettle = list("acid" = 0), + /obj/item/weapon/grown/nettle = list("sacid" = 0), /obj/item/weapon/grown/deathnettle = list("pacid" = 0), //Blender Stuff diff --git a/code/modules/chemical/Chemistry-Reagents.dm b/code/modules/chemical/Chemistry-Reagents.dm index 7161c9f53d3..8de1f7bbc8e 100644 --- a/code/modules/chemical/Chemistry-Reagents.dm +++ b/code/modules/chemical/Chemistry-Reagents.dm @@ -288,8 +288,8 @@ datum holder.remove_reagent("stoxin", 2) if(holder.has_reagent("plasma")) holder.remove_reagent("plasma", 1) - if(holder.has_reagent("acid")) - holder.remove_reagent("acid", 1) + if(holder.has_reagent("sacid")) + holder.remove_reagent("sacid", 1) if(holder.has_reagent("cyanide")) holder.remove_reagent("cyanide", 1) if(holder.has_reagent("amatoxin")) @@ -616,9 +616,9 @@ datum ..() return - acid + sacid name = "Sulphuric acid" - id = "acid" + id = "sacid" description = "A strong mineral acid with the molecular formula H2SO4." reagent_state = LIQUID color = "#DB5008" // rgb: 219, 80, 8 @@ -1240,8 +1240,8 @@ datum holder.remove_reagent("stoxin", 5) if(holder.has_reagent("plasma")) holder.remove_reagent("plasma", 5) - if(holder.has_reagent("acid")) - holder.remove_reagent("acid", 5) + if(holder.has_reagent("sacid")) + holder.remove_reagent("sacid", 5) if(holder.has_reagent("pacid")) holder.remove_reagent("pacid", 5) if(holder.has_reagent("cyanide")) diff --git a/code/modules/chemical/Chemistry-Recipes.dm b/code/modules/chemical/Chemistry-Recipes.dm index 733c5061470..b60085f7fc8 100644 --- a/code/modules/chemical/Chemistry-Recipes.dm +++ b/code/modules/chemical/Chemistry-Recipes.dm @@ -116,7 +116,7 @@ datum name = "Polytrinic acid" id = "pacid" result = "pacid" - required_reagents = list("acid" = 1, "chlorine" = 1, "potassium" = 1) + required_reagents = list("sacid" = 1, "chlorine" = 1, "potassium" = 1) result_amount = 3 synaptizine @@ -273,14 +273,14 @@ datum name = "Glycerol" id = "glycerol" result = "glycerol" - required_reagents = list("cornoil" = 3, "acid" = 1) + required_reagents = list("cornoil" = 3, "sacid" = 1) result_amount = 1 nitroglycerin name = "Nitroglycerin" id = "nitroglycerin" result = "nitroglycerin" - required_reagents = list("glycerol" = 1, "pacid" = 1, "acid" = 1) + required_reagents = list("glycerol" = 1, "pacid" = 1, "sacid" = 1) result_amount = 2 on_reaction(var/datum/reagents/holder, var/created_volume) var/location = get_turf(holder.my_atom) @@ -331,7 +331,7 @@ datum name = "Napalm" id = "napalm" result = null - required_reagents = list("aluminum" = 1, "plasma" = 1, "acid" = 1 ) + required_reagents = list("aluminum" = 1, "plasma" = 1, "sacid" = 1 ) result_amount = 1 on_reaction(var/datum/reagents/holder, var/created_volume) var/turf/location = get_turf(holder.my_atom.loc) @@ -443,7 +443,7 @@ datum name = "Foam surfactant" id = "foam surfactant" result = "fluorosurfactant" - required_reagents = list("fluorine" = 2, "carbon" = 2, "acid" = 1) + required_reagents = list("fluorine" = 2, "carbon" = 2, "sacid" = 1) result_amount = 5 @@ -639,7 +639,7 @@ datum name = "Metroid Virus" id = "m_virus" result = null - required_reagents = list("sugar" = 1, "acid" = 1) + required_reagents = list("sugar" = 1, "sacid" = 1) result_amount = 2 required_container = /obj/item/metroid_core required_other = 3 @@ -722,7 +722,7 @@ datum name = "Metroid Crit" id = "m_tele" result = null - required_reagents = list("acid" = 1, "blood" = 1) + required_reagents = list("sacid" = 1, "blood" = 1) required_catalysts = list("plasma" = 1, "mutagen" = 1) result_amount = 1 required_container = /obj/item/metroid_core @@ -798,7 +798,7 @@ datum name = "Metroid Foam" id = "m_foam" result = null - required_reagents = list("acid" = 1) + required_reagents = list("sacid" = 1) result_amount = 2 required_container = /obj/item/metroid_core required_other = 5 @@ -883,7 +883,7 @@ datum name = "Soy Sauce" id = "soysauce" result = "soysauce" - required_reagents = list("soymilk" = 4, "acid" = 1) + required_reagents = list("soymilk" = 4, "sacid" = 1) result_amount = 5 cheesewheel @@ -1317,7 +1317,7 @@ datum name = "Acid Spit" id = "acidspit" result = "acidspit" - required_reagents = list("acid" = 1, "wine" = 5) + required_reagents = list("sacid" = 1, "wine" = 5) result_amount = 6 amasec diff --git a/code/modules/chemical/Chemistry-Tools.dm b/code/modules/chemical/Chemistry-Tools.dm index 92edff21808..91a1ed27eaf 100644 --- a/code/modules/chemical/Chemistry-Tools.dm +++ b/code/modules/chemical/Chemistry-Tools.dm @@ -287,7 +287,7 @@ B1.reagents.add_reagent("aluminum", 25) B2.reagents.add_reagent("plasma", 25) - B2.reagents.add_reagent("acid", 25) + B2.reagents.add_reagent("sacid", 25) beakers += B1 beakers += B2 diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index a7dca1c088f..54d58ce1a04 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -73,7 +73,7 @@ datum/design/seccamera id = "seccamera" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/security" datum/design/aicore @@ -82,7 +82,7 @@ datum/design/aicore id = "aicore" req_tech = list("programming" = 4, "biotech" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/aicore" datum/design/aiupload @@ -91,7 +91,7 @@ datum/design/aiupload id = "aiupload" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/aiupload" datum/design/borgupload @@ -100,7 +100,7 @@ datum/design/borgupload id = "borgupload" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/borgupload" datum/design/med_data @@ -109,7 +109,7 @@ datum/design/med_data id = "med_data" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/med_data" datum/design/operating @@ -118,7 +118,7 @@ datum/design/operating id = "operating" req_tech = list("programming" = 2, "biotech" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/operating" datum/design/pandemic @@ -127,7 +127,7 @@ datum/design/pandemic id = "pandemic" req_tech = list("programming" = 2, "biotech" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/pandemic" datum/design/scan_console @@ -136,7 +136,7 @@ datum/design/scan_console id = "scan_console" req_tech = list("programming" = 2, "biotech" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/scan_consolenew" datum/design/comconsole @@ -145,7 +145,7 @@ datum/design/comconsole id = "comconsole" req_tech = list("programming" = 2, "magnets" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/communications" datum/design/idcardconsole @@ -154,7 +154,7 @@ datum/design/idcardconsole id = "idcardconsole" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/card" datum/design/crewconsole @@ -163,7 +163,7 @@ datum/design/crewconsole id = "crewconsole" req_tech = list("programming" = 3, "magnets" = 2, "biotech" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/crew" datum/design/teleconsole @@ -172,7 +172,7 @@ datum/design/teleconsole id = "teleconsole" req_tech = list("programming" = 3, "bluespace" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/teleporter" datum/design/secdata @@ -181,7 +181,7 @@ datum/design/secdata id = "secdata" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/secure_data" datum/design/atmosalerts @@ -190,7 +190,7 @@ datum/design/atmosalerts id = "atmosalerts" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/atmos_alert" datum/design/air_management @@ -199,7 +199,7 @@ datum/design/air_management id = "air_management" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/air_management" /* Uncomment if someone makes these buildable @@ -209,7 +209,7 @@ datum/design/general_alert id = "general_alert" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/general_alert" */ @@ -219,7 +219,7 @@ datum/design/robocontrol id = "robocontrol" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/robotics" datum/design/clonecontrol @@ -228,7 +228,7 @@ datum/design/clonecontrol id = "clonecontrol" req_tech = list("programming" = 3, "biotech" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/cloning" datum/design/clonepod @@ -237,7 +237,7 @@ datum/design/clonepod id = "clonepod" req_tech = list("programming" = 3, "biotech" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/clonepod" datum/design/clonescanner @@ -246,7 +246,7 @@ datum/design/clonescanner id = "clonescanner" req_tech = list("programming" = 3, "biotech" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/clonescanner" datum/design/arcademachine @@ -255,7 +255,7 @@ datum/design/arcademachine id = "arcademachine" req_tech = list("programming" = 1) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/arcade" datum/design/powermonitor @@ -264,7 +264,7 @@ datum/design/powermonitor id = "powermonitor" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/powermonitor" datum/design/solarcontrol @@ -273,7 +273,7 @@ datum/design/solarcontrol id = "solarcontrol" req_tech = list("programming" = 2, "powerstorage" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/solar_control" datum/design/prisonmanage @@ -282,7 +282,7 @@ datum/design/prisonmanage id = "prisonmanage" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/prisoner" datum/design/mechacontrol @@ -291,7 +291,7 @@ datum/design/mechacontrol id = "mechacontrol" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha_control" datum/design/mechapower @@ -300,7 +300,7 @@ datum/design/mechapower id = "mechapower" req_tech = list("programming" = 2, "powerstorage" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mech_bay_power_console" datum/design/rdconsole @@ -309,7 +309,7 @@ datum/design/rdconsole id = "rdconsole" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/rdconsole" datum/design/ordercomp @@ -318,7 +318,7 @@ datum/design/ordercomp id = "ordercomp" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/ordercomp" datum/design/supplycomp @@ -327,7 +327,7 @@ datum/design/supplycomp id = "supplycomp" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/supplycomp" datum/design/mining @@ -336,7 +336,7 @@ datum/design/mining id = "mining" req_tech = list("programming" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mining" datum/design/comm_monitor @@ -345,7 +345,7 @@ datum/design/comm_monitor id = "comm_monitor" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/comm_monitor" datum/design/comm_server @@ -354,7 +354,7 @@ datum/design/comm_server id = "comm_server" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/comm_server" datum/design/message_monitor @@ -363,7 +363,7 @@ datum/design/message_monitor id = "message_monitor" req_tech = list("programming" = 5) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/message_monitor" datum/design/aifixer @@ -372,7 +372,7 @@ datum/design/aifixer id = "aifixer" req_tech = list("programming" = 3, "biotech" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/aifixer" /////////////////////////////////// @@ -384,7 +384,7 @@ datum/design/safeguard_module id = "safeguard_module" req_tech = list("programming" = 3, "materials" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$gold" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$gold" = 100) build_path = "/obj/item/weapon/aiModule/safeguard" datum/design/onehuman_module @@ -393,7 +393,7 @@ datum/design/onehuman_module id = "onehuman_module" req_tech = list("programming" = 4, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$diamond" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$diamond" = 100) build_path = "/obj/item/weapon/aiModule/oneHuman" datum/design/protectstation_module @@ -402,7 +402,7 @@ datum/design/protectstation_module id = "protectstation_module" req_tech = list("programming" = 3, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$gold" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$gold" = 100) build_path = "/obj/item/weapon/aiModule/protectStation" datum/design/notele_module @@ -411,7 +411,7 @@ datum/design/notele_module id = "notele_module" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$gold" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$gold" = 100) build_path = "/obj/item/weapon/aiModule/teleporterOffline" datum/design/quarantine_module @@ -420,7 +420,7 @@ datum/design/quarantine_module id = "quarantine_module" req_tech = list("programming" = 3, "biotech" = 2, "materials" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$gold" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$gold" = 100) build_path = "/obj/item/weapon/aiModule/quarantine" datum/design/oxygen_module @@ -429,7 +429,7 @@ datum/design/oxygen_module id = "oxygen_module" req_tech = list("programming" = 3, "biotech" = 2, "materials" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$gold" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$gold" = 100) build_path = "/obj/item/weapon/aiModule/oxygen" datum/design/freeform_module @@ -438,7 +438,7 @@ datum/design/freeform_module id = "freeform_module" req_tech = list("programming" = 4, "materials" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$gold" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$gold" = 100) build_path = "/obj/item/weapon/aiModule/freeform" datum/design/reset_module @@ -447,7 +447,7 @@ datum/design/reset_module id = "reset_module" req_tech = list("programming" = 3, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$gold" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$gold" = 100) build_path = "/obj/item/weapon/aiModule/reset" datum/design/purge_module @@ -456,7 +456,7 @@ datum/design/purge_module id = "purge_module" req_tech = list("programming" = 4, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$diamond" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$diamond" = 100) build_path = "/obj/item/weapon/aiModule/purge" datum/design/freeformcore_module @@ -465,7 +465,7 @@ datum/design/freeformcore_module id = "freeformcore_module" req_tech = list("programming" = 4, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$diamond" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$diamond" = 100) build_path = "/obj/item/weapon/aiModule/freeformcore" datum/design/asimov @@ -474,7 +474,7 @@ datum/design/asimov id = "asimov_module" req_tech = list("programming" = 3, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$diamond" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$diamond" = 100) build_path = "/obj/item/weapon/aiModule/asimov" datum/design/paladin_module @@ -483,7 +483,7 @@ datum/design/paladin_module id = "paladin_module" req_tech = list("programming" = 4, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$diamond" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$diamond" = 100) build_path = "/obj/item/weapon/aiModule/paladin" datum/design/tyrant_module @@ -492,7 +492,7 @@ datum/design/tyrant_module id = "tyrant_module" req_tech = list("programming" = 4, "syndicate" = 2, "materials" = 6) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20, "$diamond" = 100) + materials = list("$glass" = 2000, "sacid" = 20, "$diamond" = 100) build_path = "/obj/item/weapon/aiModule/tyrant" @@ -506,7 +506,7 @@ datum/design/subspace_receiver id = "s-receiver" req_tech = list("programming" = 4, "engineering" = 3, "bluespace" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/telecomms/receiver" datum/design/telecomms_bus @@ -515,7 +515,7 @@ datum/design/telecomms_bus id = "s-bus" req_tech = list("programming" = 4, "engineering" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/telecomms/bus" datum/design/telecomms_hub @@ -524,7 +524,7 @@ datum/design/telecomms_hub id = "s-hub" req_tech = list("programming" = 4, "engineering" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/telecomms/hub" datum/design/telecomms_relay @@ -533,7 +533,7 @@ datum/design/telecomms_relay id = "s-relay" req_tech = list("programming" = 3, "engineering" = 4, "bluespace" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/telecomms/relay" datum/design/telecomms_processor @@ -542,7 +542,7 @@ datum/design/telecomms_processor id = "s-processor" req_tech = list("programming" = 4, "engineering" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/telecomms/processor" datum/design/telecomms_server @@ -551,7 +551,7 @@ datum/design/telecomms_server id = "s-server" req_tech = list("programming" = 4, "engineering" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/telecomms/server" datum/design/subspace_broadcaster @@ -560,7 +560,7 @@ datum/design/subspace_broadcaster id = "s-broadcaster" req_tech = list("programming" = 4, "engineering" = 4, "bluespace" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/telecomms/broadcaster" @@ -596,7 +596,7 @@ datum/design/ripley_main id = "ripley_main" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/ripley/main" datum/design/ripley_peri @@ -605,7 +605,7 @@ datum/design/ripley_peri id = "ripley_peri" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/ripley/peripherals" datum/design/odysseus_main @@ -614,7 +614,7 @@ datum/design/odysseus_main id = "odysseus_main" req_tech = list("programming" = 3,"biotech" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/odysseus/main" datum/design/odysseus_peri @@ -623,7 +623,7 @@ datum/design/odysseus_peri id = "odysseus_peri" req_tech = list("programming" = 3,"biotech" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/odysseus/peripherals" datum/design/gygax_main @@ -632,7 +632,7 @@ datum/design/gygax_main id = "gygax_main" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/gygax/main" datum/design/gygax_peri @@ -641,7 +641,7 @@ datum/design/gygax_peri id = "gygax_peri" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/gygax/peripherals" datum/design/gygax_targ @@ -650,7 +650,7 @@ datum/design/gygax_targ id = "gygax_targ" req_tech = list("programming" = 4, "combat" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/gygax/targeting" datum/design/durand_main @@ -659,7 +659,7 @@ datum/design/durand_main id = "durand_main" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/durand/main" datum/design/durand_peri @@ -668,7 +668,7 @@ datum/design/durand_peri id = "durand_peri" req_tech = list("programming" = 4) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/durand/peripherals" datum/design/durand_targ @@ -677,7 +677,7 @@ datum/design/durand_targ id = "durand_targ" req_tech = list("programming" = 4, "combat" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/durand/targeting" datum/design/honker_main @@ -686,7 +686,7 @@ datum/design/honker_main id = "honker_main" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/honker/main" datum/design/honker_peri @@ -695,7 +695,7 @@ datum/design/honker_peri id = "honker_peri" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/honker/peripherals" datum/design/honker_targ @@ -704,7 +704,7 @@ datum/design/honker_targ id = "honker_targ" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mecha/honker/targeting" //////////////////////////////////////// @@ -1131,7 +1131,7 @@ datum/design/destructive_analyzer id = "destructive_analyzer" req_tech = list("programming" = 2, "magnets" = 2, "engineering" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/destructive_analyzer" datum/design/protolathe @@ -1140,7 +1140,7 @@ datum/design/protolathe id = "protolathe" req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/protolathe" datum/design/circuit_imprinter @@ -1149,7 +1149,7 @@ datum/design/circuit_imprinter id = "circuit_imprinter" req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/circuit_imprinter" datum/design/autolathe @@ -1158,7 +1158,7 @@ datum/design/autolathe id = "autolathe" req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/autolathe" datum/design/rdservercontrol @@ -1167,7 +1167,7 @@ datum/design/rdservercontrol id = "rdservercontrol" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/rdservercontrol" datum/design/rdserver @@ -1176,7 +1176,7 @@ datum/design/rdserver id = "rdserver" req_tech = list("programming" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/rdserver" datum/design/mechfab @@ -1185,7 +1185,7 @@ datum/design/mechfab id = "mechfab" req_tech = list("programming" = 3, "engineering" = 3) build_type = IMPRINTER - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/mechfab" @@ -1200,7 +1200,7 @@ datum/design/pacman req_tech = list("programming" = 3, "plasmatech" = 3, "powerstorage" = 3, "engineering" = 3) build_type = IMPRINTER reliability_base = 79 - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/pacman" datum/design/superpacman @@ -1210,7 +1210,7 @@ datum/design/superpacman req_tech = list("programming" = 3, "powerstorage" = 4, "engineering" = 4) build_type = IMPRINTER reliability_base = 76 - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/pacman/super" datum/design/mrspacman @@ -1220,7 +1220,7 @@ datum/design/mrspacman req_tech = list("programming" = 3, "powerstorage" = 5, "engineering" = 5) build_type = IMPRINTER reliability_base = 74 - materials = list("$glass" = 2000, "acid" = 20) + materials = list("$glass" = 2000, "sacid" = 20) build_path = "/obj/item/weapon/circuitboard/pacman/mrs"