diff --git a/aurorastation.dme b/aurorastation.dme
index ed3806a4140..4b56880d3b2 100644
--- a/aurorastation.dme
+++ b/aurorastation.dme
@@ -2116,6 +2116,7 @@
#include "code\modules\cooking\machinery\cooking_machines\container.dm"
#include "code\modules\cooking\machinery\cooking_machines\fryer.dm"
#include "code\modules\cooking\machinery\cooking_machines\grill.dm"
+#include "code\modules\cooking\machinery\cooking_machines\microwave.dm"
#include "code\modules\cooking\machinery\cooking_machines\oven.dm"
#include "code\modules\cooking\machinery\cooking_machines\stove.dm"
#include "code\modules\cooking\recipes\recipe.dm"
diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm
index dda73bc7f0b..d12f535d579 100644
--- a/code/__DEFINES/misc.dm
+++ b/code/__DEFINES/misc.dm
@@ -406,6 +406,7 @@ example:
#define SAUCEPAN 1 << 4
#define POT 1 << 5
#define GRILL 1 << 6
+#define MICROWAVE 1 << 7
// Cooking misc.
// can_insert return values
diff --git a/code/modules/cooking/machinery/cooking_machines/_appliance.dm b/code/modules/cooking/machinery/cooking_machines/_appliance.dm
index 1a93f26719c..891c679b65b 100644
--- a/code/modules/cooking/machinery/cooking_machines/_appliance.dm
+++ b/code/modules/cooking/machinery/cooking_machines/_appliance.dm
@@ -369,7 +369,8 @@
adjust_smoke()
/obj/machinery/appliance/proc/finish_cooking(var/datum/cooking_item/CI)
- audible_message("[src] [finish_verb]", intent_message = PING_SOUND)
+ if(finish_verb)
+ audible_message(SPAN_NOTICE("[src] [finish_verb]"), intent_message = PING_SOUND)
if(cooked_sound)
playsound(get_turf(src), cooked_sound, 50, 1)
//Check recipes first, a valid recipe overrides other options
diff --git a/code/modules/cooking/machinery/cooking_machines/_cooker.dm b/code/modules/cooking/machinery/cooking_machines/_cooker.dm
index cd5420e1749..2583ac17a8a 100644
--- a/code/modules/cooking/machinery/cooking_machines/_cooker.dm
+++ b/code/modules/cooking/machinery/cooking_machines/_cooker.dm
@@ -171,7 +171,6 @@
return TRUE
if (use_power == POWER_USE_ACTIVE)
update_use_power(POWER_USE_IDLE)
- playsound(src, 'sound/machines/click.ogg', 20, 1)
update_icon()
//Cookers do differently, they use containers
diff --git a/code/modules/cooking/machinery/cooking_machines/container.dm b/code/modules/cooking/machinery/cooking_machines/container.dm
index 77672f38749..41815ba60a3 100644
--- a/code/modules/cooking/machinery/cooking_machines/container.dm
+++ b/code/modules/cooking/machinery/cooking_machines/container.dm
@@ -258,6 +258,18 @@
return FALSE
return TRUE
+/obj/item/reagent_containers/cooking_container/microwave_plate
+ name = "microwave plate"
+ shortname = "plate"
+ desc = "Put ingredients on this; designed for use with a microwave."
+ icon_state = "microwave_plate"
+ appliancetype = MICROWAVE
+ max_space = 30
+ volume = 90
+ force = 18
+ drop_sound = 'sound/items/drop/glass.ogg'
+ pickup_sound = 'sound/items/pickup/glass.ogg'
+
/obj/item/reagent_containers/cooking_container/board
name = "chopping board"
shortname = "board"
diff --git a/code/modules/cooking/machinery/cooking_machines/microwave.dm b/code/modules/cooking/machinery/cooking_machines/microwave.dm
new file mode 100644
index 00000000000..197631bd2fe
--- /dev/null
+++ b/code/modules/cooking/machinery/cooking_machines/microwave.dm
@@ -0,0 +1,251 @@
+#define NOT_BROKEN 0
+#define SCREWDRIVER_BROKEN 1
+#define WRENCH_BROKEN 2
+
+/obj/machinery/appliance/cooker/microwave
+ name = "microwave"
+ desc = "A possibly occult device capable of perfectly preparing many types of food."
+ icon_state = "mw"
+
+ cook_type = "microwaved"
+ appliancetype = MICROWAVE
+ can_burn_food = TRUE
+
+ food_color = COLOR_GRAY
+
+ active_power_usage = 2 KILO WATTS
+ idle_power_usage = 0
+ heating_power = 6000
+
+ finish_verb = null
+ cooked_sound = null
+
+ ///Looping sound for the microwave
+ var/datum/looping_sound/microwave/microwave_loop
+
+ /// Becomes dirty when a wrong recipe is inputted or something burns
+ var/dirtiness = FALSE
+ /// If above 0, the microwave is broken and can't be used
+ var/broken = NOT_BROKEN
+ /// Multiplier for break chance
+ var/break_multiplier = 1.0
+
+ starts_with = list(
+ /obj/item/reagent_containers/cooking_container/microwave_plate
+ )
+
+ var/active_timer_hash
+ var/operating = FALSE
+
+/obj/machinery/appliance/cooker/microwave/Initialize()
+ . = ..()
+ microwave_loop = new(src)
+ temp_options = list()
+ for(var/newtime = 1 to 6)
+ var/image/disp_image = image('icons/mob/screen/radial.dmi', "radial_time")
+ var/hue = RotateHue(hsv(0, 255, 255), 120 * (1 - (newtime-5)/(6)))
+ disp_image.color = HSVtoRGB(hue)
+ temp_options["[30 * newtime]"] = disp_image
+
+/obj/machinery/appliance/cooker/microwave/Destroy()
+ QDEL_NULL(microwave_loop)
+ . = ..()
+
+/obj/machinery/appliance/cooker/microwave/has_space(obj/item/item)
+ if(istype(item, /obj/item/reagent_containers/cooking_container))
+ if(length(cooking_objs) < max_contents)
+ return TRUE
+ else
+ if(length(cooking_objs))
+ var/datum/cooking_item/cooking_item = cooking_objs[1]
+ var/obj/item/reagent_containers/cooking_container/microwave_plate/plate = cooking_item.container
+ if(plate?.can_fit(item))
+ return cooking_item
+ return FALSE
+
+/obj/machinery/appliance/cooker/microwave/attackby(obj/item/O, mob/living/user, list/click_params)
+ if (broken)
+ // Start repairs by using a screwdriver
+ if(broken == SCREWDRIVER_BROKEN && O.isscrewdriver())
+ user.visible_message( \
+ SPAN_NOTICE("\The [user] starts to fix part of \the [src]."), \
+ SPAN_NOTICE("You start to fix part of \the [src].") \
+ )
+ if (O.use_tool(src, user, 2 SECONDS, volume = 50))
+ user.visible_message( \
+ SPAN_NOTICE("\The [user] fixes part of \the [src]."), \
+ SPAN_NOTICE("You have fixed part of \the [src].") \
+ )
+ broken = WRENCH_BROKEN // Fix it a bit
+ return TRUE
+
+ // Finish repairs using a wrench
+ if (broken == WRENCH_BROKEN && O.iswrench())
+ user.visible_message( \
+ SPAN_NOTICE("\The [user] starts to fix part of \the [src]."), \
+ SPAN_NOTICE("You start to fix part of \the [src].") \
+ )
+ if (O.use_tool(src, user, 2 SECONDS, volume = 50))
+ user.visible_message( \
+ SPAN_NOTICE("\The [user] fixes \the [src]."), \
+ SPAN_NOTICE("You have fixed \the [src].") \
+ )
+ broken = NOT_BROKEN // Fix it!
+ update_icon()
+ atom_flags = ATOM_FLAG_OPEN_CONTAINER
+ return TRUE
+
+ // Otherwise, we can't add anything to the micrwoave
+ else
+ to_chat(user, SPAN_WARNING("It's broken, and this isn't the right way to fix it!"))
+ return TRUE
+
+ if(dirtiness) // The microwave is all dirty, so it can't be used!
+ var/has_rag = istype(O, /obj/item/reagent_containers/glass/rag)
+ var/has_cleaner = O.reagents != null && O.reagents.has_reagent(/singleton/reagent/spacecleaner, 5)
+ if (has_rag || has_cleaner)
+ user.visible_message( \
+ SPAN_NOTICE("\The [user] starts to clean \the [src]."), \
+ SPAN_NOTICE("You start to clean \the [src].") \
+ )
+ if (do_after(user, 2 SECONDS, src, DO_UNIQUE))
+ user.visible_message( \
+ SPAN_NOTICE("\The [user] has cleaned \the [src]."), \
+ SPAN_NOTICE("You clean out \the [src].") \
+ )
+
+ // You can use a rag to wipe down the inside of the microwave
+ // Otherwise, you'll need some space cleaner
+ if (!has_rag)
+ O.reagents.remove_reagent(/singleton/reagent/spacecleaner, 5)
+ playsound(loc, 'sound/effects/spray2.ogg', 50, 1, -6)
+
+ dirtiness = FALSE // It's clean!
+ broken = NOT_BROKEN // just to be sure
+ update_icon()
+ atom_flags = ATOM_FLAG_OPEN_CONTAINER
+ return TRUE
+
+ // Otherwise, bad luck!
+ else
+ to_chat(user, SPAN_WARNING("You need to clean \the [src] before you use it!"))
+ return TRUE
+ return ..()
+
+/obj/machinery/appliance/cooker/microwave/RefreshParts()
+ ..()
+ var/laser_rating = 0
+ for(var/obj/item/stock_parts/micro_laser/ML)
+ laser_rating += ML.rating
+ heating_power = initial(heating_power) + clamp(laser_rating, 1, 5) * 150
+
+ var/mb_rating = 0
+ for(var/obj/item/stock_parts/matter_bin/MB)
+ mb_rating += MB.rating
+ break_multiplier = 1 / clamp((mb_rating), 1, 3)
+
+/obj/machinery/appliance/cooker/microwave/update_cooking_power()
+ if(!operating)
+ cooking_power = 0
+ return
+ ..()
+
+/obj/machinery/appliance/cooker/microwave/attempt_toggle_power(mob/user)
+ if (use_check_and_message(user, issilicon(user) ? USE_ALLOW_NON_ADJACENT : 0))
+ return
+
+ if (broken)
+ to_chat(user, SPAN_WARNING("[src] is very broken. You'll need to fix it before you can use it again."))
+ return
+ else if (dirtiness)
+ to_chat(user, SPAN_WARNING("[src] is covered in muck. You'll need to wipe it down or clean it out before you can use it again."))
+ return
+
+ if (operating)
+ operating = FALSE
+ temperature = T20C
+ update_use_power(POWER_USE_OFF)
+ else
+ var/desired_time = show_radial_menu(user, src, temp_options, require_near = TRUE, tooltips = TRUE, no_repeat_close = TRUE)
+ if(!desired_time)
+ return
+ set_temp = optimal_temp
+ temperature = optimal_temp
+ operating = TRUE
+ update_use_power(POWER_USE_ACTIVE)
+ addtimer(CALLBACK(src, PROC_REF(turn_off)), text2num(desired_time) SECONDS, TIMER_STOPPABLE)
+
+ activation_message(user)
+ cooking = use_power
+ update_icon()
+
+/obj/machinery/appliance/cooker/microwave/can_remove_items(mob/user)
+ return !use_check_and_message(user) && !operating
+
+/obj/machinery/appliance/cooker/microwave/proc/turn_off()
+ if(active_timer_hash)
+ deltimer(active_timer_hash)
+ active_timer_hash = null
+ operating = FALSE
+ temperature = T20C
+ update_use_power(POWER_USE_OFF)
+ audible_message(SPAN_NOTICE("[src] pings!"))
+ update_icon()
+
+/obj/machinery/appliance/cooker/microwave/burn_food(datum/cooking_item/cooking_item)
+ ..()
+ playsound(loc, 'sound/effects/splat.ogg', 50, 1)
+ visible_message(SPAN_WARNING("Muck splatters over the inside of \the [src]!"))
+ dirtiness = TRUE // Make it dirty so it can't be used until cleaned
+ broke()
+ update_icon()
+
+/obj/machinery/appliance/cooker/microwave/proc/broke()
+ spark(loc, 2, GLOB.alldirs)
+ playsound(loc, /singleton/sound_category/spark_sound, 50, 1)
+ if (prob(100 * break_multiplier))
+ visible_message(SPAN_WARNING("\The [src] sputters and grinds to a halt!")) //Let them know they're stupid
+ broken = WRENCH_BROKEN // Make it broken so it can't be used until fixed
+ turn_off()
+
+/obj/machinery/appliance/cooker/microwave/add_content(obj/item/I, mob/user)
+ . = ..()
+ flick("mwo", src)
+ playsound(src, 'sound/machines/microwave/microwave-start.ogg', 50, TRUE)
+
+/obj/machinery/appliance/cooker/microwave/update_icon()
+ ..()
+ ClearOverlays()
+ icon_state = initial(icon_state)
+ update_microwaving_audio()
+ if(operating)
+ var/image/mwclosed_on = image(icon, "mw_on")
+ if(!dirtiness)
+ mwclosed_on.plane = EFFECTS_ABOVE_LIGHTING_PLANE
+ AddOverlays(mwclosed_on)
+ if(dirtiness)
+ if(broken)
+ AddOverlays(image(icon, "mwbloodyo"))
+ else
+ AddOverlays(image(icon, "mwbloody"))
+ if(broken)
+ icon_state = "mwb"
+
+/obj/machinery/appliance/cooker/microwave/proc/update_microwaving_audio()
+ if(!microwave_loop)
+ return
+ if(use_power)
+ microwave_loop.start()
+ else
+ microwave_loop.stop()
+
+/obj/machinery/appliance/cooker/microwave/condition_hints(mob/user, distance, is_adjacent)
+ . = ..()
+ if(broken)
+ . += SPAN_WARNING("\The [src] is very broken. You'll need to fix it before you can use it again.")
+ else if (dirtiness)
+ . += SPAN_WARNING("\The [src] is covered in muck. You'll need to wipe it down or clean it out before you can use it again.")
+
+#undef NOT_BROKEN
+#undef SCREWDRIVER_BROKEN
+#undef WRENCH_BROKEN
diff --git a/code/modules/cooking/recipes/cultural/recipes_dionae.dm b/code/modules/cooking/recipes/cultural/recipes_dionae.dm
index 00ccf9bf5a7..b5302a0a296 100644
--- a/code/modules/cooking/recipes/cultural/recipes_dionae.dm
+++ b/code/modules/cooking/recipes/cultural/recipes_dionae.dm
@@ -1,5 +1,5 @@
/singleton/recipe/dionae_soup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 10)
fruit = list("cabbage" = 1)
items = list(
diff --git a/code/modules/cooking/recipes/cultural/recipes_human.dm b/code/modules/cooking/recipes/cultural/recipes_human.dm
index 24ee9e3d8cb..7d633b7aba9 100644
--- a/code/modules/cooking/recipes/cultural/recipes_human.dm
+++ b/code/modules/cooking/recipes/cultural/recipes_human.dm
@@ -1,6 +1,6 @@
/singleton/recipe/redcurry
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/drink/milk/cream = 5, /singleton/reagent/spacespice = 2, /singleton/reagent/nutriment/rice = 5)
items = list(
/obj/item/reagent_containers/food/snacks/cutlet,
@@ -10,7 +10,7 @@
result = /obj/item/reagent_containers/food/snacks/redcurry
/singleton/recipe/greencurry
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/drink/milk/cream = 5, /singleton/reagent/spacespice = 2, /singleton/reagent/nutriment/rice = 5)
fruit = list("chili" = 1)
items = list(
@@ -21,7 +21,7 @@
result = /obj/item/reagent_containers/food/snacks/greencurry
/singleton/recipe/yellowcurry
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/drink/milk/cream = 5, /singleton/reagent/spacespice = 2, /singleton/reagent/nutriment/rice = 5)
fruit = list("peanut" = 2, "potato" = 1)
reagent_mix = RECIPE_REAGENT_REPLACE //Simplify end product
@@ -35,31 +35,31 @@
result = /obj/item/reagent_containers/food/snacks/chana_masala
/singleton/recipe/friedrice
- appliance = SKILLET | SAUCEPAN
+ appliance = SKILLET | SAUCEPAN | MICROWAVE
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/rice = 10, /singleton/reagent/nutriment/soysauce = 5)
fruit = list("carrot" = 1, "cabbage" = 1)
reagent_mix = RECIPE_REAGENT_REPLACE //Simplify end product
result = /obj/item/reagent_containers/food/snacks/friedrice
/singleton/recipe/risotto
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/alcohol/wine = 5, /singleton/reagent/nutriment/rice = 10, /singleton/reagent/spacespice = 1)
fruit = list("mushroom" = 1)
reagent_mix = RECIPE_REAGENT_REPLACE //Get that rice and wine outta here
result = /obj/item/reagent_containers/food/snacks/risotto
/singleton/recipe/boiledrice
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/rice = 10)
result = /obj/item/reagent_containers/food/snacks/boiledrice
/singleton/recipe/ricepudding
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/drink/milk = 5, /singleton/reagent/nutriment/rice = 10)
result = /obj/item/reagent_containers/food/snacks/ricepudding
/singleton/recipe/bibimbap
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("carrot" = 1, "cabbage" = 1, "mushroom" = 1)
reagents = list(/singleton/reagent/nutriment/rice = 5, /singleton/reagent/spacespice = 2)
items = list(
@@ -70,7 +70,7 @@
result = /obj/item/reagent_containers/food/snacks/bibimbap
/singleton/recipe/stewedsoymeat
- appliance = SAUCEPAN
+ appliance = SAUCEPAN | MICROWAVE
fruit = list("carrot" = 1, "tomato" = 1)
items = list(
/obj/item/reagent_containers/food/snacks/soydope,
@@ -112,7 +112,7 @@
result = /obj/item/reagent_containers/food/snacks/meatbun
/singleton/recipe/custardbun
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/spacespice = 1, /singleton/reagent/water = 5, /singleton/reagent/nutriment/protein/egg = 3)
items = list(
/obj/item/reagent_containers/food/snacks/doughslice
@@ -121,7 +121,7 @@
result = /obj/item/reagent_containers/food/snacks/custardbun
/singleton/recipe/chickenmomo
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/spacespice = 2, /singleton/reagent/water = 5)
items = list(
/obj/item/reagent_containers/food/snacks/doughslice,
@@ -133,7 +133,7 @@
result = /obj/item/reagent_containers/food/snacks/chickenmomo
/singleton/recipe/veggiemomo
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/spacespice = 2, /singleton/reagent/water = 5)
fruit = list("carrot" = 1, "cabbage" = 1)
items = list(
@@ -145,7 +145,7 @@
result = /obj/item/reagent_containers/food/snacks/veggiemomo
/singleton/recipe/porkbowl
- appliance = SAUCEPAN
+ appliance = SAUCEPAN | MICROWAVE
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/rice = 10)
reagent_mix = RECIPE_REAGENT_REPLACE
items = list(
@@ -154,7 +154,7 @@
result = /obj/item/reagent_containers/food/snacks/porkbowl
/singleton/recipe/crab_legs
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 10, /singleton/reagent/sodiumchloride = 1)
items = list(
/obj/item/reagent_containers/food/snacks/crabmeat,
diff --git a/code/modules/cooking/recipes/cultural/recipes_unathi.dm b/code/modules/cooking/recipes/cultural/recipes_unathi.dm
index a7ee3c7589a..879adbaa9a5 100644
--- a/code/modules/cooking/recipes/cultural/recipes_unathi.dm
+++ b/code/modules/cooking/recipes/cultural/recipes_unathi.dm
@@ -1,5 +1,5 @@
/singleton/recipe/chilied_eggs
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/hotchili,
/obj/item/reagent_containers/food/snacks/boiledegg,
@@ -9,7 +9,7 @@
result = /obj/item/reagent_containers/food/snacks/chilied_eggs
/singleton/recipe/red_sun_special
- appliance = SKILLET | SAUCEPAN
+ appliance = SKILLET | SAUCEPAN | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/sausage,
/obj/item/reagent_containers/food/snacks/cheesewedge
@@ -18,7 +18,7 @@
result = /obj/item/reagent_containers/food/snacks/red_sun_special
/singleton/recipe/hatchling_suprise
- appliance = SKILLET | SAUCEPAN
+ appliance = SKILLET | SAUCEPAN | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/poachedegg,
/obj/item/reagent_containers/food/snacks/bacon,
@@ -29,7 +29,7 @@
result = /obj/item/reagent_containers/food/snacks/hatchling_suprise
/singleton/recipe/riztizkzi_sea
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/egg,
/obj/item/reagent_containers/food/snacks/egg,
@@ -55,7 +55,7 @@
result = /obj/item/reagent_containers/food/snacks/stuffed_meatball
/singleton/recipe/grilled_carp
- appliance = SKILLET // 'grilled' is even in the name
+ appliance = SKILLET | GRILL // 'grilled' is even in the name
items = list(
/obj/item/reagent_containers/food/snacks/fish,
/obj/item/reagent_containers/food/snacks/fish,
@@ -76,7 +76,7 @@
result = /obj/item/reagent_containers/food/snacks/bacon_stick
/singleton/recipe/egg_pancake
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/meatball,
/obj/item/reagent_containers/food/snacks/meatball,
diff --git a/code/modules/cooking/recipes/cultural/recipes_vaurca.dm b/code/modules/cooking/recipes/cultural/recipes_vaurca.dm
index 861b312b061..5723819c105 100644
--- a/code/modules/cooking/recipes/cultural/recipes_vaurca.dm
+++ b/code/modules/cooking/recipes/cultural/recipes_vaurca.dm
@@ -1,15 +1,15 @@
/singleton/recipe/friedkois
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
fruit = list("koisspore" = 1)
result = /obj/item/reagent_containers/food/snacks/friedkois
/singleton/recipe/koiswaffles
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(/obj/item/reagent_containers/food/snacks/soup/kois)
result = /obj/item/reagent_containers/food/snacks/koiswaffles
/singleton/recipe/koisjelly
- appliance = SAUCEPAN
+ appliance = SAUCEPAN | MICROWAVE
fruit = list("koisspore" = 2)
items = list(/obj/item/reagent_containers/food/snacks/soup/kois)
result = /obj/item/reagent_containers/food/snacks/koisjelly
diff --git a/code/modules/cooking/recipes/recipes_baked.dm b/code/modules/cooking/recipes/recipes_baked.dm
index 50ed644cb5c..b8d93b19cc1 100644
--- a/code/modules/cooking/recipes/recipes_baked.dm
+++ b/code/modules/cooking/recipes/recipes_baked.dm
@@ -32,40 +32,40 @@
result_quantity = 2
/singleton/recipe/donkpocket
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/dough,
/obj/item/reagent_containers/food/snacks/meatball
)
- result = /obj/item/reagent_containers/food/snacks/donkpocket //does it make sense for newly made donk to come out cold? no, do I care? coincidentally, also no.
+ result = /obj/item/reagent_containers/food/snacks/donkpocket
+
+/singleton/recipe/donkpocket/make_food(obj/container as obj)
+ . = ..(container)
+ for (var/obj/item/reagent_containers/food/snacks/donkpocket/being_cooked in .)
+ being_cooked?.SetHot()
/singleton/recipe/plumphelmetbiscuit
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
fruit = list("plumphelmet" = 1)
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/flour = 5)
result = /obj/item/reagent_containers/food/snacks/plumphelmetbiscuit
/singleton/recipe/spacylibertyduff
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/alcohol/vodka = 5, /singleton/reagent/drugs/psilocybin = 5)
result = /obj/item/reagent_containers/food/snacks/spacylibertyduff
-/singleton/recipe/hotdiggitydonk //heated donk, in lieu of a microwave
- appliance = OVEN
+/singleton/recipe/hotdiggitydonk
+ appliance = OVEN | MICROWAVE | GRILL
items = list(
/obj/item/reagent_containers/food/snacks/donkpocket
)
- result = /obj/item/reagent_containers/food/snacks/donkpocket/warm
+ result = /obj/item/reagent_containers/food/snacks/donkpocket
-/singleton/recipe/donkteriyaki //heated donk, in lieu of a microwave
- appliance = OVEN
- items = list(/obj/item/reagent_containers/food/snacks/donkpocket/teriyaki)
- result = /obj/item/reagent_containers/food/snacks/donkpocket/teriyaki/warm
-
-/singleton/recipe/donktakoyaki //heated donk, in lieu of a microwave
- appliance = OVEN
- items = list(/obj/item/reagent_containers/food/snacks/donkpocket/takoyaki)
- result = /obj/item/reagent_containers/food/snacks/donkpocket/takoyaki/warm
+/singleton/recipe/hotdiggitydonk/make_food(obj/container as obj)
+ . = ..(container)
+ for (var/obj/item/reagent_containers/food/snacks/donkpocket/being_cooked in .)
+ being_cooked?.SetHot()
/singleton/recipe/meat_lasagna_tray
appliance = OVEN
diff --git a/code/modules/cooking/recipes/recipes_breads.dm b/code/modules/cooking/recipes/recipes_breads.dm
index 571f6145040..a92fc90fda2 100644
--- a/code/modules/cooking/recipes/recipes_breads.dm
+++ b/code/modules/cooking/recipes/recipes_breads.dm
@@ -133,7 +133,7 @@
result = /obj/item/reagent_containers/food/snacks/honeybun
/singleton/recipe/flatbread
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/sliceable/flatdough
)
@@ -165,7 +165,7 @@
result = /obj/item/reagent_containers/food/snacks/cracker
/singleton/recipe/stuffing
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/sodiumchloride = 1, /singleton/reagent/blackpepper = 1)
items = list(
/obj/item/reagent_containers/food/snacks/sliceable/bread
@@ -244,7 +244,7 @@
result = /obj/item/reagent_containers/food/snacks/ntella_bread
/singleton/recipe/slimetoast
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/slimejelly = 5)
items = list(
/obj/item/reagent_containers/food/snacks/breadslice
@@ -252,7 +252,7 @@
result = /obj/item/reagent_containers/food/snacks/jelliedtoast/slime
/singleton/recipe/jelliedtoast
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/nutriment/cherryjelly = 5)
items = list(
/obj/item/reagent_containers/food/snacks/breadslice
@@ -260,7 +260,7 @@
result = /obj/item/reagent_containers/food/snacks/jelliedtoast/cherry
/singleton/recipe/pbtoast
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/nutriment/peanutbutter = 5)
items = list(
/obj/item/reagent_containers/food/snacks/breadslice
@@ -268,7 +268,7 @@
result = /obj/item/reagent_containers/food/snacks/pbtoast
/singleton/recipe/egginthebasket
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/egg,
/obj/item/reagent_containers/food/snacks/breadslice
@@ -286,7 +286,7 @@
result = /obj/item/reagent_containers/food/snacks/garlicbread
/singleton/recipe/honeytoast
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/nutriment/honey = 5)
items = list(
/obj/item/reagent_containers/food/snacks/breadslice
@@ -322,14 +322,14 @@
result = /obj/item/reagent_containers/food/snacks/sandwich
/singleton/recipe/toastedsandwich
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/sandwich
)
result = /obj/item/reagent_containers/food/snacks/toastedsandwich
/singleton/recipe/grilledcheese
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/breadslice,
/obj/item/reagent_containers/food/snacks/breadslice,
@@ -338,7 +338,7 @@
result = /obj/item/reagent_containers/food/snacks/grilledcheese
/singleton/recipe/grilled_mac_and_cheese_sandwich
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/breadslice,
/obj/item/reagent_containers/food/snacks/breadslice,
@@ -347,7 +347,7 @@
result = /obj/item/reagent_containers/food/snacks/grilled_mac_and_cheese
/singleton/recipe/grilled_triple_cheese_crunch_sandwich
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/breadslice,
/obj/item/reagent_containers/food/snacks/breadslice,
@@ -359,7 +359,7 @@
result = /obj/item/reagent_containers/food/snacks/grilled_triple_cheese_crunch_sandwich
/singleton/recipe/crab_leg_grilled_cheese_sandwich
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/breadslice,
/obj/item/reagent_containers/food/snacks/breadslice,
diff --git a/code/modules/cooking/recipes/recipes_confections.dm b/code/modules/cooking/recipes/recipes_confections.dm
index 094a5505a39..a5dde76bd4c 100644
--- a/code/modules/cooking/recipes/recipes_confections.dm
+++ b/code/modules/cooking/recipes/recipes_confections.dm
@@ -113,7 +113,7 @@
result = /obj/item/reagent_containers/food/snacks/crepe/hamcheese
/singleton/recipe/custard
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/drink/milk = 5, /singleton/reagent/sugar = 5, /singleton/reagent/nutriment/protein/egg = 3)
reagent_mix = RECIPE_REAGENT_REPLACE
result = /obj/item/reagent_containers/food/snacks/custard
diff --git a/code/modules/cooking/recipes/recipes_eggs.dm b/code/modules/cooking/recipes/recipes_eggs.dm
index 2225d24b7b7..a3b782aa609 100644
--- a/code/modules/cooking/recipes/recipes_eggs.dm
+++ b/code/modules/cooking/recipes/recipes_eggs.dm
@@ -1,6 +1,6 @@
/singleton/recipe/chocolateegg
- appliance = SAUCEPAN | POT // melt the chocolate
+ appliance = SAUCEPAN | POT | MICROWAVE // melt the chocolate
items = list(
/obj/item/reagent_containers/food/snacks/egg,
/obj/item/reagent_containers/food/snacks/chocolatebar
@@ -8,14 +8,14 @@
result = /obj/item/reagent_containers/food/snacks/chocolateegg
/singleton/recipe/friedegg
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/friedegg/overeasy
)
result = /obj/item/reagent_containers/food/snacks/friedegg
/singleton/recipe/friedegg_easy
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/sodiumchloride = 1, /singleton/reagent/blackpepper = 1)
items = list(
/obj/item/reagent_containers/food/snacks/egg
@@ -23,7 +23,7 @@
result = /obj/item/reagent_containers/food/snacks/friedegg/overeasy
/singleton/recipe/boiledegg
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 5)
reagent_mix = RECIPE_REAGENT_REPLACE
items = list(
@@ -32,7 +32,7 @@
result = /obj/item/reagent_containers/food/snacks/boiledegg
/singleton/recipe/bacon_and_eggs
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/bacon,
/obj/item/reagent_containers/food/snacks/friedegg
diff --git a/code/modules/cooking/recipes/recipes_fryer.dm b/code/modules/cooking/recipes/recipes_fryer.dm
index b0313aacce7..65292604a2f 100644
--- a/code/modules/cooking/recipes/recipes_fryer.dm
+++ b/code/modules/cooking/recipes/recipes_fryer.dm
@@ -6,7 +6,7 @@
result = /obj/item/reagent_containers/food/snacks/fries
/singleton/recipe/cheesyfries
- appliance = SKILLET | MIX // You can reheat it or mix it cold, like some sort of monster.
+ appliance = SKILLET | MIX | MICROWAVE // You can reheat it or mix it cold, like some sort of monster.
items = list(
/obj/item/reagent_containers/food/snacks/fries,
/obj/item/reagent_containers/food/snacks/cheesewedge
@@ -14,7 +14,7 @@
result = /obj/item/reagent_containers/food/snacks/cheesyfries
/singleton/recipe/chilicheesefries
- appliance = SKILLET | SAUCEPAN | MIX // you can reheat it if you'd like
+ appliance = SKILLET | SAUCEPAN | MIX | MICROWAVE // you can reheat it if you'd like
items = list(
/obj/item/reagent_containers/food/snacks/fries,
/obj/item/reagent_containers/food/snacks/cheesewedge,
@@ -70,7 +70,7 @@
result = /obj/item/reagent_containers/food/snacks/sweet_and_sour
/singleton/recipe/wingfangchu
- appliance = FRYER
+ appliance = FRYER | MICROWAVE
reagents = list(/singleton/reagent/nutriment/soysauce = 5)
items = list(
/obj/item/reagent_containers/food/snacks/xenomeat
@@ -86,7 +86,7 @@
result = /obj/item/reagent_containers/food/snacks/roefritters
/singleton/recipe/fries_olympia_cheesy
- appliance = FRYER
+ appliance = FRYER | MICROWAVE
reagents = list(/singleton/reagent/spacespice = 3)
fruit = list("potato" = 1)
items = list(
@@ -96,7 +96,7 @@
result = /obj/item/reagent_containers/food/snacks/fries_olympia_with_cheese
/singleton/recipe/fries_olympia_no_cheese
- appliance = FRYER
+ appliance = FRYER | MICROWAVE
reagents = list(/singleton/reagent/spacespice = 3)
fruit = list("potato" = 1)
reagent_mix = RECIPE_REAGENT_REPLACE //So we don't end up with a ton of potato juice
diff --git a/code/modules/cooking/recipes/recipes_ingredients.dm b/code/modules/cooking/recipes/recipes_ingredients.dm
index 82534698a30..2a033b67ae3 100644
--- a/code/modules/cooking/recipes/recipes_ingredients.dm
+++ b/code/modules/cooking/recipes/recipes_ingredients.dm
@@ -1,4 +1,6 @@
/singleton/recipe/mashedpotato
+ appliance = POT | SAUCEPAN | MICROWAVE
+ reagents = list(/singleton/reagent/drink/milk = 5, /singleton/reagent/sodiumchloride = 1, /singleton/reagent/blackpepper = 1)
fruit = list("potato" = 1)
result = /obj/item/reagent_containers/food/snacks/mashedpotato
diff --git a/code/modules/cooking/recipes/recipes_meat.dm b/code/modules/cooking/recipes/recipes_meat.dm
index 3b6a771502b..df57ca11c4f 100644
--- a/code/modules/cooking/recipes/recipes_meat.dm
+++ b/code/modules/cooking/recipes/recipes_meat.dm
@@ -1,19 +1,19 @@
/singleton/recipe/cutlet
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/rawcutlet
)
result = /obj/item/reagent_containers/food/snacks/cutlet
/singleton/recipe/meatball
- appliance = SKILLET | SAUCEPAN
+ appliance = SKILLET | SAUCEPAN | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/rawmeatball
)
result = /obj/item/reagent_containers/food/snacks/meatball
/singleton/recipe/bacon
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/rawbacon
)
@@ -49,19 +49,19 @@
result_quantity = 6
/singleton/recipe/meatsteak
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/sodiumchloride = 1, /singleton/reagent/blackpepper = 1)
items = list(/obj/item/reagent_containers/food/snacks/meat)
result = /obj/item/reagent_containers/food/snacks/meatsteak
/singleton/recipe/syntisteak
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
reagents = list(/singleton/reagent/sodiumchloride = 1, /singleton/reagent/blackpepper = 1)
items = list(/obj/item/reagent_containers/food/snacks/meat/syntiflesh)
result = /obj/item/reagent_containers/food/snacks/meatsteak
/singleton/recipe/sausage
- appliance = SKILLET
+ appliance = SKILLET | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/meatball,
/obj/item/reagent_containers/food/snacks/cutlet
@@ -112,7 +112,7 @@
result = /obj/item/reagent_containers/food/snacks/donerkebab
/singleton/recipe/meatballs_and_peas
- appliance = SKILLET | SAUCEPAN
+ appliance = SKILLET | SAUCEPAN | MICROWAVE
fruit = list("peas" = 1, "tomato" = 1)
items = list(
/obj/item/reagent_containers/food/snacks/meatball,
diff --git a/code/modules/cooking/recipes/recipes_mexican.dm b/code/modules/cooking/recipes/recipes_mexican.dm
index 601ec2bbd97..f85feaab1b2 100644
--- a/code/modules/cooking/recipes/recipes_mexican.dm
+++ b/code/modules/cooking/recipes/recipes_mexican.dm
@@ -16,7 +16,7 @@
// Tacos
//=========================
/singleton/recipe/taco
- appliance = SKILLET | MIX
+ appliance = SKILLET | MIX | MICROWAVE
items = list(
/obj/item/reagent_containers/food/snacks/tortilla,
/obj/item/reagent_containers/food/snacks/cutlet,
@@ -25,7 +25,7 @@
result = /obj/item/reagent_containers/food/snacks/taco
/singleton/recipe/fish_taco
- appliance = MIX | SKILLET
+ appliance = MIX | SKILLET | MICROWAVE
fruit = list("chili" = 1, "lemon" = 1)
items = list(
/obj/item/reagent_containers/food/snacks/fish,
@@ -37,7 +37,7 @@
//=========================
/singleton/recipe/chips
- appliance = SKILLET | FRYER
+ appliance = SKILLET | FRYER | MICROWAVE
reagents = list(/singleton/reagent/sodiumchloride = 1)
items = list(
/obj/item/reagent_containers/food/snacks/tortilla
@@ -45,7 +45,7 @@
result = /obj/item/reagent_containers/food/snacks/chipplate
/singleton/recipe/nachos
- appliance = SKILLET // melt the cheese!
+ appliance = SKILLET | MICROWAVE // melt the cheese!
items = list(
/obj/item/reagent_containers/food/snacks/chipplate,
/obj/item/reagent_containers/food/snacks/cheesewedge
@@ -68,7 +68,7 @@
reagent_mix = RECIPE_REAGENT_REPLACE //Ingredients are mixed together.
/singleton/recipe/cheesesauce
- appliance = SKILLET | SAUCEPAN // melt the cheese
+ appliance = SKILLET | SAUCEPAN | MICROWAVE // melt the cheese
fruit = list("chili" = 1, "tomato" = 1)
reagents = list(/singleton/reagent/spacespice = 1, /singleton/reagent/blackpepper = 1,/singleton/reagent/sodiumchloride = 1)
items = list(
@@ -78,7 +78,7 @@
reagent_mix = RECIPE_REAGENT_REPLACE //Ingredients are mixed together.
/singleton/recipe/hummus
- appliance = MIX
+ appliance = MIX | MICROWAVE
reagents = list(/singleton/reagent/nutriment/garlicsauce = 10, /singleton/reagent/spacespice = 2)
fruit = list("chickpeas" = 2)
result = /obj/item/reagent_containers/food/snacks/dip/hummus
@@ -86,13 +86,13 @@
// Peanuts
//=========================
/singleton/recipe/peanuts_bowl
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
fruit = list("peanut" = 10)
result = /obj/item/reagent_containers/food/snacks/chipplate/peanuts_bowl
reagent_mix = RECIPE_REAGENT_REPLACE // So the output isn't 40u total
/singleton/recipe/peanuts_bowl_dry
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
fruit = list("dried peanut" = 10)
result = /obj/item/reagent_containers/food/snacks/chipplate/peanuts_bowl
reagent_mix = RECIPE_REAGENT_REPLACE
diff --git a/code/modules/cooking/recipes/recipes_mix.dm b/code/modules/cooking/recipes/recipes_mix.dm
index 52e8258fefe..6b67859194c 100644
--- a/code/modules/cooking/recipes/recipes_mix.dm
+++ b/code/modules/cooking/recipes/recipes_mix.dm
@@ -51,6 +51,7 @@
/singleton/recipe/aesirsalad
fruit = list("goldapple" = 1, "ambrosiadeus" = 1)
result = /obj/item/reagent_containers/food/snacks/salad/aesirsalad
+
/singleton/recipe/validsalad
fruit = list("potato" = 1, "ambrosia" = 3)
items = list(/obj/item/reagent_containers/food/snacks/meatball)
diff --git a/code/modules/cooking/recipes/recipes_noodles.dm b/code/modules/cooking/recipes/recipes_noodles.dm
index c77779e321f..42a571e3a34 100644
--- a/code/modules/cooking/recipes/recipes_noodles.dm
+++ b/code/modules/cooking/recipes/recipes_noodles.dm
@@ -1,7 +1,7 @@
/singleton/recipe/boiledspaghetti
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 5)
items = list(
/obj/item/reagent_containers/food/snacks/spaghetti
@@ -15,6 +15,12 @@
items = list(/obj/item/reagent_containers/food/snacks/spaghetti)
result = /obj/item/reagent_containers/food/snacks/pastatomato
+/singleton/recipe/pastatomatoboiled
+ appliance = SAUCEPAN | POT | MICROWAVE
+ fruit = list("tomato" = 2)
+ items = list(/obj/item/reagent_containers/food/snacks/boiledspaghetti)
+ result = /obj/item/reagent_containers/food/snacks/pastatomato
+
/singleton/recipe/meatballspaghetti
appliance = SAUCEPAN | POT
reagents = list(/singleton/reagent/water = 5)
@@ -25,6 +31,15 @@
)
result = /obj/item/reagent_containers/food/snacks/meatballspaghetti
+/singleton/recipe/meatballspaghettiboiled
+ appliance = SAUCEPAN | POT | MICROWAVE
+ items = list(
+ /obj/item/reagent_containers/food/snacks/boiledspaghetti,
+ /obj/item/reagent_containers/food/snacks/meatball,
+ /obj/item/reagent_containers/food/snacks/meatball
+ )
+ result = /obj/item/reagent_containers/food/snacks/meatballspaghetti
+
/singleton/recipe/spesslaw
appliance = SAUCEPAN | POT
reagents = list(/singleton/reagent/water = 5)
@@ -37,8 +52,19 @@
)
result = /obj/item/reagent_containers/food/snacks/spesslaw
+/singleton/recipe/spesslawboiled
+ appliance = SAUCEPAN | POT | MICROWAVE
+ items = list(
+ /obj/item/reagent_containers/food/snacks/boiledspaghetti,
+ /obj/item/reagent_containers/food/snacks/meatball,
+ /obj/item/reagent_containers/food/snacks/meatball,
+ /obj/item/reagent_containers/food/snacks/meatball,
+ /obj/item/reagent_containers/food/snacks/meatball
+ )
+ result = /obj/item/reagent_containers/food/snacks/spesslaw
+
/singleton/recipe/lomein
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/soysauce = 5)
fruit = list("carrot" = 1, "cabbage" = 1)
items = list(
@@ -69,7 +95,19 @@
reagent_mix = RECIPE_REAGENT_REPLACE
result = /obj/item/reagent_containers/food/snacks/macandcheese
-/singleton/recipe/macandcheese/bacon
+/singleton/recipe/macandcheeseboiled
+ appliance = SAUCEPAN | POT | MICROWAVE
+ items = list(
+ /obj/item/reagent_containers/food/snacks/boiledspaghetti,
+ /obj/item/reagent_containers/food/snacks/cheesewedge,
+ /obj/item/reagent_containers/food/snacks/cheesewedge
+ )
+ reagent_mix = RECIPE_REAGENT_REPLACE
+ result = /obj/item/reagent_containers/food/snacks/macandcheese
+
+/singleton/recipe/macandcheesebacon
+ appliance = SAUCEPAN | POT
+ reagents = list (/singleton/reagent/water = 5)
items = list(
/obj/item/reagent_containers/food/snacks/spaghetti,
/obj/item/reagent_containers/food/snacks/cheesewedge,
@@ -78,6 +116,18 @@
)
result = /obj/item/reagent_containers/food/snacks/macandcheese/bacon
+
+/singleton/recipe/macandcheesebaconboiled
+ appliance = SAUCEPAN | POT | MICROWAVE
+ items = list(
+ /obj/item/reagent_containers/food/snacks/boiledspaghetti,
+ /obj/item/reagent_containers/food/snacks/cheesewedge,
+ /obj/item/reagent_containers/food/snacks/cheesewedge,
+ /obj/item/reagent_containers/food/snacks/bacon
+ )
+ reagent_mix = RECIPE_REAGENT_REPLACE
+ result = /obj/item/reagent_containers/food/snacks/macandcheese/bacon
+
/singleton/recipe/ramenbowl
appliance = SAUCEPAN | POT
reagents = list(/singleton/reagent/water = 10, /singleton/reagent/nutriment/soysauce = 5)
@@ -166,3 +216,14 @@
)
result = /obj/item/reagent_containers/food/snacks/fettuccine_alfredo
reagent_mix = RECIPE_REAGENT_REPLACE
+
+/singleton/recipe/fettuccine_alfredoboiled
+ appliance = SAUCEPAN | POT | MICROWAVE
+ fruit = list("garlic" = 1)
+ items = list(
+ /obj/item/reagent_containers/food/snacks/boiledspaghetti,
+ /obj/item/reagent_containers/food/snacks/spreads/butter,
+ /obj/item/reagent_containers/food/snacks/cheesewedge
+ )
+ result = /obj/item/reagent_containers/food/snacks/fettuccine_alfredo
+ reagent_mix = RECIPE_REAGENT_REPLACE
diff --git a/code/modules/cooking/recipes/recipes_pastries.dm b/code/modules/cooking/recipes/recipes_pastries.dm
index bf73f034348..351d22a185c 100644
--- a/code/modules/cooking/recipes/recipes_pastries.dm
+++ b/code/modules/cooking/recipes/recipes_pastries.dm
@@ -3,7 +3,7 @@
////////////////////////////////////////////MUFFINS////////////////////////////////////////////
/singleton/recipe/muffin
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
reagents = list(/singleton/reagent/drink/milk = 20, /singleton/reagent/sugar = 20)
reagent_mix = RECIPE_REAGENT_REPLACE
items = list(
@@ -109,14 +109,14 @@
result = /obj/item/reagent_containers/food/snacks/waffles
/singleton/recipe/soywafers
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
fruit = list("soybeans" = 1)
reagents = list(/singleton/reagent/nutriment/flour = 10)
reagent_mix = RECIPE_REAGENT_REPLACE
result = /obj/item/reagent_containers/food/snacks/soywafers
/singleton/recipe/rofflewaffles
- appliance = OVEN
+ appliance = OVEN | MICROWAVE
reagents = list(/singleton/reagent/drugs/psilocybin = 5, /singleton/reagent/sugar = 10)
items = list(
/obj/item/reagent_containers/food/snacks/dough,
diff --git a/code/modules/cooking/recipes/recipes_pizza.dm b/code/modules/cooking/recipes/recipes_pizza.dm
index e0679f93c1e..92b4a40a350 100644
--- a/code/modules/cooking/recipes/recipes_pizza.dm
+++ b/code/modules/cooking/recipes/recipes_pizza.dm
@@ -104,3 +104,16 @@
)
result = /obj/item/reagent_containers/food/snacks/bacon_flatbread
+/singleton/recipe/bacon_flatbreadflatbread
+ appliance = OVEN | MICROWAVE
+ fruit = list("tomato" = 2)
+ items = list(
+ /obj/item/reagent_containers/food/snacks/flatbread,
+ /obj/item/reagent_containers/food/snacks/cheesewedge,
+ /obj/item/reagent_containers/food/snacks/bacon,
+ /obj/item/reagent_containers/food/snacks/bacon,
+ /obj/item/reagent_containers/food/snacks/bacon,
+ /obj/item/reagent_containers/food/snacks/bacon
+ )
+ result = /obj/item/reagent_containers/food/snacks/bacon_flatbread
+
diff --git a/code/modules/cooking/recipes/recipes_processed.dm b/code/modules/cooking/recipes/recipes_processed.dm
index 8c196d7344f..54b40412938 100644
--- a/code/modules/cooking/recipes/recipes_processed.dm
+++ b/code/modules/cooking/recipes/recipes_processed.dm
@@ -1,11 +1,11 @@
/singleton/recipe/popcorn
- appliance = SAUCEPAN
+ appliance = SAUCEPAN | MICROWAVE
fruit = list("corn" = 1)
result = /obj/item/reagent_containers/food/snacks/popcorn
// Jellies
/singleton/recipe/amanitajelly
- appliance = SAUCEPAN
+ appliance = SAUCEPAN | MICROWAVE
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/alcohol/vodka = 5, /singleton/reagent/toxin/amatoxin = 5)
result = /obj/item/reagent_containers/food/snacks/amanitajelly
@@ -14,9 +14,14 @@
for (var/obj/item/reagent_containers/food/snacks/amanitajelly/being_cooked in .)
being_cooked.reagents.del_reagent(/singleton/reagent/toxin/amatoxin)
-// Ports from the microwave... yeah
-
/singleton/recipe/mint
- appliance = SAUCEPAN
+ appliance = SAUCEPAN | MICROWAVE
reagents = list(/singleton/reagent/sugar = 5, /singleton/reagent/frostoil = 5)
result = /obj/item/reagent_containers/food/snacks/mint
+
+/singleton/recipe/microchips
+ appliance = MICROWAVE
+ items = list(
+ /obj/item/reagent_containers/food/snacks/rawsticks
+ )
+ result = /obj/item/reagent_containers/food/snacks/microchips
diff --git a/code/modules/cooking/recipes/recipes_soup.dm b/code/modules/cooking/recipes/recipes_soup.dm
index 56e981b338e..75ecd94bcf3 100644
--- a/code/modules/cooking/recipes/recipes_soup.dm
+++ b/code/modules/cooking/recipes/recipes_soup.dm
@@ -1,36 +1,36 @@
/singleton/recipe/meatballsoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("carrot" = 1, "potato" = 1)
reagents = list(/singleton/reagent/water = 10)
items = list(/obj/item/reagent_containers/food/snacks/meatball)
result = /obj/item/reagent_containers/food/snacks/soup/meatball
/singleton/recipe/bloodsoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/blood = 30)
result = /obj/item/reagent_containers/food/snacks/soup/blood
/singleton/recipe/slimesoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 10, /singleton/reagent/slimejelly = 5)
items = list()
result = /obj/item/reagent_containers/food/snacks/soup/slime
/singleton/recipe/vegetablesoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("carrot" = 1, "potato" = 1, "corn" = 1, "eggplant" = 1)
reagents = list(/singleton/reagent/water = 10)
result = /obj/item/reagent_containers/food/snacks/soup/vegetable
/singleton/recipe/nettlesoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("nettle" = 1, "potato" = 1, )
reagents = list(/singleton/reagent/water = 10, /singleton/reagent/nutriment/protein/egg = 3)
result = /obj/item/reagent_containers/food/snacks/soup/nettle
/singleton/recipe/mysterysoup
- appliance = POT
+ appliance = POT | MICROWAVE
reagents = list(/singleton/reagent/water = 10, /singleton/reagent/nutriment/protein/egg = 3)
items = list(
/obj/item/reagent_containers/food/snacks/badrecipe,
@@ -41,30 +41,30 @@
result = /obj/item/reagent_containers/food/snacks/soup/mystery
/singleton/recipe/wishsoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
reagents = list(/singleton/reagent/water = 20)
result= /obj/item/reagent_containers/food/snacks/soup/wish
/singleton/recipe/onionsoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("onion" = 1)
reagents = list(/singleton/reagent/water = 10)
result = /obj/item/reagent_containers/food/snacks/soup/onion
/singleton/recipe/tomatosoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("tomato" = 2)
reagents = list(/singleton/reagent/water = 10)
result = /obj/item/reagent_containers/food/snacks/soup/tomato
/singleton/recipe/spiralsoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("bluespacetomato" = 1, "icechili" = 1 )
reagents = list(/singleton/reagent/water = 10, /singleton/reagent/drink/milk/cream = 5)
result = /obj/item/reagent_containers/food/snacks/soup/spiralsoup
/singleton/recipe/misosoup
- appliance = POT
+ appliance = POT | MICROWAVE
reagents = list(/singleton/reagent/water = 10)
items = list(
/obj/item/reagent_containers/food/snacks/soydope,
@@ -75,20 +75,20 @@
result = /obj/item/reagent_containers/food/snacks/soup/miso
/singleton/recipe/mushroomsoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("mushroom" = 1)
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/drink/milk = 5)
reagent_mix = RECIPE_REAGENT_REPLACE
result = /obj/item/reagent_containers/food/snacks/soup/mushroom
/singleton/recipe/beetsoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("whitebeet" = 1, "cabbage" = 1)
reagents = list(/singleton/reagent/water = 10)
result = /obj/item/reagent_containers/food/snacks/soup/beet
/singleton/recipe/krakensoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("pumpkin" = 1)
items = list(/obj/item/reagent_containers/food/snacks/squidmeat)
reagents = list(/singleton/reagent/water = 10, /singleton/reagent/spacespice = 2)
@@ -96,7 +96,7 @@
result = /obj/item/reagent_containers/food/snacks/soup/krakensoup
/singleton/recipe/peasoup
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("whitebeet" = 1, "peas" = 1, "carrot" = 1)
reagents = list(/singleton/reagent/water = 10)
result = /obj/item/reagent_containers/food/snacks/soup/pea
@@ -140,13 +140,13 @@
result = /obj/item/reagent_containers/food/snacks/bearchili
/singleton/recipe/hotchili
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("chili" = 1, "tomato" = 1)
items = list(/obj/item/reagent_containers/food/snacks/meat)
result = /obj/item/reagent_containers/food/snacks/hotchili
/singleton/recipe/coldchili
- appliance = SAUCEPAN | POT
+ appliance = SAUCEPAN | POT | MICROWAVE
fruit = list("icechili" = 1, "tomato" = 1)
items = list(/obj/item/reagent_containers/food/snacks/meat)
result = /obj/item/reagent_containers/food/snacks/coldchili
diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm
index 034ec2332d2..03595663f47 100644
--- a/code/modules/paperwork/paper.dm
+++ b/code/modules/paperwork/paper.dm
@@ -816,16 +816,6 @@ ABSTRACT_TYPE(/obj/item/paper/fluff)
update_space(src.info)
-// Used in the deck 3 cafe on the SCCV Horizon.
-/obj/item/paper/fluff/microwave
- name = "\improper RE: Where are our microwaves?"
- desc = "A paper."
- info = "2464-04-30 04:50 GST
E-Mail Title: RE: Where are our microwaves?\
-
We are sorry for the lack of a microwave, but the transport got misdirected on the way.
-Orion Express Customer \
- Service
2464-04-30 07:50 GST
E-Mail Title: RE: Where are our microwaves?\
-
We apologize for the lack of a microwave. As compensation, employees are given a donut box. Please enjoy.
-SCC Internal \
- Affairs"
-
/// Used in the bunker on the SCCV Horizon.
/obj/item/paper/fluff/bunker
name = "bunker evacuation route instructions"
diff --git a/code/modules/reagents/reagent_containers/food/snacks/baked.dm b/code/modules/reagents/reagent_containers/food/snacks/baked.dm
index 74d3968dfd5..1b16eb6785c 100644
--- a/code/modules/reagents/reagent_containers/food/snacks/baked.dm
+++ b/code/modules/reagents/reagent_containers/food/snacks/baked.dm
@@ -61,8 +61,8 @@
filling_color = "#BD8939"
/obj/item/reagent_containers/food/snacks/donkpocket
- name = "Donk-pocket"
- desc = "The cold, reheatable food of choice for the seasoned spaceman."
+ name = "\improper Donk-pocket"
+ desc = "A mass produced shelf-stable turnover. The reheatable food of choice for the seasoned spaceman."
icon = 'icons/obj/item/reagent_containers/food/baked.dmi'
icon_state = "donkpocket"
filling_color = "#DEDEAB"
@@ -70,59 +70,123 @@
reagents_to_add = list(/singleton/reagent/nutriment = 2, /singleton/reagent/nutriment/protein = 2)
reagent_data = list(/singleton/reagent/nutriment = list("heartiness" = 1, "dough" = 2))
-/obj/item/reagent_containers/food/snacks/donkpocket/warm
- name = "cooked Donk-pocket"
- desc = "The cooked, reheatable food of choice for the seasoned spaceman."
- reagents_to_add = list(/singleton/reagent/nutriment = 3, /singleton/reagent/nutriment/protein = 1, /singleton/reagent/tricordrazine = 5)
- reagent_data = list(/singleton/reagent/nutriment = list("warm heartiness" = 1, "dough" = 2))
+ /// Whether the donk pocket is currently hot. Hot donk pockets have additional reagents
+ var/is_hot = FALSE
+
+ /// Whether the donk pocket is able to be made hot without a microwave by using it in-hand
+ var/can_self_heat = FALSE
+
+ /// Whether the donk pocket was heated up already. Reheating does not re-add the extra reagents.
+ var/was_heated = FALSE
+
+ /// The reagents to be added to the donk pocket when it is made hot (and removed when made cold)
+ var/list/hot_reagents = list(/singleton/reagent/tricordrazine = 5)
+
+ /// The reagents to be added to the donk pocket when it is initialized
+ var/list/filling_options
+
+/obj/item/reagent_containers/food/snacks/donkpocket/Initialize()
+ . = ..()
+ if (. == INITIALIZE_HINT_QDEL)
+ return
+ if (filling_options)
+ SetInitialReagents(filling_options)
+
+/obj/item/reagent_containers/food/snacks/donkpocket/standard_feed_mob(mob/living/consumer, mob/living/feeder)
+ if (can_self_heat)
+ if (feeder)
+ feeder.visible_message(
+ SPAN_ITALIC("\The [feeder] tears open \a [src], destroying the self-heating packaging."),
+ SPAN_ITALIC("You tear open \the [src], destroying the self-heating packaging."),
+ SPAN_ITALIC("You hear plastic packaging crinkling."),
+ range = 3
+ )
+ can_self_heat = FALSE
+ ..()
+
+
+/obj/item/reagent_containers/food/snacks/donkpocket/examine(mob/user, distance, is_adjacent, infix, suffix, show_extended)
+ . = ..()
+ if (distance > 1)
+ return
+ if (!initial(can_self_heat))
+ return
+ to_chat(user, "This one can self-heat[can_self_heat ? "." : " but the heaters are used up."]")
+
+
+/obj/item/reagent_containers/food/snacks/donkpocket/attack_self(mob/living/user)
+ if (!initial(can_self_heat))
+ return
+ SetHot(user, TRUE)
+
+
+/obj/item/reagent_containers/food/snacks/donkpocket/proc/SetHot(mob/living/user, attempt_self_heat)
+ if (is_hot)
+ to_chat(user, SPAN_NOTICE("\The [src] is already hot!"))
+ return
+ if (attempt_self_heat)
+ if (!can_self_heat)
+ if (!initial(can_self_heat))
+ return
+ to_chat(user, SPAN_WARNING("\The [src]'s heaters are used up. Use a microwave."))
+ return
+ can_self_heat = FALSE
+ is_hot = TRUE
+ if (attempt_self_heat)
+ to_chat(user, SPAN_NOTICE("A comforting warmth spreads through \the [src]. It's ready to eat!"))
+ if (!was_heated)
+ for(var/reagent in hot_reagents)
+ reagents.add_reagent(reagent, hot_reagents[reagent])
+ was_heated = TRUE
+ name = "hot [name]"
+ addtimer(CALLBACK(src, PROC_REF(UnsetHot)), 7 MINUTES)
+
+/obj/item/reagent_containers/food/snacks/donkpocket/proc/UnsetHot()
+ if (!is_hot)
+ return
+ is_hot = FALSE
+ name = initial(name)
+ visible_message(SPAN_ITALIC("\The [src] cools down."), range = 1)
+ for (var/reagent in hot_reagents)
+ reagents.del_reagent(reagent)
+
+/obj/item/reagent_containers/food/snacks/donkpocket/proc/SetInitialReagents(list/options, amount = 3)
+ var/list/entry = pick(options)
+ if (!islist(entry))
+ reagents.add_reagent(entry, amount)
+ return
+ var/sub_amount = amount / length(entry)
+ for (var/reagent in entry)
+ reagents.add_reagent(reagent, sub_amount)
/obj/item/reagent_containers/food/snacks/donkpocket/sinpocket
+ name = "premium Donk-pocket"
+ desc = "A \"premium\" shelf-stable turnover. Possibly contains \"real\" fruit paste. Crush the packaging to cook it on the go!"
+ filling_color = "#6d6d00"
+ can_self_heat = TRUE
reagent_data = list(/singleton/reagent/nutriment = list("delicious cruelty" = 1, "dough" = 2))
- filling_color = "#6D6D00"
- var/has_been_heated = FALSE
-
- reagents_to_add = list(/singleton/reagent/nutriment/protein = 1, /singleton/reagent/nutriment = 3)
+ hot_reagents = list(
+ /singleton/reagent/drink/doctorsdelight = 4,
+ /singleton/reagent/hyperzine = 0.5,
+ /singleton/reagent/synaptizine = 0.1
+ )
/obj/item/reagent_containers/food/snacks/donkpocket/sinpocket/antagonist_hints(mob/user, distance, is_adjacent)
. += ..()
. += "Use it in hand to heat and release chemicals."
-/obj/item/reagent_containers/food/snacks/donkpocket/sinpocket/attack_self(mob/user)
- if(has_been_heated)
- to_chat(user, SPAN_NOTICE("The heating chemicals have already been spent."))
- return
- has_been_heated = TRUE
- user.visible_message(SPAN_NOTICE("[user] crushes \the [src] package."), "You crush \the [src] package and feel it rapidly heat up.")
- name = "cooked Donk-pocket"
- desc = "The cooked, reheatable food of choice for the seasoned spaceman."
- reagents.add_reagent(/singleton/reagent/drink/doctorsdelight, 5)
- reagents.add_reagent(/singleton/reagent/hyperzine, 1.5)
- reagents.add_reagent(/singleton/reagent/synaptizine, 1.25)
-
/obj/item/reagent_containers/food/snacks/donkpocket/teriyaki
name = "teriyaki Donk-pocket"
- desc = "The cold, reheatable food of choice for the seasoned salaryman."
+ desc = "A mass produced shelf-stable turnover. The reheatable food of choice for the seasoned salaryman."
filling_color = "#8e4619"
reagent_data = list(/singleton/reagent/nutriment = list("sweet and savory" = 1, "dough" = 2))
-/obj/item/reagent_containers/food/snacks/donkpocket/teriyaki/warm
- name = "cooked teriyaki Donk-pocket"
- desc = "The cooked, reheatable food of choice for the seasoned salaryman."
- reagents_to_add = list(/singleton/reagent/nutriment = 3, /singleton/reagent/nutriment/protein = 1, /singleton/reagent/tricordrazine = 5)
- reagent_data = list(/singleton/reagent/nutriment = list("warm sweet and savory" = 1, "dough" = 2))
-
/obj/item/reagent_containers/food/snacks/donkpocket/takoyaki
name = "takoyaki Donk-pocket"
- desc = "The cold, reheatable food of choice for the seasoned salaryman."
+ desc = "A mass produced shelf-stable turnover. The reheatable food of choice for the seasoned salaryman."
filling_color = "#8e4619"
reagent_data = list(/singleton/reagent/nutriment = list("takoyaki" = 1, "dough" = 2))
-/obj/item/reagent_containers/food/snacks/donkpocket/takoyaki/warm
- name = "cooked takoyaki Donk-pocket"
- desc = "The cooked, reheatable food of choice for the seasoned salaryman."
- reagents_to_add = list(/singleton/reagent/nutriment = 3, /singleton/reagent/nutriment/protein = 1, /singleton/reagent/tricordrazine = 5)
- reagent_data = list(/singleton/reagent/nutriment = list("warm takoyaki" = 1, "dough" = 2))
-
/obj/item/reagent_containers/food/snacks/spacylibertyduff
name = "spacy liberty duff"
desc = "Jello gelatin, from Alfred Hubbard's cookbook."
diff --git a/code/modules/reagents/reagent_containers/food/snacks/fryer.dm b/code/modules/reagents/reagent_containers/food/snacks/fryer.dm
index f4b103503bc..7a5fdd84b86 100644
--- a/code/modules/reagents/reagent_containers/food/snacks/fryer.dm
+++ b/code/modules/reagents/reagent_containers/food/snacks/fryer.dm
@@ -50,7 +50,7 @@
/obj/item/reagent_containers/food/snacks/microchips
name = "micro chips"
- desc = "Soft and rubbery. should have fried them"
+ desc = "Soft and rubbery. Should have fried them."
icon = 'icons/obj/item/reagent_containers/food/fryer.dmi'
icon_state = "microchips"
trash = /obj/item/trash/plate
diff --git a/code/modules/reagents/reagent_containers/food/snacks/ingredients.dm b/code/modules/reagents/reagent_containers/food/snacks/ingredients.dm
index d50b66f7731..4ed8c33c56a 100644
--- a/code/modules/reagents/reagent_containers/food/snacks/ingredients.dm
+++ b/code/modules/reagents/reagent_containers/food/snacks/ingredients.dm
@@ -242,7 +242,7 @@
filling_color = "#EDDD00"
center_of_mass = list("x"=16, "y"=11)
- reagents_to_add = list(/singleton/reagent/nutriment = 4)
+ reagents_to_add = list(/singleton/reagent/nutriment = 6)
reagent_data = list(/singleton/reagent/nutriment = list("mashed potatoes" = 4))
bitesize = 2
diff --git a/html/changelogs/wezzy_michaelwave.yml b/html/changelogs/wezzy_michaelwave.yml
new file mode 100644
index 00000000000..e8819f1b088
--- /dev/null
+++ b/html/changelogs/wezzy_michaelwave.yml
@@ -0,0 +1,59 @@
+################################
+# Example Changelog File
+#
+# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
+#
+# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
+# When it is, any changes listed below will disappear.
+#
+# Valid Prefixes:
+# bugfix
+# - (fixes bugs)
+# wip
+# - (work in progress)
+# qol
+# - (quality of life)
+# soundadd
+# - (adds a sound)
+# sounddel
+# - (removes a sound)
+# rscadd
+# - (adds a feature)
+# rscdel
+# - (removes a feature)
+# imageadd
+# - (adds an image or sprite)
+# imagedel
+# - (removes an image or sprite)
+# spellcheck
+# - (fixes spelling or grammar)
+# experiment
+# - (experimental change)
+# balance
+# - (balance changes)
+# code_imp
+# - (misc internal code change)
+# refactor
+# - (refactors code)
+# config
+# - (makes a change to the config files)
+# admin
+# - (makes changes to administrator tools)
+# server
+# - (miscellaneous changes to server)
+#################################
+
+# Your name.
+author: Wowzewow (Wezzy)
+
+# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
+delete-after: True
+
+# Any changes you've made. See valid prefix list above.
+# INDENT WITH TWO SPACES. NOT TABS. SPACES.
+# SCREW THIS UP AND IT WON'T WORK.
+# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit.
+# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog.
+changes:
+ - rscadd: "Readds microwaves. They've got most of their old recipes, give or take. They've been remapped in where appropriate."
+ - imageadd: "Resprites the small oven."
diff --git a/icons/mob/screen/radial.dmi b/icons/mob/screen/radial.dmi
index cabda5bc2e0..d9c2f218ad7 100644
Binary files a/icons/mob/screen/radial.dmi and b/icons/mob/screen/radial.dmi differ
diff --git a/icons/obj/item/reagent_containers/cooking_container.dmi b/icons/obj/item/reagent_containers/cooking_container.dmi
index d07c7e7d051..55f0ef7d7eb 100644
Binary files a/icons/obj/item/reagent_containers/cooking_container.dmi and b/icons/obj/item/reagent_containers/cooking_container.dmi differ
diff --git a/icons/obj/machinery/cooking_machines.dmi b/icons/obj/machinery/cooking_machines.dmi
index f0bf1855d3b..2d167284a02 100644
Binary files a/icons/obj/machinery/cooking_machines.dmi and b/icons/obj/machinery/cooking_machines.dmi differ
diff --git a/maps/sccv_horizon/sccv_horizon.dmm b/maps/sccv_horizon/sccv_horizon.dmm
index 539bd29d065..b138fb13274 100644
--- a/maps/sccv_horizon/sccv_horizon.dmm
+++ b/maps/sccv_horizon/sccv_horizon.dmm
@@ -6055,6 +6055,7 @@
/area/horizon/engineering/hallway/fore)
"aOA" = (
/obj/structure/table/standard,
+/obj/item/stack/packageWrap,
/turf/simulated/floor/tiled,
/area/horizon/operations/break_room)
"aOI" = (
@@ -62669,6 +62670,9 @@
/obj/item/device/radio/intercom/expedition/west,
/obj/structure/table/stone/marble,
/obj/machinery/light/small,
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 6
+ },
/turf/simulated/floor/tiled/white,
/area/horizon/shuttle/intrepid/buffet)
"iSu" = (
@@ -73626,15 +73630,8 @@
"kuv" = (
/obj/structure/table/rack,
/obj/effect/floor_decal/industrial/outline/grey,
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package"
- },
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package";
- pixel_y = 4
- },
+/obj/item/storage/box/snack,
+/obj/item/storage/box/snack,
/turf/simulated/floor/tiled,
/area/horizon/security/brig)
"kuy" = (
@@ -78572,16 +78569,15 @@
pixel_x = 32
},
/obj/structure/table/stone/marble,
-/obj/item/pen/black{
- pixel_x = 7;
- pixel_y = 6
- },
/obj/item/reagent_containers/cooking_container/board/bowl{
pixel_y = -13
},
/obj/effect/floor_decal/spline/plain{
dir = 4
},
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 6
+ },
/turf/simulated/floor/lino,
/area/horizon/service/cafeteria)
"lem" = (
@@ -81350,6 +81346,9 @@
dir = 4
},
/obj/structure/table/steel,
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 6
+ },
/turf/simulated/floor/tiled/dark,
/area/horizon/engineering/break_room)
"lya" = (
@@ -85225,11 +85224,8 @@
pixel_x = 32
},
/obj/structure/table/standard,
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package"
- },
/obj/effect/floor_decal/spline/plain,
+/obj/item/storage/box/donkpockets,
/turf/simulated/floor/tiled/white,
/area/horizon/operations/break_room)
"maQ" = (
@@ -92187,6 +92183,8 @@
/obj/effect/floor_decal/corner/dark_blue{
dir = 6
},
+/obj/structure/table/reinforced,
+/obj/item/storage/box/donkpockets,
/turf/simulated/floor/tiled,
/area/horizon/security/brig)
"ngj" = (
@@ -105646,10 +105644,7 @@
dir = 4
},
/obj/structure/table/reinforced/steel,
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package"
- },
+/obj/item/storage/box/donkpockets,
/turf/simulated/floor/carpet/rubber,
/area/horizon/engineering/bluespace_drive/monitoring)
"pbn" = (
@@ -121734,6 +121729,10 @@
/obj/structure/engineer_maintenance/pipe{
dir = 4
},
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 6
+ },
+/obj/structure/table/reinforced,
/turf/simulated/floor/tiled,
/area/horizon/security/brig)
"rwn" = (
@@ -127302,7 +127301,9 @@
dir = 6
},
/obj/structure/table/reinforced/steel,
-/obj/random/hardhat,
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 6
+ },
/turf/simulated/floor/carpet/rubber,
/area/horizon/engineering/bluespace_drive/monitoring)
"slt" = (
@@ -131880,19 +131881,24 @@
/area/antag/actor)
"sQX" = (
/obj/structure/table/standard,
-/obj/item/storage/box/fancy/donut,
/obj/machinery/alarm/north{
dir = 4;
pixel_y = 0;
pixel_x = 10
},
/obj/item/storage/box/drinkingglasses{
- pixel_y = 15;
pixel_x = 6
},
/obj/item/storage/box/drinkingglasses{
- pixel_y = 15;
- pixel_x = -9
+ pixel_x = 6;
+ pixel_y = -8
+ },
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 12
+ },
+/obj/item/storage/box/donkpockets{
+ pixel_x = -11;
+ pixel_y = -5
},
/turf/simulated/floor/tiled/full,
/area/horizon/command/bridge/cciaroom)
@@ -133189,13 +133195,13 @@
/obj/structure/disposalpipe/segment{
dir = 4
},
-/obj/machinery/recharger{
- pixel_y = 3
- },
/obj/machinery/camera/network/engineering{
c_tag = "Engineering - Meeting Room";
dir = 1
},
+/obj/item/storage/box/donkpockets{
+ pixel_y = 5
+ },
/turf/simulated/floor/tiled/dark,
/area/horizon/engineering/break_room)
"tbK" = (
@@ -134759,12 +134765,18 @@
/obj/effect/floor_decal/corner_wide/yellow/diagonal,
/obj/structure/table/steel,
/obj/item/storage/box/fancy/crayons/chalkbox{
- pixel_y = 5
+ pixel_y = 5;
+ pixel_x = -14
+ },
+/obj/item/storage/box/fancy/crayons/chalkbox{
+ pixel_x = -14
},
-/obj/item/storage/box/fancy/crayons/chalkbox,
/obj/structure/disposalpipe/segment{
dir = 4
},
+/obj/machinery/recharger{
+ pixel_y = 3
+ },
/turf/simulated/floor/tiled/dark,
/area/horizon/engineering/break_room)
"tmR" = (
@@ -150664,10 +150676,8 @@
"vwY" = (
/obj/effect/floor_decal/corner_wide/grey/diagonal,
/obj/structure/table/standard,
-/obj/item/stack/packageWrap,
-/obj/random/pottedplant_small{
- pixel_x = -1;
- pixel_y = 9
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 6
},
/turf/simulated/floor/tiled/white,
/area/horizon/operations/break_room)
@@ -167059,6 +167069,9 @@
/obj/structure/closet/walllocker/medical/firstaid{
pixel_y = -32
},
+/obj/machinery/appliance/cooker/microwave{
+ pixel_y = 6
+ },
/turf/simulated/floor/tiled/dark/full,
/area/horizon/service/kitchen)
"xJm" = (
diff --git a/maps/sccv_horizon/submaps/ops_warehouse_small_storage.dmm b/maps/sccv_horizon/submaps/ops_warehouse_small_storage.dmm
index fb17e1d46b4..622baec97dc 100644
--- a/maps/sccv_horizon/submaps/ops_warehouse_small_storage.dmm
+++ b/maps/sccv_horizon/submaps/ops_warehouse_small_storage.dmm
@@ -141,23 +141,11 @@
/turf/template_noop,
/area/template_noop)
"cQ" = (
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package"
- },
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package"
- },
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package"
- },
-/obj/item/storage/box/snack{
- desc = "A box full of snack foods. A label is attached that reads, 'Sorry about the microwaves.'";
- name = "corporate care package"
- },
-/obj/structure/table/rack/no_cargo,
+/obj/structure/table/rack/folding_table,
+/obj/item/storage/box/donkpockets,
+/obj/item/storage/box/donkpockets,
+/obj/item/storage/box/donkpockets,
+/obj/item/storage/box/donkpockets,
/turf/template_noop,
/area/template_noop)
"cU" = (
@@ -518,9 +506,8 @@
/turf/template_noop,
/area/template_noop)
"lO" = (
-/obj/item/storage/box/candy,
-/obj/item/storage/box/candy,
-/obj/structure/table/rack/no_cargo,
+/obj/structure/table/rack/folding_table,
+/obj/machinery/appliance/cooker/microwave,
/turf/template_noop,
/area/template_noop)
"lP" = (
@@ -690,6 +677,12 @@
/obj/item/material/shard/wood,
/turf/template_noop,
/area/template_noop)
+"pT" = (
+/obj/structure/table/rack/folding_table,
+/obj/item/storage/box/candy,
+/obj/item/storage/box/candy,
+/turf/template_noop,
+/area/template_noop)
"qo" = (
/obj/effect/map_effect/marker/mapmanip/submap/extract/sccv_horizon/ops_warehouse_small_storage,
/obj/structure/closet/crate/miningcart/ore,
@@ -2426,7 +2419,7 @@ Gz
Gz
Gz
sW
-Gz
+pT
Gz
Gz
Gz