diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index c17d4a86fcb..c54bc49c9db 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -186,6 +186,9 @@ var/mode = 0 var/condi = 0 var/useramount = 30 // Last used amount + var/bottlesprite = "1" //yes, strings + var/pillsprite = "1" + var/client/has_sprites = list() /obj/machinery/chem_master/New() var/datum/reagents/R = new/datum/reagents(100) @@ -267,7 +270,18 @@ if (href_list["analyze"]) var/dat = "" if(!condi) - dat += "Chemmaster 3000Chemical infos:

Name:
[href_list["name"]]

Description:
[href_list["desc"]]


(Back)" + if(href_list["name"] == "Blood") + var/datum/reagent/blood/G + for(var/datum/reagent/F in R.reagent_list) + if(F.name == href_list["name"]) + G = F + break + var/A = G.name + var/B = G.data["blood_type"] + var/C = G.data["blood_DNA"] + dat += "Chemmaster 3000Chemical infos:

Name:
[A]

Description:
Blood Type: [B]
DNA: [C]


(Back)" + else + 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") @@ -319,19 +333,13 @@ 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) - + var/obj/item/weapon/reagent_containers/pill/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) + P.icon_state = "pill"+pillsprite 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())) @@ -340,14 +348,31 @@ P.name = "[name] bottle" P.pixel_x = rand(-7, 7) //random position P.pixel_y = rand(-7, 7) + P.icon_state = "bottle"+bottlesprite reagents.trans_to(P,30) - - var/bottle_num = min(max(input("Enter bottle design number","Bottle number"), 0), 20) as num - P.icon_state = "bottle[bottle_num]" - desc = "A small bottle, design number #[bottle_num]." 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["change_pill"]) + #define MAX_PILL_SPRITE 20 //max icon state of the pill sprites + var/dat = "" + for(var/i = 1 to MAX_PILL_SPRITE) + dat += "" + dat += "
" + usr << browse(dat, "window=chem_master") + return + else if(href_list["change_bottle"]) + #define MAX_BOTTLE_SPRITE 20 //max icon state of the bottle sprites + var/dat = "" + for(var/i = 1 to MAX_BOTTLE_SPRITE) + dat += "" + dat += "
" + usr << browse(dat, "window=chem_master") + return + else if(href_list["pill_sprite"]) + pillsprite = href_list["pill_sprite"] + else if(href_list["bottle_sprite"]) + bottlesprite = href_list["bottle_sprite"] src.updateUsrDialog() return @@ -362,6 +387,13 @@ if(stat & BROKEN) return user.set_machine(src) + if(!(user.client in has_sprites)) + spawn() + has_sprites += user.client + for(var/i = 1 to MAX_PILL_SPRITE) + usr << browse_rsc(icon('chemical.dmi', "pill" + num2text(i)), "pill[i].png") + for(var/i = 1 to MAX_BOTTLE_SPRITE) + usr << browse_rsc(icon('chemical.dmi', "bottle" + num2text(i)), "bottle[i].png") var/dat = "" if(!beaker) dat = "Please insert beaker.
" @@ -403,8 +435,8 @@ else dat += "Empty
" if(!condi) - dat += "

Create pill (50 units max)
" - dat += "Create bottle (30 units max)" + dat += "

Create pill (50 units max)
" + dat += "Create bottle (30 units max)" else dat += "Create bottle (50 units max)" if(!condi)