From 59bbf3a883fc1c77b65974dea89d56beb169d01e Mon Sep 17 00:00:00 2001 From: mwerezak Date: Wed, 4 Feb 2015 02:24:00 -0500 Subject: [PATCH 1/2] Replaces chem bottles with their overlay equivalents --- code/modules/hydroponics/hydro_tools.dm | 9 +- code/modules/reagents/Chemistry-Machinery.dm | 20 +++-- .../reagent_containers/glass/bottle.dm | 84 ++++++++++++------- .../reagent_containers/glass/bottle/robot.dm | 9 +- 4 files changed, 76 insertions(+), 46 deletions(-) diff --git a/code/modules/hydroponics/hydro_tools.dm b/code/modules/hydroponics/hydro_tools.dm index 328e1a020e..a1f4db7b92 100644 --- a/code/modules/hydroponics/hydro_tools.dm +++ b/code/modules/hydroponics/hydro_tools.dm @@ -273,7 +273,7 @@ name = "fertilizer bottle" desc = "A small glass bottle. Can hold up to 10 units." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle16" + icon_state = "bottle-4" flags = FPRINT | TABLEPASS | OPENCONTAINER possible_transfer_amounts = null w_class = 2.0 @@ -292,20 +292,21 @@ if(fertilizer) reagents.add_reagent(fertilizer,10) + update_icon() /obj/item/weapon/reagent_containers/glass/fertilizer/ez name = "bottle of E-Z-Nutrient" - icon_state = "bottle16" + icon_state = "bottle-4" fertilizer = "eznutrient" /obj/item/weapon/reagent_containers/glass/fertilizer/l4z name = "bottle of Left 4 Zed" - icon_state = "bottle18" + icon_state = "bottle-4" fertilizer = "left4zed" /obj/item/weapon/reagent_containers/glass/fertilizer/rh name = "bottle of Robust Harvest" - icon_state = "bottle15" + icon_state = "bottle-4" fertilizer = "robustharvest" //Hatchets and things to kill kudzu diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index a2ea7c6f0c..fa77074574 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -4,6 +4,8 @@ #define CHEM_DISPENSER_ENERGY_COST 0.1 //How many energy points do we use per unit of chemical? +#define BOTTLE_SPRITES list("bottle-1", "bottle-2", "bottle-3", "bottle-4") //list of available bottle sprites + /obj/machinery/chem_dispenser name = "chem dispenser" density = 1 @@ -262,7 +264,7 @@ var/condi = 0 var/useramount = 30 // Last used amount var/pillamount = 10 - var/bottlesprite = "1" //yes, strings + var/bottlesprite = "bottle-1" //yes, strings var/pillsprite = "1" var/client/has_sprites = list() var/max_pill_count = 20 @@ -442,7 +444,7 @@ P.name = "[name] bottle" P.pixel_x = rand(-7, 7) //random position P.pixel_y = rand(-7, 7) - P.icon_state = "bottle-"+bottlesprite + P.icon_state = bottlesprite reagents.trans_to(P,60) P.update_icon() else @@ -457,10 +459,9 @@ usr << browse(dat, "window=chem_master") return else if(href_list["change_bottle"]) - #define MAX_BOTTLE_SPRITE 4 //max icon state of the bottle sprites var/dat = "" - for(var/i = 1 to MAX_BOTTLE_SPRITE) - dat += "" + for(var/sprite in BOTTLE_SPRITES) + dat += "" dat += "
" usr << browse(dat, "window=chem_master") return @@ -484,8 +485,8 @@ has_sprites += user.client for(var/i = 1 to MAX_PILL_SPRITE) usr << browse_rsc(icon('icons/obj/chemical.dmi', "pill" + num2text(i)), "pill[i].png") - for(var/i = 1 to MAX_BOTTLE_SPRITE) - usr << browse_rsc(icon('icons/obj/chemical.dmi', "bottle-" + num2text(i)), "bottle-[i].png") + for(var/sprite in BOTTLE_SPRITES) + usr << browse_rsc(icon('icons/obj/chemical.dmi', sprite), "[sprite].png") var/dat = "" if(!beaker) dat = "Please insert beaker.
" @@ -529,7 +530,7 @@ if(!condi) dat += "

Create pill (60 units max)
" dat += "Create multiple pills
" - dat += "Create bottle (60 units max)" + dat += "Create bottle (60 units max)" else dat += "Create bottle (50 units max)" if(!condi) @@ -635,7 +636,7 @@ 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" + B.icon_state = "bottle-1" var/type = text2path(href_list["create_virus_culture"])//the path is received as string - converting var/datum/disease/D = null if(!type) @@ -651,6 +652,7 @@ B.name = "[name] culture bottle" B.desc = "A small bottle. Contains [D.agent] culture in synthblood medium." B.reagents.add_reagent("blood",20,data) + B.update_icon() src.updateUsrDialog() wait = 1 spawn(1000) diff --git a/code/modules/reagents/reagent_containers/glass/bottle.dm b/code/modules/reagents/reagent_containers/glass/bottle.dm index 846eb3bfa7..b44cf7d4eb 100644 --- a/code/modules/reagents/reagent_containers/glass/bottle.dm +++ b/code/modules/reagents/reagent_containers/glass/bottle.dm @@ -30,7 +30,7 @@ New() ..() if(!icon_state) - icon_state = "bottle-[rand(1.4)]" + icon_state = "bottle-[rand(1,4)]" update_icon() overlays.Cut() @@ -59,186 +59,203 @@ name = "inaprovaline bottle" desc = "A small bottle. Contains inaprovaline - used to stabilize patients." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle16" + icon_state = "bottle-4" New() ..() reagents.add_reagent("inaprovaline", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/toxin name = "toxin bottle" desc = "A small bottle of toxins. Do not drink, it is poisonous." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle12" + icon_state = "bottle-3" New() ..() reagents.add_reagent("toxin", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/cyanide name = "cyanide bottle" desc = "A small bottle of cyanide. Bitter almonds?" icon = 'icons/obj/chemical.dmi' - icon_state = "bottle12" + icon_state = "bottle-3" New() ..() - reagents.add_reagent("cyanide", 60) + reagents.add_reagent("cyanide", 30) //volume changed to match chloral + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/stoxin name = "soporific bottle" desc = "A small bottle of soporific. Just the fumes make you sleepy." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle20" + icon_state = "bottle-3" New() ..() reagents.add_reagent("stoxin", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate name = "Chloral Hydrate Bottle" desc = "A small bottle of Choral Hydrate. Mickey's Favorite!" icon = 'icons/obj/chemical.dmi' - icon_state = "bottle20" + icon_state = "bottle-3" New() ..() reagents.add_reagent("chloralhydrate", 30) //Intentionally low since it is so strong. Still enough to knock someone out. + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/antitoxin name = "dylovene bottle" desc = "A small bottle of dylovene. Counters poisons, and repairs damage. A wonder drug." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle17" + icon_state = "bottle-4" New() ..() reagents.add_reagent("anti_toxin", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/mutagen name = "unstable mutagen bottle" desc = "A small bottle of unstable mutagen. Randomly changes the DNA structure of whoever comes in contact." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle20" + icon_state = "bottle-1" New() ..() reagents.add_reagent("mutagen", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/ammonia name = "ammonia bottle" desc = "A small bottle." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle20" + icon_state = "bottle-1" New() ..() reagents.add_reagent("ammonia", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/diethylamine name = "diethylamine bottle" desc = "A small bottle." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle17" + icon_state = "bottle-4" New() ..() reagents.add_reagent("diethylamine", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/flu_virion name = "Flu virion culture bottle" desc = "A small bottle. Contains H13N1 flu virion culture in synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/advance/flu(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/epiglottis_virion name = "Epiglottis virion culture bottle" desc = "A small bottle. Contains Epiglottis virion culture in synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/advance/voice_change(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/liver_enhance_virion name = "Liver enhancement virion culture bottle" desc = "A small bottle. Contains liver enhancement virion culture in synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/advance/heal(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/hullucigen_virion name = "Hullucigen virion culture bottle" desc = "A small bottle. Contains hullucigen virion culture in synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/advance/hullucigen(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/pierrot_throat name = "Pierrot's Throat culture bottle" desc = "A small bottle. Contains H0NI<42 virion culture in synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/pierrot_throat(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/cold name = "Rhinovirus culture bottle" desc = "A small bottle. Contains XY-rhinovirus culture in synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/advance/F = new /datum/disease/advance/cold(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/random name = "Random culture bottle" desc = "A small bottle. Contains a random disease." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/advance/F = new(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/retrovirus name = "Retrovirus culture bottle" desc = "A small bottle. Contains a retrovirus culture in a synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/dna_retrovirus(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/gbs name = "GBS culture bottle" desc = "A small bottle. Contains Gravitokinetic Bipotential SADS+ culture in synthblood medium."//Or simply - General BullShit icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" amount_per_transfer_from_this = 5 New() @@ -248,23 +265,25 @@ var/datum/disease/F = new /datum/disease/gbs var/list/data = list("virus"= F) R.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/fake_gbs name = "GBS culture bottle" desc = "A small bottle. Contains Gravitokinetic Bipotential SADS- culture in synthblood medium."//Or simply - General BullShit icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/fake_gbs(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /* /obj/item/weapon/reagent_containers/glass/bottle/rhumba_beat name = "Rhumba Beat culture bottle" desc = "A small bottle. Contains The Rhumba Beat culture in synthblood medium."//Or simply - General BullShit icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" amount_per_transfer_from_this = 5 New() @@ -280,44 +299,48 @@ name = "Brainrot culture bottle" desc = "A small bottle. Contains Cryptococcus Cosmosis culture in synthblood medium." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/brainrot(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/magnitis name = "Magnitis culture bottle" desc = "A small bottle. Contains a small dosage of Fukkos Miracos." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/magnitis(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/wizarditis name = "Wizarditis culture bottle" desc = "A small bottle. Contains a sample of Rincewindus Vulgaris." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() var/datum/disease/F = new /datum/disease/wizarditis(0) var/list/data = list("viruses"= list(F)) reagents.add_reagent("blood", 20, data) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/pacid name = "Polytrinic Acid Bottle" desc = "A small bottle. Contains a small amount of Polytrinic Acid" icon = 'icons/obj/chemical.dmi' - icon_state = "bottle17" + icon_state = "bottle-4" New() ..() reagents.add_reagent("pacid", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/adminordrazine name = "Adminordrazine Bottle" @@ -327,21 +350,24 @@ New() ..() reagents.add_reagent("adminordrazine", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/capsaicin name = "Capsaicin Bottle" desc = "A small bottle. Contains hot sauce." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle3" + icon_state = "bottle-4" New() ..() reagents.add_reagent("capsaicin", 60) + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/frostoil name = "Frost Oil Bottle" desc = "A small bottle. Contains cold sauce." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle17" + icon_state = "bottle-4" New() ..() - reagents.add_reagent("frostoil", 60) \ No newline at end of file + reagents.add_reagent("frostoil", 60) + update_icon() \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/glass/bottle/robot.dm b/code/modules/reagents/reagent_containers/glass/bottle/robot.dm index 9286e5ab03..622836b0d9 100644 --- a/code/modules/reagents/reagent_containers/glass/bottle/robot.dm +++ b/code/modules/reagents/reagent_containers/glass/bottle/robot.dm @@ -11,23 +11,24 @@ name = "internal inaprovaline bottle" desc = "A small bottle. Contains inaprovaline - used to stabilize patients." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle16" + icon_state = "bottle-4" reagent = "inaprovaline" New() ..() reagents.add_reagent("inaprovaline", 60) - return + update_icon() /obj/item/weapon/reagent_containers/glass/bottle/robot/antitoxin name = "internal anti-toxin bottle" desc = "A small bottle of Anti-toxins. Counters poisons, and repairs damage, a wonder drug." icon = 'icons/obj/chemical.dmi' - icon_state = "bottle17" + icon_state = "bottle-4" reagent = "anti_toxin" New() ..() reagents.add_reagent("anti_toxin", 60) - return \ No newline at end of file + update_icon() + From 9caf76d0695f04fad637fab97217eafc466cb4b0 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 5 Feb 2015 00:41:59 -0500 Subject: [PATCH 2/2] Glass bottles are now dispensed with the lid on It seemed kind of silly that vendors, for example, would dispense bottles with their lids off. --- code/modules/hydroponics/hydro_tools.dm | 2 +- code/modules/reagents/reagent_containers/glass/bottle.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/hydroponics/hydro_tools.dm b/code/modules/hydroponics/hydro_tools.dm index 52a4dd9601..2d9261d97d 100644 --- a/code/modules/hydroponics/hydro_tools.dm +++ b/code/modules/hydroponics/hydro_tools.dm @@ -270,7 +270,7 @@ desc = "A small glass bottle. Can hold up to 10 units." icon = 'icons/obj/chemical.dmi' icon_state = "bottle-4" - flags = OPENCONTAINER + flags = 0 possible_transfer_amounts = null w_class = 2.0 diff --git a/code/modules/reagents/reagent_containers/glass/bottle.dm b/code/modules/reagents/reagent_containers/glass/bottle.dm index eed421fe3f..2384343ab5 100644 --- a/code/modules/reagents/reagent_containers/glass/bottle.dm +++ b/code/modules/reagents/reagent_containers/glass/bottle.dm @@ -9,7 +9,7 @@ item_state = "atoxinbottle" amount_per_transfer_from_this = 10 possible_transfer_amounts = list(5,10,15,25,30,60) - flags = OPENCONTAINER + flags = 0 volume = 60 on_reagent_change()