diff --git a/code/WorkInProgress/Chemistry-Tools.dm b/code/WorkInProgress/Chemistry-Tools.dm
index f50e2ca6bc7..1381bd5a7ab 100644
--- a/code/WorkInProgress/Chemistry-Tools.dm
+++ b/code/WorkInProgress/Chemistry-Tools.dm
@@ -224,39 +224,42 @@
proc
fire_syringe(atom/target, mob/user)
- var/turf/trg = get_turf(target)
- var/obj/syringe_gun_dummy/D = new/obj/syringe_gun_dummy(get_turf(src))
- var/obj/item/weapon/reagent_containers/syringe/S = syringes[1]
- S.reagents.trans_to(D, S.reagents.total_volume)
- syringes -= S
- del(S)
- D.icon_state = "syringeproj"
- D.name = "syringe"
- playsound(user.loc, 'syringeproj.ogg', 50, 1)
+ if (locate (/obj/table, src.loc))
+ return
+ else
+ var/turf/trg = get_turf(target)
+ var/obj/syringe_gun_dummy/D = new/obj/syringe_gun_dummy(get_turf(src))
+ var/obj/item/weapon/reagent_containers/syringe/S = syringes[1]
+ S.reagents.trans_to(D, S.reagents.total_volume)
+ syringes -= S
+ del(S)
+ D.icon_state = "syringeproj"
+ D.name = "syringe"
+ playsound(user.loc, 'syringeproj.ogg', 50, 1)
- for(var/i=0, i<6, i++)
- if(D.loc == trg) break
- step_towards(D,trg)
+ for(var/i=0, i<6, i++)
+ if(D.loc == trg) break
+ step_towards(D,trg)
- for(var/mob/living/carbon/M in D.loc)
- if(!istype(M,/mob/living/carbon)) continue
- if(M == user) continue
- D.reagents.trans_to(M, 15)
- M.bruteloss += 5
- for(var/mob/O in viewers(world.view, D))
- O.show_message(text("\red [] was hit by the syringe!", M), 1)
+ for(var/mob/living/carbon/M in D.loc)
+ if(!istype(M,/mob/living/carbon)) continue
+ if(M == user) continue
+ D.reagents.trans_to(M, 15)
+ M.bruteloss += 5
+ for(var/mob/O in viewers(world.view, D))
+ O.show_message(text("\red [] was hit by the syringe!", M), 1)
- del(D)
+ del(D)
- for(var/atom/A in D.loc)
- if(A == user) continue
- if(A.density) del(D)
+ for(var/atom/A in D.loc)
+ if(A == user) continue
+ if(A.density) del(D)
- sleep(1)
+ sleep(1)
- spawn(10) del(D)
+ spawn(10) del(D)
- return
+ return
diff --git a/code/defines/obj/machinery.dm b/code/defines/obj/machinery.dm
index 4ef764eae6d..de05ab7f42d 100644
--- a/code/defines/obj/machinery.dm
+++ b/code/defines/obj/machinery.dm
@@ -630,6 +630,7 @@
var/flour_amount = 0 //Current amount of flour inside
var/water_amount = 0 //Current amount of water inside
var/monkeymeat_amount = 0
+ var/cheese_amount = 0 //cheese inside, yo
var/humanmeat_amount = 0
var/donkpocket_amount = 0
var/xenomeat_amount = 0
diff --git a/code/game/machinery/microwave.dm b/code/game/machinery/microwave.dm
index 2f7b338da8a..3c8d409316b 100644
--- a/code/game/machinery/microwave.dm
+++ b/code/game/machinery/microwave.dm
@@ -232,6 +232,7 @@ Please clean it before use!
dat = {"
Eggs:[src.egg_amount] eggs
Flour:[src.flour_amount] cups of flour
+Cheese:[src.cheese_amount] cheese wedges
Monkey Meat:[src.monkeymeat_amount] slabs of meat
Meat Turnovers:[src.donkpocket_amount] turnovers
Other Meat:[src.humanmeat_amount] slabs of meat
@@ -275,6 +276,7 @@ Please clean it before use!
src.egg_amount = 0 // If so remove all the eggs
src.flour_amount = 0 // And the flour
src.water_amount = 0 //And the water
+ src.cheese_amount = 0 //And the cheese
src.monkeymeat_amount = 0
src.humanmeat_amount = 0
src.donkpocket_amount = 0
@@ -288,6 +290,7 @@ Please clean it before use!
src.updateUsrDialog()
src.egg_amount = 0 //Clear all the values as this crap is what makes the mess inside!!
src.flour_amount = 0
+ src.cheese_amount = 0
src.water_amount = 0
src.humanmeat_amount = 0
src.monkeymeat_amount = 0
@@ -311,6 +314,7 @@ Please clean it before use!
src.updateUsrDialog()
src.egg_amount = 0 //Clear all the values as this crap is gone when it breaks!!
src.flour_amount = 0
+ src.cheese_amount = 0
src.water_amount = 0
src.humanmeat_amount = 0
src.monkeymeat_amount = 0
@@ -339,6 +343,7 @@ Please clean it before use!
if(operation == 2) // If dispose was pressed, empty the microwave
src.egg_amount = 0
src.flour_amount = 0
+ src.cheese_amount = 0
src.water_amount = 0
src.humanmeat_amount = 0
src.monkeymeat_amount = 0