diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm
index 8dd8ad4263b..36cc18abd2c 100644
--- a/code/game/objects/effects/effect_system.dm
+++ b/code/game/objects/effects/effect_system.dm
@@ -958,6 +958,12 @@ steam.start() -- spawns the effect
attack_hand(user)
return
+ attack_animal(var/mob/living/simple_animal/M)
+ if(M.environment_smash >= 1)
+ M << "You smash apart the foam wall."
+ qdel(src)
+ return
+
attack_hand(var/mob/user)
if ((HULK in user.mutations) || (prob(75 - metal*25)))
user << "\blue You smash through the metal foam wall."
diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm
index 242ad96511d..694e6102bce 100644
--- a/code/modules/hydroponics/biogenerator.dm
+++ b/code/modules/hydroponics/biogenerator.dm
@@ -129,28 +129,28 @@
menustat = "menu"
if(beaker)
dat += "
Biomass: [points] units.
"
- dat += "ActivateDetach Container"
+ dat += "ActivateDetach Container"
dat += "Food:
"
dat += ""
- dat += "10 milk:
Make ([20/efficiency])
"
- dat += "10 cream:
Make ([30/efficiency])
"
- dat += "Monkey cube:
Make ([250/efficiency])"
+ dat += "10 milk:
Make ([20/efficiency])
"
+ dat += "10 cream:
Make ([30/efficiency])
"
+ dat += "Monkey cube:
Make ([250/efficiency])"
dat += "
"
dat += "Nutrients:
"
dat += ""
- dat += "E-Z-Nutrient:
Makex5 ([10/efficiency])
"
- dat += "Left 4 Zed:
Makex5 ([20/efficiency])
"
- dat += "Robust Harvest:
Makex5 ([25/efficiency])
"
+ dat += "E-Z-Nutrient:
Makex5 ([10/efficiency])
"
+ dat += "Left 4 Zed:
Makex5 ([20/efficiency])
"
+ dat += "Robust Harvest:
Makex5 ([25/efficiency])
"
dat += "
"
dat += "Leather:
"
dat += ""
- dat += "Wallet:
Make ([100/efficiency])
"
- dat += "Book bag:
Make ([200/efficiency])
"
- dat += "Plant bag:
Make ([200/efficiency])
"
- dat += "Mining satchel:
Make ([200/efficiency])
"
- dat += "Botanical gloves:
Make ([250/efficiency])
"
- dat += "Utility belt:
Make ([300/efficiency])
"
- dat += "Leather Satchel:
Make ([400/efficiency])
"
+ dat += "Wallet:
Make ([100/efficiency])
"
+ dat += "Book bag:
Make ([200/efficiency])
"
+ dat += "Plant bag:
Make ([200/efficiency])
"
+ dat += "Mining satchel:
Make ([200/efficiency])
"
+ dat += "Botanical gloves:
Make ([250/efficiency])
"
+ dat += "Utility belt:
Make ([300/efficiency])
"
+ dat += "Leather Satchel:
Make ([400/efficiency])
"
dat += "
"
else
dat += "No container inside, please insert container.
"
@@ -200,11 +200,10 @@
processing = 1
update_icon()
updateUsrDialog()
- sleep(30)
return 0
-/obj/machinery/biogenerator/proc/create_product(var/item)
- switch(item)
+/obj/machinery/biogenerator/proc/create_product(var/create)
+ switch(create)
if("milk")
if (check_cost(20/efficiency)) return 0
else beaker.reagents.add_reagent("milk",10)
@@ -223,24 +222,6 @@
if("rh")
if (check_cost(25/efficiency)) return 0
else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh(src.loc)
- if("ez5")
- if (check_cost(50/efficiency)) return 0
- else
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez(src.loc)
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez(src.loc)
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez(src.loc)
- if("l4z5")
- if (check_cost(100/efficiency)) return 0
- else
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/l4z(src.loc)
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/l4z(src.loc)
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/l4z(src.loc)
- if("rh5")
- if (check_cost(125/efficiency)) return 0
- else
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh(src.loc)
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh(src.loc)
- new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh(src.loc)
if("wallet")
if (check_cost(100/efficiency)) return 0
else new/obj/item/weapon/storage/wallet(src.loc)
@@ -276,16 +257,30 @@
usr.set_machine(src)
- switch(href_list["action"])
- if("activate")
- activate()
- if("detach")
- if(beaker)
- beaker.loc = src.loc
- beaker = null
- update_icon()
- if("create")
- create_product(href_list["item"],text2num(href_list["cost"]))
- if("menu")
- menustat = "menu"
- updateUsrDialog()
+ if(href_list["activate"])
+ activate()
+ updateUsrDialog()
+
+ else if(href_list["detach"])
+ if(beaker)
+ var/obj/item/weapon/reagent_containers/RC = beaker
+ RC.loc = src.loc
+ beaker = null
+ update_icon()
+ updateUsrDialog()
+
+ else if(href_list["create"])
+ var/amount = (text2num(href_list["amount"]))
+ var/i = amount
+ var/cost = (text2num(href_list["cost"]))
+ var/C = href_list["create"]
+ if(i <= 0)
+ return
+ while(i >= 1)
+ create_product(C, cost, i)
+ i--
+ updateUsrDialog()
+
+ else if(href_list["menu"])
+ menustat = "menu"
+ updateUsrDialog()
\ No newline at end of file