From f427dd76b52e5ebd388e1e7116dd59ba76dd4b40 Mon Sep 17 00:00:00 2001
From: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Date: Fri, 3 Apr 2026 19:47:59 -0500
Subject: [PATCH] Revamps food menu sorting (#95529)
## About The Pull Request
- Adds an `EGG` foodtype
- All food recipes are `CAT_FOOD`
Foods now have three sub categories to sort from
Cuisines - correspond to Lizard, Martian, Mexican, etc.
Dishes - correspond to pizza, bread, pastry, etc.
Meals - correspond to breakfast, main, dessert, etc.
In the crafting menu, you can select any number or combination of
cuisine, dish, and meal.
You can even click two dishes or two cuisines to see results from those
two dish categories or cuisine categories specifically.
- De-capitalized (or \improper'd) several foods for proper formatting
## Why It's Good For The Game
- `EGG` foodtype was added solely to replace the old `CAT_EGG`. Now you
can filter by egg foodtype in the `types` subtab.
- I was playing chef recently and I was a little frustrated at the food
grouping. If you want to find all available pizzas, it's split between
moth and pizza. If you want to find all available soups, that's split
between soup, lizard, moth, and martian. Adding more granularity allows
for chefs to find exactly what they're looking a lot faster.
- Formatting
## Changelog
:cl: Melbert
qol: "Egg" foodtype now exists for better food sorting, though no
species in particular likes or dislikes it at the moment.
qol: Food crafting recipes now have three sub categories - Cuisine type,
Dish type, and Meal type. You can now filter between "Moth Pizzas" or
"Lizard Soups" rather than needing to guess if the recipe is in "Pizza"
or "Mothic".
spellcheck: de-capitalized several foods
/:cl:
---
code/__DEFINES/crafting.dm | 58 ++--
code/__DEFINES/food.dm | 4 +
code/_globalvars/lists/crafting.dm | 19 --
code/game/objects/items/food/bread.dm | 6 +-
code/game/objects/items/food/burgers.dm | 4 +-
code/game/objects/items/food/cake.dm | 2 +-
code/game/objects/items/food/egg.dm | 22 +-
code/game/objects/items/food/frozen.dm | 6 +-
code/game/objects/items/food/lizard.dm | 10 +-
code/game/objects/items/food/martian.dm | 34 +-
code/game/objects/items/food/meatdish.dm | 20 +-
code/game/objects/items/food/mexican.dm | 2 +-
code/game/objects/items/food/misc.dm | 4 +-
code/game/objects/items/food/moth.dm | 2 +-
code/game/objects/items/food/packaged.dm | 4 +-
code/game/objects/items/food/salad.dm | 8 +-
code/game/objects/items/food/sandwichtoast.dm | 2 +-
code/game/objects/items/food/soup.dm | 2 +-
code/game/objects/items/food/spaghetti.dm | 4 +-
code/game/objects/items/food/sweets.dm | 2 +-
code/modules/events/holiday/easter.dm | 17 +-
.../food_and_drinks/recipes/food_mixtures.dm | 32 +-
.../food_and_drinks/recipes/soup_guide.dm | 16 +-
.../recipes/tablecraft/recipes_bread.dm | 56 ++--
.../recipes/tablecraft/recipes_burger.dm | 92 +++---
.../recipes/tablecraft/recipes_cake.dm | 84 +++--
.../recipes/tablecraft/recipes_egg.dm | 16 +-
.../recipes/tablecraft/recipes_frozen.dm | 36 ++-
.../recipes/tablecraft/recipes_guide.dm | 295 ++++++++++++------
.../recipes/tablecraft/recipes_lizard.dm | 142 ++++++---
.../recipes/tablecraft/recipes_martian.dm | 273 ++++++++++------
.../recipes/tablecraft/recipes_meat.dm | 69 ++--
.../recipes/tablecraft/recipes_mexican.dm | 67 ++--
.../recipes/tablecraft/recipes_misc.dm | 118 +++----
.../recipes/tablecraft/recipes_moth.dm | 119 ++++---
.../recipes/tablecraft/recipes_pastry.dm | 92 +++---
.../recipes/tablecraft/recipes_pie.dm | 72 +++--
.../recipes/tablecraft/recipes_pizza.dm | 3 +-
.../recipes/tablecraft/recipes_salad.dm | 31 +-
.../recipes/tablecraft/recipes_sandwich.dm | 26 +-
.../recipes/tablecraft/recipes_seafood.dm | 40 +--
.../recipes/tablecraft/recipes_spaghetti.dm | 44 ++-
.../PersonalCrafting/GroupTitle.tsx | 36 +++
.../interfaces/PersonalCrafting/constants.ts | 50 ++-
.../content/RecipeContent.tsx | 2 +-
.../interfaces/PersonalCrafting/helpers.ts | 14 +
.../interfaces/PersonalCrafting/index.tsx | 253 ++++++++++++---
.../tgui/interfaces/PersonalCrafting/types.ts | 8 +-
.../tgui/interfaces/PreferencesMenu/types.ts | 1 +
49 files changed, 1488 insertions(+), 831 deletions(-)
diff --git a/code/__DEFINES/crafting.dm b/code/__DEFINES/crafting.dm
index a4bbdb7a234..413b744897d 100644
--- a/code/__DEFINES/crafting.dm
+++ b/code/__DEFINES/crafting.dm
@@ -47,27 +47,45 @@
#define NEVER_BLACKLIST_RESULT FALSE
//food/drink crafting defines
-//When adding new defines, please make sure to also add them to the encompassing list
#define CAT_FOOD "Foods"
-#define CAT_BREAD "Breads"
-#define CAT_BURGER "Burgers"
-#define CAT_CAKE "Cakes"
-#define CAT_EGG "Egg-Based Food"
-#define CAT_LIZARD "Lizard Food"
-#define CAT_MEAT "Meats"
-#define CAT_SEAFOOD "Seafood"
-#define CAT_MARTIAN "Martian Food"
-#define CAT_MISCFOOD "Misc. Food"
-#define CAT_MEXICAN "Mexican Food"
-#define CAT_MOTH "Mothic Food"
-#define CAT_PASTRY "Pastries"
-#define CAT_PIE "Pies"
-#define CAT_PIZZA "Pizzas"
-#define CAT_SALAD "Salads"
-#define CAT_SANDWICH "Sandwiches"
-#define CAT_SOUP "Soups"
-#define CAT_SPAGHETTI "Spaghettis"
-#define CAT_ICE "Frozen"
+ // cuisine categories
+ #define CUISINE_ITALIAN "Italian"
+ #define CUISINE_JAPANESE "Japanese"
+ #define CUISINE_LIZARD "Lizard"
+ #define CUISINE_MARTIAN "Martian"
+ #define CUISINE_MEXICAN "Mexican"
+ #define CUISINE_MOTHIC "Mothic"
+ #define CUISINE_TERRAN "Terran" // catch-all for earth food that we don't have a more specific category for
+ // dish categories
+ #define DISH_BREAD "Bread"
+ #define DISH_BURGER "Burger"
+ #define DISH_BURRITO "Burrito" // also includes wraps/enchilada
+ #define DISH_CAKE "Cake"
+ #define DISH_CANDY "Candy"
+ #define DISH_CONDIMENT "Condiment" // catch-all for sauces, dressings, sides, etc
+ #define DISH_COOKIE "Cookie"
+ #define DISH_FROZEN "Frozen" // catch-all for ice cream, popsicles, etc
+ #define DISH_MEAT "Meat" // anything often served on its own as a "meat dish" (like steak), though it may include tofu
+ #define DISH_NOODLES "Noodles"
+ #define DISH_PASTRY "Pastry"
+ #define DISH_PIE "Pie"
+ #define DISH_PIZZA "Pizza"
+ #define DISH_RICE "Rice" // practically anything with rice in it
+ #define DISH_SALAD "Salad" // often includes salad adjacent (ie: coleslaw, stir fry)
+ #define DISH_SANDWICH "Sandwich" // divorced from burger for better filtering. also, yes, includes hotdogs.
+ #define DISH_SOUP "Soup"
+ #define DISH_SUSHI "Sushi"
+ #define DISH_TACO "Taco"
+ #define DISH_UNCATEGORIZED "Uncategorized"
+ // meal categories
+ #define MEAL_APPETIZER "Appetizer"
+ #define MEAL_BREAKFAST "Breakfast"
+ #define MEAL_COMPONENT "Component" // stuff you're not intended to eat
+ #define MEAL_DESSERT "Dessert"
+ #define MEAL_MAIN_COURSE "Main Course"
+ #define MEAL_SNACK "Snack"
+ #define MEAL_UNCATEGORIZED "Uncategorized"
+
#define CAT_DRINK "Drinks"
//crafting defines
diff --git a/code/__DEFINES/food.dm b/code/__DEFINES/food.dm
index 96d110d3799..206fe30cba9 100644
--- a/code/__DEFINES/food.dm
+++ b/code/__DEFINES/food.dm
@@ -19,6 +19,7 @@
#define BUGS (1<<18)
#define GORE (1<<19)
#define STONE (1<<20)
+#define EGG (1<<21)
DEFINE_BITFIELD(foodtypes, list(
"MEAT" = MEAT,
@@ -42,6 +43,7 @@ DEFINE_BITFIELD(foodtypes, list(
"BUGS" = BUGS,
"GORE" = GORE,
"STONE" = STONE,
+ "EGG" = EGG,
))
/// A list of food type names, in order of their flags
@@ -67,6 +69,7 @@ DEFINE_BITFIELD(foodtypes, list(
"BUGS", \
"GORE", \
"STONE", \
+ "EGG", \
)
/// IC meaning (more or less) for food flags
@@ -92,6 +95,7 @@ DEFINE_BITFIELD(foodtypes, list(
"Bugs", \
"Gore", \
"Rocks", \
+ "Eggs", \
)
/// Food types assigned to all podperson organs
diff --git a/code/_globalvars/lists/crafting.dm b/code/_globalvars/lists/crafting.dm
index 48b2b61a42b..72a501bc652 100644
--- a/code/_globalvars/lists/crafting.dm
+++ b/code/_globalvars/lists/crafting.dm
@@ -1,24 +1,5 @@
GLOBAL_LIST_INIT(crafting_category_food, list(
CAT_FOOD,
- CAT_BREAD,
- CAT_BURGER,
- CAT_CAKE,
- CAT_EGG,
- CAT_LIZARD,
- CAT_MEAT,
- CAT_SEAFOOD,
- CAT_MARTIAN,
- CAT_MISCFOOD,
- CAT_MEXICAN,
- CAT_MOTH,
- CAT_PASTRY,
- CAT_PIE,
- CAT_PIZZA,
- CAT_SALAD,
- CAT_SANDWICH,
- CAT_SOUP,
- CAT_SPAGHETTI,
- CAT_ICE,
CAT_DRINK,
))
diff --git a/code/game/objects/items/food/bread.dm b/code/game/objects/items/food/bread.dm
index d7e91b562aa..d6ce6717d59 100644
--- a/code/game/objects/items/food/bread.dm
+++ b/code/game/objects/items/food/bread.dm
@@ -240,7 +240,7 @@
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/bread/tofu
- name = "Tofubread"
+ name = "tofubread"
desc = "Like meatbread but for vegetarians. Not guaranteed to give superpowers."
icon_state = "tofubread"
food_reagents = list(
@@ -507,7 +507,7 @@
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("raw egg" = 2, "soaked bread" = 1)
- foodtypes = GRAIN | RAW | BREAKFAST | MEAT
+ foodtypes = GRAIN | RAW | BREAKFAST | MEAT | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_2
@@ -524,7 +524,7 @@
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("french toast" = 1, "syrup" = 1, "golden deliciousness" = 1)
- foodtypes = GRAIN | BREAKFAST | MEAT
+ foodtypes = GRAIN | BREAKFAST | MEAT | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_2
diff --git a/code/game/objects/items/food/burgers.dm b/code/game/objects/items/food/burgers.dm
index f2b444901eb..e6b056251dc 100644
--- a/code/game/objects/items/food/burgers.dm
+++ b/code/game/objects/items/food/burgers.dm
@@ -466,7 +466,7 @@
bite_consumption = 7
max_volume = 100
tastes = list("bun" = 4, "type two diabetes" = 10)
- foodtypes = GRAIN | MEAT | DAIRY | VEGETABLES
+ foodtypes = GRAIN | MEAT | DAIRY | VEGETABLES | EGG
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_5
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT * 2)
@@ -626,7 +626,7 @@
/datum/reagent/consumable/nutriment/vitamin = 1,
)
tastes = list("muffin" = 2, "bacon" = 3)
- foodtypes = GRAIN | MEAT | BREAKFAST | FRIED
+ foodtypes = GRAIN | MEAT | BREAKFAST | FRIED | EGG
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2)
diff --git a/code/game/objects/items/food/cake.dm b/code/game/objects/items/food/cake.dm
index 30a9ed37ffc..821b62bb8e2 100644
--- a/code/game/objects/items/food/cake.dm
+++ b/code/game/objects/items/food/cake.dm
@@ -379,7 +379,7 @@
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/cake/slimecake
- name = "Slime cake"
+ name = "slime cake"
desc = "A cake made of slimes. Probably not electrified."
icon_state = "slimecake"
tastes = list("cake" = 5, "sweetness" = 1, "slime" = 1)
diff --git a/code/game/objects/items/food/egg.dm b/code/game/objects/items/food/egg.dm
index 8faea08ad94..0a2fbb1f7ab 100644
--- a/code/game/objects/items/food/egg.dm
+++ b/code/game/objects/items/food/egg.dm
@@ -8,7 +8,7 @@
icon_state = "chocolateegg"
food_reagents = list(/datum/reagent/consumable/nutriment = 5, /datum/reagent/consumable/sugar = 2, /datum/reagent/consumable/coco = 2, /datum/reagent/consumable/nutriment/vitamin = 1)
tastes = list("chocolate" = 4, "sweetness" = 1)
- foodtypes = JUNKFOOD | SUGAR
+ foodtypes = JUNKFOOD | SUGAR | EGG
food_flags = FOOD_FINGER_FOOD
w_class = WEIGHT_CLASS_TINY
crafting_complexity = FOOD_COMPLEXITY_2
@@ -23,7 +23,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
icon_state = "egg"
inhand_icon_state = "egg"
food_reagents = list(/datum/reagent/consumable/eggyolk = 2, /datum/reagent/consumable/eggwhite = 4)
- foodtypes = MEAT | RAW
+ foodtypes = MEAT | RAW | EGG
w_class = WEIGHT_CLASS_TINY
ant_attracting = FALSE
decomp_type = /obj/item/food/egg/rotten
@@ -208,7 +208,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
)
bite_consumption = 1
tastes = list("egg" = 4)
- foodtypes = MEAT | FRIED | BREAKFAST
+ foodtypes = MEAT | FRIED | BREAKFAST | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_1
@@ -221,7 +221,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
bite_consumption = 1
tastes = list("raw egg" = 6, "sliminess" = 1)
eatverbs = list("gulp down")
- foodtypes = MEAT | RAW
+ foodtypes = MEAT | RAW | EGG
w_class = WEIGHT_CLASS_SMALL
/obj/item/food/rawegg/make_grillable()
@@ -238,7 +238,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
/datum/reagent/consumable/nutriment/vitamin = 1,
)
tastes = list("egg" = 1)
- foodtypes = MEAT | BREAKFAST
+ foodtypes = MEAT | BREAKFAST | EGG
food_flags = FOOD_FINGER_FOOD
w_class = WEIGHT_CLASS_SMALL
ant_attracting = FALSE
@@ -251,7 +251,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
icon = 'icons/obj/food/egg.dmi'
icon_state = "eggsausage"
food_reagents = list(/datum/reagent/consumable/nutriment/protein = 8, /datum/reagent/consumable/nutriment/vitamin = 2, /datum/reagent/consumable/nutriment = 4)
- foodtypes = MEAT | FRIED | BREAKFAST
+ foodtypes = MEAT | FRIED | BREAKFAST | EGG
tastes = list("egg" = 4, "meat" = 4)
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -275,7 +275,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
bite_consumption = 1
w_class = WEIGHT_CLASS_SMALL
tastes = list("egg" = 1, "cheese" = 1)
- foodtypes = MEAT | BREAKFAST | DAIRY
+ foodtypes = MEAT | BREAKFAST | DAIRY | EGG
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_2
@@ -313,7 +313,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
)
w_class = WEIGHT_CLASS_SMALL
tastes = list("egg" = 1, "bacon" = 1, "bun" = 1)
- foodtypes = MEAT|BREAKFAST|GRAIN|FRIED
+ foodtypes = MEAT|BREAKFAST|GRAIN|FRIED|EGG
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT)
@@ -329,7 +329,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
/datum/reagent/consumable/nutriment/vitamin = 3,
)
tastes = list("egg" = 1)
- foodtypes = MEAT|VEGETABLES|FRIED
+ foodtypes = MEAT|VEGETABLES|FRIED|EGG
w_class = WEIGHT_CLASS_TINY
crafting_complexity = FOOD_COMPLEXITY_3
@@ -344,7 +344,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
/datum/reagent/consumable/nutriment/vitamin = 1,
)
tastes = list("custard" = 1)
- foodtypes = MEAT | VEGETABLES
+ foodtypes = MEAT | VEGETABLES | EGG
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -357,7 +357,7 @@ GLOBAL_VAR_INIT(chicks_from_eggs, 0)
inhand_icon_state = "egg"
food_reagents = list(/datum/reagent/consumable/eggyolk = 4, /datum/reagent/toxin/spore = 4, /datum/reagent/consumable/eggwhite = 1, /datum/reagent/consumable/nutriment/vitamin = 1)
tastes = list("sliminess" = 4, "blob" = 2)
- foodtypes = MEAT | RAW | TOXIC
+ foodtypes = MEAT | RAW | TOXIC | EGG
w_class = WEIGHT_CLASS_TINY
ant_attracting = FALSE
preserved_food = TRUE
diff --git a/code/game/objects/items/food/frozen.dm b/code/game/objects/items/food/frozen.dm
index 8806df4d578..a2a8d8f2df1 100644
--- a/code/game/objects/items/food/frozen.dm
+++ b/code/game/objects/items/food/frozen.dm
@@ -278,7 +278,7 @@
foodtypes = SUGAR
/obj/item/food/snowcones/spacemountainwind
- name = "Space Mountain Wind snowcone"
+ name = "space mountain wind snowcone"
desc = "Space Mountain Wind drizzled over a snowball in a paper cup."
icon_state = "mountainwind_sc"
food_reagents = list(
@@ -419,7 +419,7 @@
crafting_complexity = FOOD_COMPLEXITY_4
/obj/item/food/popsicle/licorice_creamsicle
- name = "Void Bar™"
+ name = "\improper Void Bar™"
desc = "A salty licorice ice cream. A salty frozen treat."
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
@@ -452,7 +452,7 @@
crafted_food_buff = /datum/status_effect/food/chilling
/obj/item/food/popsicle/meatsicle
- name = "Meatsicle"
+ name = "meatsicle"
desc = "A horrific abomination of raw meat, glazed with sugar on a stick, then frozen."
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
diff --git a/code/game/objects/items/food/lizard.dm b/code/game/objects/items/food/lizard.dm
index ee1ca09e882..8f558fc6011 100644
--- a/code/game/objects/items/food/lizard.dm
+++ b/code/game/objects/items/food/lizard.dm
@@ -661,7 +661,7 @@
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("bread" = 1, "liver" = 1, "family" = 1)
- foodtypes = VEGETABLES | NUTS | MEAT
+ foodtypes = VEGETABLES | NUTS | MEAT | EGG
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/pizza/flatbread/fish
@@ -743,7 +743,7 @@
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("eggs" = 1, "greens" = 1, "blood" = 1)
- foodtypes = MEAT | BREAKFAST | GORE
+ foodtypes = MEAT | BREAKFAST | GORE | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_2
@@ -759,7 +759,7 @@
/datum/reagent/consumable/capsaicin = 2,
)
tastes = list("eggs" = 1, "tomato" = 1, "heat" = 1)
- foodtypes = VEGETABLES | MEAT | BREAKFAST
+ foodtypes = VEGETABLES | MEAT | BREAKFAST | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -969,7 +969,7 @@
/datum/reagent/consumable/nutriment/vitamin = 1,
)
tastes = list("muffin" = 2, "bacon" = 3)
- foodtypes = NUTS | MEAT | BREAKFAST | VEGETABLES | FRIED
+ foodtypes = NUTS | MEAT | BREAKFAST | VEGETABLES | FRIED | EGG
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_4
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2)
@@ -1010,7 +1010,7 @@
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/rootfish
- name = "Fish rootwich"
+ name = "fish rootwich"
desc = "Lightly battered fish, sandwiched in a rootroll."
icon_state = "rootfish"
icon = 'icons/obj/food/lizard.dmi'
diff --git a/code/game/objects/items/food/martian.dm b/code/game/objects/items/food/martian.dm
index b83e28ec076..c6d6c3e51f8 100644
--- a/code/game/objects/items/food/martian.dm
+++ b/code/game/objects/items/food/martian.dm
@@ -211,7 +211,7 @@
/datum/reagent/consumable/nutriment/vitamin = 10,
)
tastes = list("rice" = 1, "meat" = 1, "pineapple" = 1, "veggies" = 1)
- foodtypes = MEAT | GRAIN | PINEAPPLE | FRUIT | VEGETABLES
+ foodtypes = MEAT | GRAIN | PINEAPPLE | FRUIT | VEGETABLES | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -291,7 +291,7 @@
/datum/reagent/consumable/nutriment/protein = 2,
)
tastes = list("rice" = 1, "egg" = 1, "soy sauce" = 1)
- foodtypes = MEAT | GRAIN
+ foodtypes = MEAT | GRAIN | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_2
@@ -311,7 +311,7 @@
/datum/reagent/consumable/capsaicin = 2,
)
tastes = list("rice" = 1, "spicy cabbage" = 1, "chilli heat" = 1, "egg" = 1, "meat" = 1)
- foodtypes = MEAT | VEGETABLES | GRAIN
+ foodtypes = MEAT | VEGETABLES | GRAIN | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -364,7 +364,7 @@
/datum/reagent/consumable/nutriment = 8,
)
tastes = list("noodles" = 1, "meat" = 1, "nuts" = 1, "onion" = 1, "egg" = 1)
- foodtypes = GRAIN | NUTS | MEAT | VEGETABLES
+ foodtypes = GRAIN | NUTS | MEAT | VEGETABLES | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -433,7 +433,7 @@
/datum/reagent/consumable/nutriment/protein = 6,
)
tastes = list("bun" = 1, "fried pork" = 2, "egg" = 1, "cheese" = 1, "ketchup" = 1)
- foodtypes = MEAT|GRAIN|DAIRY|FRIED
+ foodtypes = MEAT|GRAIN|DAIRY|FRIED|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -482,7 +482,7 @@
/datum/reagent/consumable/capsaicin = 1,
)
tastes = list("egg" = 1, "meat" = 1, "kimchi" = 1, "mozzarella" = 1)
- foodtypes = MEAT|VEGETABLES|GRAIN|DAIRY|FRIED
+ foodtypes = MEAT|VEGETABLES|GRAIN|DAIRY|FRIED|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -498,7 +498,7 @@
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("egg" = 1, "toast" = 1, "pork" = 1, "pineapple" = 1, "cheese" = 1)
- foodtypes = MEAT|GRAIN|FRUIT|DAIRY|FRIED|PINEAPPLE|BREAKFAST
+ foodtypes = MEAT|GRAIN|FRUIT|DAIRY|FRIED|PINEAPPLE|BREAKFAST|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -514,7 +514,7 @@
/datum/reagent/consumable/nutriment/vitamin = 3,
)
tastes = list("egg" = 1, "toast" = 1, "bacon" = 1, "pickles" = 1, "cheese" = 1)
- foodtypes = MEAT | DAIRY | VEGETABLES | GRAIN | BREAKFAST
+ foodtypes = MEAT | DAIRY | VEGETABLES | GRAIN | BREAKFAST | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -536,7 +536,7 @@
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/takoyaki/russian
- name = "Russian takoyaki"
+ name = "russian takoyaki"
desc = "A dangerous twist on a classic dish, that makes for the perfect cover for evading the police."
icon = 'icons/obj/food/martian.dmi'
icon_state = "russian_takoyaki"
@@ -658,7 +658,7 @@
/datum/reagent/consumable/nutriment/protein = 4,
)
tastes = list("curry" = 1, "egg" = 1, "pastry" = 1)
- foodtypes = GRAIN | MEAT | VEGETABLES | FRIED
+ foodtypes = GRAIN | MEAT | VEGETABLES | FRIED | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -674,7 +674,7 @@
/datum/reagent/consumable/nutriment = 10,
)
tastes = list("bread" = 1, "egg" = 1, "meat" = 1, "onion" = 1)
- foodtypes = MEAT|VEGETABLES|GRAIN|BREAKFAST
+ foodtypes = MEAT|VEGETABLES|GRAIN|BREAKFAST|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_4
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -721,7 +721,7 @@
/datum/reagent/consumable/nutriment/protein = 8,
)
tastes = list("rice" = 1, "burger" = 1, "gravy" = 1, "egg" = 1)
- foodtypes = MEAT|VEGETABLES|GRAIN|FRIED
+ foodtypes = MEAT|VEGETABLES|GRAIN|FRIED|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -817,7 +817,7 @@
/datum/reagent/consumable/garlic = 1,
)
tastes = list("ham" = 1, "garlic rice" = 1, "egg" = 1)
- foodtypes = MEAT|GRAIN|FRIED|BREAKFAST|VEGETABLES
+ foodtypes = MEAT|GRAIN|FRIED|BREAKFAST|VEGETABLES|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -832,7 +832,7 @@
/datum/reagent/consumable/nutriment = 3,
)
tastes = list("ham" = 1, "onion" = 1, "pepper" = 1, "potato" = 1)
- foodtypes = MEAT | VEGETABLES | BREAKFAST
+ foodtypes = MEAT | VEGETABLES | BREAKFAST | EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -975,7 +975,7 @@
/datum/reagent/consumable/nutriment/vitamin = 2,
)
tastes = list("seafood" = 1, "rice" = 1, "egg" = 1, "onion" = 1)
- foodtypes = MEAT|VEGETABLES|GRAIN|SEAFOOD
+ foodtypes = MEAT|VEGETABLES|GRAIN|SEAFOOD|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -1008,7 +1008,7 @@
/datum/reagent/consumable/garlic = 1,
)
tastes = list("yoghurt" = 1, "garlic" = 1, "lemon" = 1, "egg" = 1, "chilli heat" = 1)
- foodtypes = MEAT|VEGETABLES|DAIRY|FRIED|BREAKFAST
+ foodtypes = MEAT|VEGETABLES|DAIRY|FRIED|BREAKFAST|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -1083,7 +1083,7 @@
/datum/reagent/consumable/sugar = 4,
)
tastes = list("custard" = 1, "vanilla" = 1, "sweet pastry" = 1)
- foodtypes = GRAIN|FRUIT|DAIRY
+ foodtypes = GRAIN|FRUIT|DAIRY|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
diff --git a/code/game/objects/items/food/meatdish.dm b/code/game/objects/items/food/meatdish.dm
index 4fb4bbc4712..24f3b8a53f3 100644
--- a/code/game/objects/items/food/meatdish.dm
+++ b/code/game/objects/items/food/meatdish.dm
@@ -433,7 +433,7 @@
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT)
/obj/item/food/bearsteak
- name = "Filet migrawr"
+ name = "filet migrawr"
desc = "Because eating bear wasn't manly enough."
icon = 'icons/obj/food/meat.dmi'
icon_state = "bearsteak"
@@ -757,7 +757,7 @@
)
bite_consumption = 4
tastes = list("meat" = 1, "the colour green" = 1)
- foodtypes = MEAT|BUGS
+ foodtypes = MEAT|BUGS|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2)
@@ -773,7 +773,7 @@
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("fish" = 1, "hot peppers" = 1)
- foodtypes = MEAT|SEAFOOD|BUGS
+ foodtypes = MEAT|SEAFOOD|BUGS|EGG
w_class = WEIGHT_CLASS_TINY
//total price of this dish is 20 and a small amount more for soy sauce, all of which are available at the orders console
venue_value = FOOD_PRICE_CHEAP
@@ -871,7 +871,7 @@
AddComponent(/datum/component/slippery, 3 SECONDS)
/obj/item/food/lasagna
- name = "Lasagna"
+ name = "lasagna"
desc = "A slice of lasagna. Perfect for a Monday afternoon."
icon_state = "lasagna"
food_reagents = list(
@@ -1051,7 +1051,7 @@
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * (4/3))
/obj/item/food/korta_wellington
- name = "Korta wellington"
+ name = "korta wellington"
desc = "A luxurious log of beef, covered in a fine mushroom duxelle and pancetta ham, then bound in korta pastry."
icon = 'icons/obj/food/meat.dmi'
icon_state = "korta_wellington"
@@ -1189,7 +1189,7 @@
crafting_complexity = FOOD_COMPLEXITY_5
/obj/item/food/full_english
- name = "full English breakfast"
+ name = "full english breakfast"
desc = "A hearty plate with all the trimmings, representing the pinnacle of the breakfast art."
icon = 'icons/obj/food/meat.dmi'
icon_state = "full_english"
@@ -1198,7 +1198,7 @@
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("sausage" = 1, "bacon" = 1, "egg" = 1, "tomato" = 1, "mushrooms" = 1, "bread" = 1, "beans" = 1)
- foodtypes = MEAT|VEGETABLES|GRAIN|DAIRY|FRIED|BREAKFAST
+ foodtypes = MEAT|VEGETABLES|GRAIN|DAIRY|FRIED|BREAKFAST|EGG
w_class = WEIGHT_CLASS_SMALL
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_5
@@ -1297,7 +1297,7 @@
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("boiled rice" = 4, "fish" = 5, "egg" = 3, "dried seaweed" = 2, "cucumber" = 2)
- foodtypes = MEAT|VEGETABLES|GRAIN|SEAFOOD
+ foodtypes = MEAT|VEGETABLES|GRAIN|SEAFOOD|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_3
@@ -1319,7 +1319,7 @@
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/philadelphia_sushi_roll
- name = "Philadelphia sushi roll"
+ name = "philadelphia sushi roll"
desc = "A roll of Philadelphia sushi, made of cheese, fish, and cucumber. Sliceable"
icon_state = "philadelphia_sushi_roll"
food_reagents = list(
@@ -1336,7 +1336,7 @@
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/philadelphia_sushi_slice, 4, screentip_verb = "Chop")
/obj/item/food/philadelphia_sushi_slice
- name = "Philadelphia sushi slice"
+ name = "philadelphia sushi slice"
desc = "A roll of Philadelphia sushi, made of cheese, fish, and cucumber."
icon_state = "philadelphia_sushi_slice"
food_reagents = list(
diff --git a/code/game/objects/items/food/mexican.dm b/code/game/objects/items/food/mexican.dm
index 7afbe0e30f7..eb73c1957f1 100644
--- a/code/game/objects/items/food/mexican.dm
+++ b/code/game/objects/items/food/mexican.dm
@@ -113,7 +113,7 @@
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/cubannachos
- name = "Cuban nachos"
+ name = "cuban nachos"
desc = "That's some dangerously spicy nachos."
icon = 'icons/obj/food/mexican.dmi'
icon_state = "cubannachos"
diff --git a/code/game/objects/items/food/misc.dm b/code/game/objects/items/food/misc.dm
index c25539cc6a1..f8a60890c32 100644
--- a/code/game/objects/items/food/misc.dm
+++ b/code/game/objects/items/food/misc.dm
@@ -270,7 +270,7 @@
/datum/reagent/toxin = 2,
)
tastes = list("cobwebs" = 1)
- foodtypes = MEAT | TOXIC | BUGS
+ foodtypes = MEAT | TOXIC | BUGS | EGG
w_class = WEIGHT_CLASS_TINY
/obj/item/food/spidereggs/processed
@@ -340,7 +340,7 @@
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/powercrepe
- name = "Powercrepe"
+ name = "powercrepe"
desc = "With great power, comes great crepes. It looks like a pancake filled with jelly but packs quite a punch."
icon_state = "powercrepe"
inhand_icon_state = "powercrepe"
diff --git a/code/game/objects/items/food/moth.dm b/code/game/objects/items/food/moth.dm
index d5a216566c0..21917ab39e2 100644
--- a/code/game/objects/items/food/moth.dm
+++ b/code/game/objects/items/food/moth.dm
@@ -469,7 +469,7 @@
/datum/reagent/consumable/nutriment/protein = 6,
)
tastes = list("bacon" = 1, "eggs" = 1)
- foodtypes = MEAT|GRAIN|FRIED
+ foodtypes = MEAT|GRAIN|FRIED|EGG
w_class = WEIGHT_CLASS_SMALL
crafting_complexity = FOOD_COMPLEXITY_4
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
diff --git a/code/game/objects/items/food/packaged.dm b/code/game/objects/items/food/packaged.dm
index 1458c3c101d..95054ec4a1a 100644
--- a/code/game/objects/items/food/packaged.dm
+++ b/code/game/objects/items/food/packaged.dm
@@ -2,7 +2,7 @@
// Cans
/obj/item/food/canned
- name = "Canned Air"
+ name = "canned air"
desc = "If you ever wondered where air came from..."
food_reagents = list(
/datum/reagent/oxygen = 6,
@@ -65,7 +65,7 @@
foodtypes = FRUIT | SUGAR
/obj/item/food/canned/peaches/maint
- name = "Maintenance Peaches"
+ name = "maintenance peaches"
desc = "I have a mouth and I must eat."
icon_state = "peachcanmaint"
trash_type = /obj/item/trash/can/food/peaches/maint
diff --git a/code/game/objects/items/food/salad.dm b/code/game/objects/items/food/salad.dm
index c350c0bd4a5..63915d0541a 100644
--- a/code/game/objects/items/food/salad.dm
+++ b/code/game/objects/items/food/salad.dm
@@ -146,7 +146,7 @@
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("rice" = 1, "egg" = 1)
- foodtypes = MEAT|VEGETABLES|GRAIN
+ foodtypes = MEAT|VEGETABLES|GRAIN|EGG
crafting_complexity = FOOD_COMPLEXITY_4
/obj/item/food/salad/edensalad
@@ -263,7 +263,7 @@
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/salad/greek_salad
- name = "Greek salad"
+ name = "greek salad"
desc = "A popular salad made of tomatoes, onions, feta cheese, and olives all drizzled in olive oil. Though it feels like it's missing something..."
icon_state = "greek_salad"
food_reagents = list(
@@ -275,7 +275,7 @@
crafting_complexity = FOOD_COMPLEXITY_4
/obj/item/food/salad/caesar_salad
- name = "Caesar salad"
+ name = "caesar salad"
desc = "A simple yet flavorful salad of onions, lettuce, croutons, and shreds of cheese dressed in oil. Comes with a slice of pita bread!"
icon_state = "caesar_salad"
food_reagents = list(
@@ -308,7 +308,7 @@
/datum/reagent/consumable/nutriment/protein = 4,
)
tastes = list("creamy potatoes" = 2, "eggs" = 2, "mayonnaise" = 1, "onions" = 1)
- foodtypes = MEAT|VEGETABLES|BREAKFAST
+ foodtypes = MEAT|VEGETABLES|BREAKFAST|EGG
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/salad/spinach_fruit_salad
diff --git a/code/game/objects/items/food/sandwichtoast.dm b/code/game/objects/items/food/sandwichtoast.dm
index 6e92d401378..f1485e4203c 100644
--- a/code/game/objects/items/food/sandwichtoast.dm
+++ b/code/game/objects/items/food/sandwichtoast.dm
@@ -231,7 +231,7 @@
custom_materials = null
/obj/item/food/sandwich/philly_cheesesteak
- name = "Philly cheesesteak"
+ name = "philly cheesesteak"
desc = "A popular sandwich made of sliced meat, onions, melted cheese in a long hoagie roll. Mouthwatering doesn't even begin to describe it."
icon_state = "philly_cheesesteak"
food_reagents = list(
diff --git a/code/game/objects/items/food/soup.dm b/code/game/objects/items/food/soup.dm
index ae0d900f9a7..47d71e0718e 100644
--- a/code/game/objects/items/food/soup.dm
+++ b/code/game/objects/items/food/soup.dm
@@ -27,7 +27,7 @@
reagents.add_reagent(/datum/reagent/consumable/nutriment/vitamin, 1)
/obj/item/food/bowled/mammi
- name = "Mammi"
+ name = "mammi"
desc = "A bowl of mushy bread and milk. It reminds you, not too fondly, of a bowel movement."
icon_state = "mammi"
food_reagents = list(
diff --git a/code/game/objects/items/food/spaghetti.dm b/code/game/objects/items/food/spaghetti.dm
index 00b5e833917..53c486a52fc 100644
--- a/code/game/objects/items/food/spaghetti.dm
+++ b/code/game/objects/items/food/spaghetti.dm
@@ -182,7 +182,7 @@
/datum/reagent/consumable/nutriment/protein = 6,
)
tastes = list("noodles" = 5, "meat" = 3, "egg" = 4, "dried seaweed" = 2)
- foodtypes = GRAIN | MEAT | VEGETABLES
+ foodtypes = GRAIN | MEAT | VEGETABLES | EGG
crafting_complexity = FOOD_COMPLEXITY_4
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
@@ -269,7 +269,7 @@
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("spaghetti" = 1, "parmigiano reggiano" = 1, "guanciale" = 1)
- foodtypes = GRAIN | MEAT | DAIRY
+ foodtypes = GRAIN | MEAT | DAIRY | EGG
crafting_complexity = FOOD_COMPLEXITY_4
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
diff --git a/code/game/objects/items/food/sweets.dm b/code/game/objects/items/food/sweets.dm
index 7088c2fe275..4be75cf07fc 100644
--- a/code/game/objects/items/food/sweets.dm
+++ b/code/game/objects/items/food/sweets.dm
@@ -223,7 +223,7 @@
color = "#60A584"
/obj/item/food/bubblegum/happiness
- name = "HP+ gum"
+ name = "\improper HP+ gum"
desc = "A rubbery strip of gum. It smells funny."
food_reagents = list(/datum/reagent/drug/happiness = 15)
tastes = list("paint thinner" = 1)
diff --git a/code/modules/events/holiday/easter.dm b/code/modules/events/holiday/easter.dm
index b26e4c6a016..3fcbe9e7429 100644
--- a/code/modules/events/holiday/easter.dm
+++ b/code/modules/events/holiday/easter.dm
@@ -143,7 +143,8 @@
)
result = /obj/item/food/hotcrossbun
added_foodtypes = SUGAR | BREAKFAST
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/briochecake
name = "Brioche cake"
@@ -152,7 +153,8 @@
/datum/reagent/consumable/sugar = 2
)
result = /obj/item/food/cake/brioche
- category = CAT_MISCFOOD
+ dish_category = DISH_PASTRY
+ meal_category = MEAL_DESSERT
/obj/item/food/scotchegg
name = "scotch egg"
@@ -163,7 +165,7 @@
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
food_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 2)
crafting_complexity = FOOD_COMPLEXITY_2
- foodtypes = MEAT
+ foodtypes = MEAT|EGG
/datum/crafting_recipe/food/scotchegg
name = "Scotch egg"
@@ -175,7 +177,8 @@
)
result = /obj/item/food/scotchegg
removed_foodtypes = BREAKFAST
- category = CAT_EGG
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/mammi
name = "Mammi"
@@ -186,7 +189,8 @@
)
result = /obj/item/food/bowled/mammi
added_foodtypes = DAIRY
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/obj/item/food/chocolatebunny
name = "chocolate bunny"
@@ -203,4 +207,5 @@
/obj/item/food/chocolatebar = 1
)
result = /obj/item/food/chocolatebunny
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
diff --git a/code/modules/food_and_drinks/recipes/food_mixtures.dm b/code/modules/food_and_drinks/recipes/food_mixtures.dm
index 8eef1ead5bf..362a31f809e 100644
--- a/code/modules/food_and_drinks/recipes/food_mixtures.dm
+++ b/code/modules/food_and_drinks/recipes/food_mixtures.dm
@@ -7,11 +7,21 @@
/obj/item/reagent_containers/cup/glass/sillycup,
)
crafting_flags = parent_type::crafting_flags | CRAFT_TRANSFERS_REAGENT_COMPONENTS | CRAFT_CLEARS_REAGENTS
+ // avoid changing this, it is used to split the crafting menu between normal and food
+ category = CAT_FOOD
+
///The food types that are added to the result when the recipe is completed
var/added_foodtypes = NONE
///The food types that are removed to the result when the recipe is completed
var/removed_foodtypes = NONE
+ /// Type of cuisine, like "Mexican", "Italian", "Martian", "Mothic", or "Lizard"
+ var/cuisine_category = CUISINE_TERRAN
+ /// Type of dish, like "Pizza", "Cake", "Burger" or "Soup"
+ var/dish_category = DISH_UNCATEGORIZED
+ /// Type of meal, like "Appetizer", "Main Course", "Dessert", or "Snack"
+ var/meal_category = MEAL_MAIN_COURSE
+
/datum/crafting_recipe/food/New()
. = ..()
//rarely, but a few cooking recipes (cake cat & co) don't result food items.
@@ -42,13 +52,27 @@
/datum/crafting_recipe/food/crafting_ui_data()
var/list/data = list()
- if(ispath(result, /obj/item/food))
- var/obj/item/food/item = result
- data["foodtypes"] = bitfield_to_list(initial(item.foodtypes), FOOD_FLAGS)
- data["complexity"] = initial(item.crafting_complexity)
+ var/foodtypes = get_food_types()
+ data["foodtypes"] = bitfield_to_list(foodtypes, FOOD_FLAGS)
+ data["complexity"] = get_complexity()
+ data["cuisine_category"] = cuisine_category
+ data["dish_category"] = dish_category
+ data["meal_category"] = (meal_category != MEAL_COMPONENT && (foodtypes & BREAKFAST)) ? MEAL_BREAKFAST : meal_category
return data
+/datum/crafting_recipe/food/proc/get_food_types()
+ if(ispath(result, /obj/item/food))
+ var/obj/item/food/food_result = result
+ return (initial(food_result.foodtypes) | added_foodtypes) & ~removed_foodtypes
+ return NONE
+
+/datum/crafting_recipe/food/proc/get_complexity()
+ if(ispath(result, /obj/item/food))
+ var/obj/item/food/food_result = result
+ return initial(food_result.crafting_complexity)
+ return 0
+
//////////////////////////////////////////FOOD MIXTURES////////////////////////////////////
/datum/chemical_reaction/food
diff --git a/code/modules/food_and_drinks/recipes/soup_guide.dm b/code/modules/food_and_drinks/recipes/soup_guide.dm
index 3a9ba05ff0c..742dbbfb5ca 100644
--- a/code/modules/food_and_drinks/recipes/soup_guide.dm
+++ b/code/modules/food_and_drinks/recipes/soup_guide.dm
@@ -1,6 +1,7 @@
/datum/crafting_recipe/food/reaction/soup
machinery = list(/obj/machinery/stove)
- category = CAT_SOUP
+ dish_category = DISH_SOUP
+ meal_category = MEAL_MAIN_COURSE
non_craftable = TRUE
/// What contained is this reaction expected to be served in?
/// Used to determine the icon to display in the crafting UI.
@@ -19,17 +20,12 @@
return ..()
-/datum/crafting_recipe/food/reaction/soup/crafting_ui_data()
- if(ispath(result, /obj/item/food))
- return ..()
-
- var/list/data = list()
-
+/datum/crafting_recipe/food/reaction/soup/get_food_types()
var/datum/glass_style/has_foodtype/soup_style = GLOB.glass_style_singletons[expected_container][result]
if(istype(soup_style))
- data["foodtypes"] = bitfield_to_list(soup_style.drink_type, FOOD_FLAGS)
+ return soup_style.drink_type
- return data
+ return ..()
/datum/crafting_recipe/food/reaction/soup/setup_chemical_reaction_details(datum/chemical_reaction/food/soup/chemical_reaction)
. = ..()
@@ -149,4 +145,4 @@
/obj/item/reagent_containers/cup/bowl = 1
)
result= /obj/item/food/bowled/wish
- category = CAT_SOUP
+ dish_category = DISH_SOUP
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
index 82713b5c125..e973d36d0ed 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
@@ -11,7 +11,7 @@
/obj/item/food/cheese/wedge = 3
)
result = /obj/item/food/bread/meat
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/xenomeatbread
name = "Xenomeat bread"
@@ -21,7 +21,7 @@
/obj/item/food/cheese/wedge = 3
)
result = /obj/item/food/bread/xenomeat
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/spidermeatbread
name = "Spidermeat bread"
@@ -31,7 +31,7 @@
/obj/item/food/cheese/wedge = 3
)
result = /obj/item/food/bread/spidermeat
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/sausagebread
name = "Sausage bread"
@@ -41,7 +41,7 @@
)
result = /obj/item/food/bread/sausage
removed_foodtypes = BREAKFAST
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/banananutbread
name = "Banana nut bread"
@@ -52,8 +52,8 @@
/obj/item/food/grown/banana = 1
)
result = /obj/item/food/bread/banana
- removed_foodtypes = BREAKFAST
- category = CAT_BREAD
+ removed_foodtypes = BREAKFAST|EGG
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/tofubread
name = "Tofu bread"
@@ -63,7 +63,7 @@
/obj/item/food/cheese/wedge = 3
)
result = /obj/item/food/bread/tofu
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/creamcheesebread
name = "Cream cheese bread"
@@ -73,7 +73,7 @@
/obj/item/food/cheese/wedge = 2
)
result = /obj/item/food/bread/creamcheese
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/mimanabread
name = "Mimana bread"
@@ -84,7 +84,7 @@
/obj/item/food/grown/banana/mime = 1
)
result = /obj/item/food/bread/mimana
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/garlicbread
name = "Garlic Bread"
@@ -94,7 +94,8 @@
/obj/item/food/butterslice = 1
)
result = /obj/item/food/garlicbread
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/butterbiscuit
name = "Butter Biscuit"
@@ -104,7 +105,7 @@
)
result = /obj/item/food/butterbiscuit
added_foodtypes = BREAKFAST
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/butterdog
name = "Butterdog"
@@ -113,7 +114,7 @@
/obj/item/food/butter = 1,
)
result = /obj/item/food/butterdog
- category = CAT_BREAD
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/baguette
name = "Baguette"
@@ -123,7 +124,8 @@
/obj/item/food/doughslice = 2,
)
result = /obj/item/food/baguette
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/raw_breadstick
name = "Raw breadstick"
@@ -133,7 +135,8 @@
/obj/item/food/butterslice = 1
)
result = /obj/item/food/raw_breadstick
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/raw_croissant
name = "Raw croissant"
@@ -143,7 +146,8 @@
/obj/item/food/butterslice = 1
)
result = /obj/item/food/raw_croissant
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/throwing_croissant
name = "Throwing croissant"
@@ -152,7 +156,7 @@
/obj/item/stack/rods = 1,
)
result = /obj/item/food/croissant/throwing
- category = CAT_BREAD
+ dish_category = DISH_BREAD
crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED
/datum/crafting_recipe/food/breaddog
@@ -170,7 +174,9 @@
/obj/item/organ/heart
)
result = /mob/living/basic/pet/dog/breaddog
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_UNCATEGORIZED
+
////////////////////////////////////////////////TOAST////////////////////////////////////////////////
@@ -182,7 +188,7 @@
)
result = /obj/item/food/jelliedtoast/slime
added_foodtypes = TOXIC | BREAKFAST
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/jelliedyoast
name = "Jellied toast"
@@ -192,7 +198,7 @@
)
result = /obj/item/food/jelliedtoast/cherry
added_foodtypes = FRUIT | SUGAR | BREAKFAST
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/butteredtoast
name = "Buttered Toast"
@@ -202,7 +208,7 @@
)
result = /obj/item/food/butteredtoast
added_foodtypes = BREAKFAST
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/twobread
name = "Two bread"
@@ -211,7 +217,7 @@
/obj/item/food/breadslice/plain = 2
)
result = /obj/item/food/twobread
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/moldybread // why would you make this?
name = "Moldy Bread"
@@ -222,7 +228,7 @@
result = /obj/item/food/breadslice/moldy
removed_foodtypes = VEGETABLES|GRAIN
added_foodtypes = GROSS
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/breadcat
name = "Bread cat/bread hybrid"
@@ -235,7 +241,8 @@
/datum/reagent/medicine/strange_reagent = 5
)
result = /mob/living/basic/pet/cat/breadcat
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_UNCATEGORIZED
/datum/crafting_recipe/food/frenchtoast
name = "Raw french toast"
@@ -246,4 +253,5 @@
)
result = /obj/item/food/raw_frenchtoast
added_foodtypes = BREAKFAST
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_COMPONENT
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
index be01b1f6293..149423731ca 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
@@ -11,7 +11,7 @@
/obj/item/food/patty/human = 1
)
result = /obj/item/food/burger/human
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/burger
name = "Plain Burger"
@@ -21,7 +21,7 @@
)
result = /obj/item/food/burger/plain
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/corgiburger
name = "Corgi burger"
@@ -31,7 +31,7 @@
)
result = /obj/item/food/burger/corgi
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/appendixburger
name = "Appendix burger"
@@ -41,7 +41,7 @@
)
result = /obj/item/food/burger/appendix
added_foodtypes = MEAT | GORE
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/brainburger
name = "Brain burger"
@@ -51,7 +51,7 @@
)
result = /obj/item/food/burger/brain
added_foodtypes = MEAT | GORE
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/xenoburger
name = "Xeno burger"
@@ -60,7 +60,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/xeno
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/bearger
name = "Bearger"
@@ -69,7 +69,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/bearger
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/fishburger
name = "Fish burger"
@@ -79,7 +79,7 @@
/obj/item/food/cheese/wedge = 1
)
result = /obj/item/food/burger/fish
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/tofuburger
name = "Tofu burger"
@@ -88,7 +88,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/tofu
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/ghostburger
name = "Ghost burger"
@@ -98,7 +98,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/ghost
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/clownburger
name = "Clown burger"
@@ -107,7 +107,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/clown
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/mimeburger
name = "Mime burger"
@@ -116,7 +116,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/mime
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/redburger
name = "Red burger"
@@ -126,7 +126,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/red
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/orangeburger
name = "Orange burger"
@@ -136,7 +136,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/orange
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/yellowburger
name = "Yellow burger"
@@ -146,7 +146,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/yellow
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/greenburger
name = "Green burger"
@@ -156,7 +156,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/green
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/blueburger
name = "Blue burger"
@@ -166,7 +166,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/blue
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/purpleburger
name = "Purple burger"
@@ -176,7 +176,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/purple
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/blackburger
name = "Black burger"
@@ -186,7 +186,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/black
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/whiteburger
name = "White burger"
@@ -196,7 +196,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/white
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/spellburger
name = "Spell burger"
@@ -205,7 +205,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/spell
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/bigbiteburger
name = "Big bite burger"
@@ -215,7 +215,7 @@
/obj/item/food/cheese/wedge = 2
)
result = /obj/item/food/burger/bigbite
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/superbiteburger
name = "Super bite burger"
@@ -233,7 +233,7 @@
)
result = /obj/item/food/burger/superbite
removed_foodtypes = BREAKFAST
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/slimeburger
name = "Jelly burger"
@@ -243,7 +243,7 @@
)
result = /obj/item/food/burger/jelly/slime
added_foodtypes = TOXIC
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/jellyburger
name = "Jelly burger"
@@ -253,7 +253,7 @@
)
result = /obj/item/food/burger/jelly/cherry
added_foodtypes = FRUIT
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/fivealarmburger
name = "Five alarm burger"
@@ -263,7 +263,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/fivealarm
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/ratburger
name = "Rat burger"
@@ -272,7 +272,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/rat
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/baseballburger
name = "Home run baseball burger"
@@ -282,7 +282,7 @@
)
result = /obj/item/food/burger/baseball
added_foodtypes = GROSS
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/baconburger
name = "Bacon Burger"
@@ -293,7 +293,7 @@
result = /obj/item/food/burger/baconburger
removed_foodtypes = BREAKFAST
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/empoweredburger
name = "Empowered Burger"
@@ -304,7 +304,7 @@
requirements_mats_blacklist = list(/obj/item/stack/sheet/mineral/plasma)
result = /obj/item/food/burger/empoweredburger
added_foodtypes = TOXIC
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/catburger
name = "Cat burger"
@@ -316,7 +316,7 @@
)
result = /obj/item/food/burger/catburger
added_foodtypes = GORE
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/crabburger
name = "Crab Burger"
@@ -326,7 +326,7 @@
)
result = /obj/item/food/burger/crab
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/cheeseburger
name = "Cheese Burger"
@@ -336,7 +336,7 @@
/obj/item/food/cheese/wedge = 1,
)
result = /obj/item/food/burger/cheese
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/soylentburger
name = "Soylent Burger"
@@ -346,7 +346,7 @@
/obj/item/food/cheese/wedge = 2,
)
result = /obj/item/food/burger/soylent
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/ribburger
name = "McRib"
@@ -356,7 +356,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/rib
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/mcguffin
name = "McGuffin"
@@ -366,7 +366,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/mcguffin
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/chickenburger
name = "Chicken Sandwich"
@@ -376,7 +376,7 @@
/obj/item/food/bun = 1
)
result = /obj/item/food/burger/chicken
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/crazyhamburger
name = "Crazy hamburger"
@@ -391,7 +391,7 @@
/datum/reagent/consumable/nutriment/fat/oil = 15
)
result = /obj/item/food/burger/crazy
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/sloppy_moe
name = "Sloppy moe"
@@ -402,7 +402,7 @@
/datum/reagent/consumable/bbqsauce = 5,
)
result = /obj/item/food/burger/sloppy_moe
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/kortaburger
name = "Plain Rootburger"
@@ -411,7 +411,7 @@
/obj/item/food/rootroll = 1
)
result = /obj/item/food/burger/plain/korta
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/ratkorta
name = "Rat Rootburger"
@@ -420,7 +420,7 @@
/obj/item/food/rootroll = 1
)
result = /obj/item/food/burger/rat/korta
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/rootguffin
name = "Root-Guffin"
@@ -430,7 +430,7 @@
/obj/item/food/rootroll = 1
)
result = /obj/item/food/burger/rootguffin
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/rootrib
name = "RootRib"
@@ -440,7 +440,7 @@
/obj/item/food/rootroll = 1
)
result = /obj/item/food/burger/rootrib
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/rootchicken
name = "Chicken Rootwich"
@@ -450,7 +450,7 @@
/obj/item/food/rootroll = 1
)
result = /obj/item/food/burger/rootchicken
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/rootfish
name = "Fish rootburger"
@@ -459,7 +459,7 @@
/obj/item/food/rootroll = 1
)
result = /obj/item/food/burger/rootfish
- category = CAT_BURGER
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/sloppyroot
name = "Sssloppy moe"
@@ -470,4 +470,4 @@
/datum/reagent/consumable/bbqsauce = 5,
)
result = /obj/item/food/burger/sloppyroot
- category = CAT_BURGER
+ dish_category = DISH_BURGER
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm
index 778d559aee0..d2eb09f16cb 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm
@@ -10,7 +10,8 @@
/obj/item/food/grown/carrot = 2
)
result = /obj/item/food/cake/carrot
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/cheesecake
name = "Cheese cake"
@@ -19,7 +20,8 @@
/obj/item/food/cheese/wedge = 2
)
result = /obj/item/food/cake/cheese
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/applecake
name = "Apple cake"
@@ -28,7 +30,8 @@
/obj/item/food/grown/apple = 2
)
result = /obj/item/food/cake/apple
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/orangecake
name = "Orange cake"
@@ -37,7 +40,8 @@
/obj/item/food/grown/citrus/orange = 2
)
result = /obj/item/food/cake/orange
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/limecake
name = "Lime cake"
@@ -46,7 +50,8 @@
/obj/item/food/grown/citrus/lime = 2
)
result = /obj/item/food/cake/lime
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/lemoncake
name = "Lemon cake"
@@ -55,7 +60,8 @@
/obj/item/food/grown/citrus/lemon = 2
)
result = /obj/item/food/cake/lemon
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/chocolatecake
name = "Chocolate cake"
@@ -64,7 +70,8 @@
/obj/item/food/chocolatebar = 2
)
result = /obj/item/food/cake/chocolate
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/birthdaycake
name = "Birthday cake"
@@ -76,7 +83,8 @@
)
result = /obj/item/food/cake/birthday
added_foodtypes = JUNKFOOD
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/energycake
name = "Energy cake"
@@ -86,7 +94,8 @@
)
blacklist = list(/obj/item/food/cake/birthday/energy)
result = /obj/item/food/cake/birthday/energy
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/braincake
name = "Brain cake"
@@ -96,7 +105,8 @@
)
result = /obj/item/food/cake/brain
added_foodtypes = MEAT | GORE
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/slimecake
name = "Slime cake"
@@ -105,7 +115,8 @@
/obj/item/food/cake/plain = 1
)
result = /obj/item/food/cake/slimecake
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pumpkinspicecake
name = "Pumpkin spice cake"
@@ -114,7 +125,8 @@
/obj/item/food/grown/pumpkin = 2
)
result = /obj/item/food/cake/pumpkinspice
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/holycake
name = "Angel food cake"
@@ -123,7 +135,8 @@
/obj/item/food/cake/plain = 1
)
result = /obj/item/food/cake/holy_cake
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/poundcake
name = "Pound cake"
@@ -132,7 +145,8 @@
)
result = /obj/item/food/cake/pound_cake
added_foodtypes = JUNKFOOD
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/hardwarecake
name = "Hardware cake"
@@ -143,7 +157,8 @@
)
result = /obj/item/food/cake/hardware_cake
added_foodtypes = GROSS
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/berry_chocolate_cake
name = "strawberry chocolate cake"
@@ -154,7 +169,8 @@
)
result = /obj/item/food/cake/berry_chocolate_cake
removed_foodtypes = JUNKFOOD
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pavlovacream
name = "Pavlova with cream"
@@ -166,7 +182,8 @@
)
result = /obj/item/food/cake/pavlova
added_foodtypes = SUGAR|DAIRY
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pavlovakorta
name = "Pavlova with korta cream"
@@ -178,7 +195,8 @@
)
result = /obj/item/food/cake/pavlova/nuts
added_foodtypes = SUGAR|NUTS
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/berry_vanilla_cake
name = "blackberry and strawberry vanilla cake"
@@ -187,7 +205,8 @@
/obj/item/food/grown/berries = 5
)
result = /obj/item/food/cake/berry_vanilla_cake
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/clowncake
name = "clown cake"
@@ -197,7 +216,8 @@
/obj/item/food/grown/banana = 5
)
result = /obj/item/food/cake/clown_cake
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED
/datum/crafting_recipe/food/vanillacake
@@ -207,7 +227,8 @@
/obj/item/food/grown/vanillapod = 2
)
result = /obj/item/food/cake/vanilla_cake
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED
/datum/crafting_recipe/food/trumpetcake
@@ -220,7 +241,8 @@
)
result = /obj/item/food/cake/trumpet
added_foodtypes = FRUIT
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/cak
@@ -239,10 +261,12 @@
/obj/item/organ/heart
)
result = /mob/living/basic/pet/cat/cak
- category = CAT_CAKE //Cat! Haha, get it? CAT? GET IT? We get it - Love Felines
+ dish_category = DISH_CAKE
+ meal_category = MEAL_UNCATEGORIZED
+
/datum/crafting_recipe/food/fruitcake
- name = "english fruitcake"
+ name = "English Fruitcake"
reqs = list(
/obj/item/food/cake/plain = 1,
/obj/item/food/no_raisin = 1,
@@ -251,7 +275,8 @@
)
result = /obj/item/food/cake/fruit
removed_foodtypes = JUNKFOOD
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/plumcake
name = "Plum cake"
@@ -260,7 +285,8 @@
/obj/item/food/grown/plum = 2
)
result = /obj/item/food/cake/plum
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/weddingcake
name = "Wedding cake"
@@ -269,7 +295,8 @@
/datum/reagent/consumable/sugar = 120,
)
result = /obj/item/food/cake/wedding
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pineapple_cream_cake
name = "Pineapple cream cake"
@@ -279,4 +306,5 @@
/datum/reagent/consumable/cream = 20,
)
result = /obj/item/food/cake/pineapple_cream_cake
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
index c2de18daf0e..2bb13fed0e8 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
@@ -10,7 +10,7 @@
/obj/item/food/friedegg = 1,
)
result = /obj/item/food/eggsausage
- category = CAT_EGG
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/omelette
name = "Omelette du fromage"
@@ -21,7 +21,6 @@
result = /obj/item/food/omelette
added_foodtypes = BREAKFAST
removed_foodtypes = RAW
- category = CAT_EGG
/datum/crafting_recipe/food/chocolateegg
name = "Chocolate egg"
@@ -31,7 +30,8 @@
)
result = /obj/item/food/chocolateegg
removed_foodtypes = MEAT|BREAKFAST //This recipe is very wrong, please change it ffs
- category = CAT_EGG
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/eggsbenedict
name = "Eggs benedict"
@@ -41,7 +41,7 @@
/obj/item/food/breadslice/plain = 1,
)
result = /obj/item/food/benedict
- category = CAT_EGG
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/eggbowl
name = "Egg bowl"
@@ -54,7 +54,7 @@
)
result = /obj/item/food/salad/eggbowl
removed_foodtypes = BREAKFAST
- category = CAT_EGG
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/wrap
name = "Egg Wrap"
@@ -64,7 +64,8 @@
)
result = /obj/item/food/eggwrap
removed_foodtypes = BREAKFAST
- category = CAT_EGG
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/chawanmushi
name = "Chawanmushi"
@@ -76,5 +77,4 @@
)
result = /obj/item/food/chawanmushi
removed_foodtypes = BREAKFAST
- category = CAT_EGG
-
+ cuisine_category = CUISINE_JAPANESE
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
index 37213a2a684..30c34ca6b62 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
@@ -11,7 +11,8 @@
/obj/item/food/icecream = 1
)
result = /obj/item/food/icecreamsandwich
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/strawberryicecreamsandwich
name = "Strawberry ice cream sandwich"
@@ -22,7 +23,8 @@
/obj/item/food/icecream = 1
)
result = /obj/item/food/strawberryicecreamsandwich
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/spacefreezy
name ="Space freezy"
@@ -33,7 +35,8 @@
)
result = /obj/item/food/spacefreezy
added_foodtypes = FRUIT
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/sundae
name ="Sundae"
@@ -44,7 +47,8 @@
/obj/item/food/icecream = 1
)
result = /obj/item/food/sundae
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/honkdae
name ="Honkdae"
@@ -56,7 +60,8 @@
/obj/item/food/icecream = 1
)
result = /obj/item/food/honkdae
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/cornuto
name = "Cornuto"
@@ -69,7 +74,8 @@
)
result = /obj/item/food/cornuto
removed_foodtypes = JUNKFOOD
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
//////////////////////////SNOW CONES///////////////////////
@@ -80,7 +86,8 @@
/datum/reagent/consumable/ice = 15
)
result = /obj/item/food/snowcones
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/snowcone/pineapple
name = "Pineapple snowcone"
@@ -254,7 +261,8 @@
/datum/reagent/consumable/sugar = 2
)
result = /obj/item/food/popsicle/creamsicle_orange
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/berry_popsicle
name = "Berry popsicle"
@@ -267,7 +275,8 @@
/datum/reagent/consumable/sugar = 2
)
result = /obj/item/food/popsicle/creamsicle_berry
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/jumbo
name = "Jumbo icecream"
@@ -282,7 +291,8 @@
result = /obj/item/food/popsicle/jumbo
added_foodtypes = DAIRY
removed_foodtypes = JUNKFOOD
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/licorice_creamsicle
name = "Licorice popsicle"
@@ -296,7 +306,8 @@
/datum/reagent/consumable/sugar = 2
)
result = /obj/item/food/popsicle/licorice_creamsicle
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/meatsicle
name = "Meatsicle"
@@ -308,4 +319,5 @@
)
result = /obj/item/food/popsicle/meatsicle
added_foodtypes = SUGAR
- category = CAT_ICE
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_guide.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_guide.dm
index 03539136933..39661236e3f 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_guide.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_guide.dm
@@ -30,7 +30,7 @@
// Food reactions
/datum/crafting_recipe/food/reaction
- category = CAT_MISCFOOD
+ meal_category = MEAL_COMPONENT
non_craftable = TRUE
/datum/crafting_recipe/food/reaction/New()
@@ -60,30 +60,33 @@
/datum/crafting_recipe/food/reaction/candle
reaction = /datum/chemical_reaction/candlefication
result = /obj/item/flashlight/flare/candle
- category = CAT_CAKE
+ category = CAT_ENTERTAINMENT
/datum/crafting_recipe/food/reaction/tofu
reaction = /datum/chemical_reaction/food/tofu
result = /obj/item/food/tofu
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/reaction/candycorn
reaction = /datum/chemical_reaction/food/candycorn
result = /obj/item/food/candy_corn
- category = CAT_PASTRY
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/reaction/chocolatepudding
reaction = /datum/chemical_reaction/food/chocolatepudding
- category = CAT_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/reaction/vanillapudding
reaction = /datum/chemical_reaction/food/vanillapudding
- category = CAT_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/reaction/chocolatebar
name = "Chocolate bar"
reaction = /datum/chemical_reaction/food/chocolate_bar3
result = /obj/item/food/chocolatebar
- category = CAT_PASTRY
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/reaction/chocolatebar/chocomilk
name = "Chocolate bar (choco milk)"
@@ -95,13 +98,16 @@
/datum/crafting_recipe/food/reaction/soysauce
reaction = /datum/chemical_reaction/food/soysauce
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/reaction/corn_syrup
reaction = /datum/chemical_reaction/food/corn_syrup
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/reaction/caramel
reaction = /datum/chemical_reaction/food/caramel
- category = CAT_PASTRY
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/reaction/cheesewheel
reaction = /datum/chemical_reaction/food/cheesewheel
@@ -110,23 +116,23 @@
/datum/crafting_recipe/food/reaction/synthmeat
reaction = /datum/chemical_reaction/food/synthmeat
result = /obj/item/food/meat/slab/synthmeat
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/reaction/imitationcarpmeat
reaction = /datum/chemical_reaction/food/imitationcarpmeat
result = /obj/item/food/fishmeat/carp/imitation
- category = CAT_SEAFOOD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/reaction/dough
reaction = /datum/chemical_reaction/food/dough
result = /obj/item/food/dough
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/reaction/cakebatter
name = "Cake batter"
reaction = /datum/chemical_reaction/food/cakebatter
result = /obj/item/food/cakebatter
- category = CAT_BREAD
+ dish_category = DISH_CAKE
/datum/crafting_recipe/food/reaction/cakebatter/vegan
name = "Cake batter (vegan)"
@@ -136,25 +142,28 @@
/datum/crafting_recipe/food/reaction/pancakebatter
result = /datum/reagent/consumable/pancakebatter
reaction = /datum/chemical_reaction/food/pancakebatter
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/reaction/uncooked_rice
result = /obj/item/food/uncooked_rice
reaction = /datum/chemical_reaction/food/uncooked_rice
- category = CAT_SALAD
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/reaction/bbqsauce
result = /datum/reagent/consumable/bbqsauce
reaction = /datum/chemical_reaction/food/bbqsauce
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/reaction/gravy
result = /datum/reagent/consumable/gravy
reaction = /datum/chemical_reaction/food/gravy
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/reaction/mothic_pizza_dough
result = /obj/item/food/mothic_pizza_dough
reaction = /datum/chemical_reaction/food/mothic_pizza_dough
- category = CAT_BREAD
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/reaction/curd_cheese
result = /obj/item/food/cheese/curd_cheese
@@ -167,79 +176,85 @@
/datum/crafting_recipe/food/reaction/cornmeal_batter
result = /datum/reagent/consumable/cornmeal_batter
reaction = /datum/chemical_reaction/food/cornmeal_batter
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/reaction/cornbread
result = /obj/item/food/bread/corn
reaction = /datum/chemical_reaction/food/cornbread
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/reaction/yoghurt
result = /datum/reagent/consumable/yoghurt
reaction = /datum/chemical_reaction/food/yoghurt
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/reaction/olive_oil
result = /datum/reagent/consumable/nutriment/fat/oil/olive
reaction = /datum/chemical_reaction/food/olive_oil
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/reaction/olive_oil/upconvert
reaction = /datum/chemical_reaction/food/olive_oil_upconvert
/datum/crafting_recipe/food/reaction/moonshine
reaction = /datum/chemical_reaction/drink/moonshine
+ category = CAT_DRINK
/datum/crafting_recipe/food/reaction/martian_batter
reaction = /datum/chemical_reaction/food/martian_batter
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/grounding_neutralise
reaction = /datum/chemical_reaction/food/grounding_neutralise
+ dish_category = DISH_CONDIMENT
// Tools: Rolling pin
/datum/crafting_recipe/food/rollingpin
tool_behaviors = list(TOOL_ROLLINGPIN)
steps = list("Flatten with a rolling pin")
- category = CAT_MISCFOOD
non_craftable = TRUE
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/rollingpin/flatdough
reqs = list(/obj/item/food/dough = 1)
result = /obj/item/food/flatdough
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/rollingpin/flatrootdough
reqs = list(/obj/item/food/rootdough = 1)
result = /obj/item/food/flatrootdough
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/rollingpin/piedough
reqs = list(/obj/item/food/cakebatter = 1)
result = /obj/item/food/piedough
- category = CAT_BREAD
+ dish_category = DISH_PIE
/datum/crafting_recipe/food/rollingpin/raw_patty
reqs = list(/obj/item/food/raw_meatball = 1)
result = /obj/item/food/raw_patty
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/rollingpin/pizza_sheet
reqs = list(/obj/item/food/pizzaslice/margherita = 1)
result = /obj/item/stack/sheet/pizza
- category = CAT_PIZZA
+ cuisine_category = CUISINE_ITALIAN
+ dish_category = DISH_PIZZA
// Tools: Knife
/datum/crafting_recipe/food/knife
tool_behaviors = list(TOOL_KNIFE)
steps = list("Slice with a knife")
- category = CAT_MISCFOOD
non_craftable = TRUE
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/breadslice
reqs = list(/obj/item/food/bread/plain = 1)
result = /obj/item/food/breadslice/plain
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/knife/breadslice/root
reqs = list(/obj/item/food/bread/root = 1)
@@ -248,160 +263,199 @@
/datum/crafting_recipe/food/knife/cakeslice
reqs = list(/obj/item/food/cake/plain = 1)
result = /obj/item/food/cakeslice/plain
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/knife/pizzaslice
reqs = list(/obj/item/food/pizza/margherita = 1)
result = /obj/item/food/pizzaslice/margherita
- category = CAT_PIZZA
+ cuisine_category = CUISINE_ITALIAN
+ dish_category = DISH_PIZZA
+ meal_category = MEAL_MAIN_COURSE
/datum/crafting_recipe/food/knife/doughslice
reqs = list(/obj/item/food/flatdough = 1)
result = /obj/item/food/doughslice
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/rootdoughslice
reqs = list(/obj/item/food/flatrootdough = 1)
result = /obj/item/food/rootdoughslice
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/rawpastrybase
reqs = list(/obj/item/food/piedough = 1)
result = /obj/item/food/rawpastrybase
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/butterslice
reqs = list(/obj/item/food/butter = 1)
result = /obj/item/food/butterslice
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/doughball
reqs = list(/obj/item/food/doughslice = 1)
result = /obj/item/food/bait/doughball
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/nizaya
reqs = list(/obj/item/food/rootdoughslice = 1)
result = /obj/item/food/spaghetti/nizaya
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/rawcutlet
reqs = list(/obj/item/food/meat/slab = 1)
result = /obj/item/food/meat/rawcutlet
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/headcheese_slice
reqs = list(/obj/item/food/headcheese = 1)
result = /obj/item/food/headcheese_slice
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/potatowedge
reqs = list(/obj/item/food/grown/potato = 1)
result = /obj/item/food/grown/potato/wedges
+ dish_category = DISH_SALAD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/pineappleslice
reqs = list(/obj/item/food/grown/pineapple = 1)
result = /obj/item/food/pineappleslice
+ dish_category = DISH_SALAD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/onionslice
reqs = list(/obj/item/food/grown/onion = 1)
result = /obj/item/food/onion_slice
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/cheesewedge
reqs = list(/obj/item/food/cheese/wheel = 1)
result = /obj/item/food/cheese/wedge
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/firm_cheese_slice
reqs = list(/obj/item/food/cheese/firm_cheese = 1)
result = /obj/item/food/cheese/firm_cheese_slice
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/salami
reqs = list(/obj/item/food/sausage = 1)
result = /obj/item/food/salami
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/knife/american_sausage
reqs = list(/obj/item/food/sausage = 1)
result = /obj/item/food/sausage/american
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/knife/tempehslice
reqs = list(/obj/item/food/tempeh = 1)
result = /obj/item/food/tempehslice
+ dish_category = DISH_MEAT
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/brownie
reqs = list(/obj/item/food/brownie_sheet = 1)
result = /obj/item/food/brownie
- category = CAT_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/knife/spicyfiletsushislice
reqs = list(/obj/item/food/spicyfiletsushiroll = 1)
result = /obj/item/food/spicyfiletsushislice
- category = CAT_SEAFOOD
+ dish_category = DISH_SUSHI
+ meal_category = MEAL_MAIN_COURSE
/datum/crafting_recipe/food/knife/vegetariansushislice
reqs = list(/obj/item/food/vegetariansushiroll = 1)
result = /obj/item/food/vegetariansushislice
- category = CAT_SEAFOOD
+ dish_category = DISH_SUSHI
+ meal_category = MEAL_MAIN_COURSE
/datum/crafting_recipe/food/knife/beef_wellington_slice
reqs = list(/obj/item/food/beef_wellington = 1)
result = /obj/item/food/beef_wellington_slice
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_MAIN_COURSE
/datum/crafting_recipe/food/knife/green_lasagne_slice
reqs = list(/obj/item/food/green_lasagne = 1)
result = /obj/item/food/green_lasagne_slice
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ meal_category = MEAL_MAIN_COURSE
/datum/crafting_recipe/food/knife/lil_baked_rice
reqs = list(/obj/item/food/big_baked_rice = 1)
result = /obj/item/food/lil_baked_rice
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_RICE
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/watermelonslice
reqs = list(/obj/item/food/grown/watermelon = 1)
result = /obj/item/food/watermelonslice
- category = CAT_SALAD
+ dish_category = DISH_SALAD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/appleslice
reqs = list(/obj/item/food/grown/apple = 1)
result = /obj/item/food/appleslice
- category = CAT_SALAD
+ dish_category = DISH_SALAD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/kamaboko_slice
reqs = list(/obj/item/food/kamaboko = 1)
result = /obj/item/food/kamaboko_slice
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/knife/raw_noodles
reqs = list(/obj/item/food/rice_dough = 1)
result = /obj/item/food/spaghetti/rawnoodles
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_NOODLES
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/knife/chapslice
reqs = list(/obj/item/food/canned/chap = 1)
result = /obj/item/food/chapslice
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_COMPONENT
// Machinery: Grill
/datum/crafting_recipe/food/grill
machinery = list(/obj/machinery/griddle)
steps = list("Grill until ready")
- category = CAT_MEAT
+ dish_category = DISH_MEAT
non_craftable = TRUE
/datum/crafting_recipe/food/grill/meatball
reqs = list(/obj/item/food/raw_meatball = 1)
result = /obj/item/food/meatball
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/grill/patty
reqs = list(/obj/item/food/raw_patty = 1)
result = /obj/item/food/patty
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/grill/cutlet
reqs = list(/obj/item/food/meat/rawcutlet = 1)
result = /obj/item/food/meat/cutlet
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/grill/steak
reqs = list(/obj/item/food/meat/slab = 1)
@@ -418,65 +472,74 @@
/datum/crafting_recipe/food/grill/bacon
reqs = list(/obj/item/food/meat/rawbacon = 1)
result = /obj/item/food/meat/bacon
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/grill/sausage
reqs = list(/obj/item/food/raw_sausage = 1)
result = /obj/item/food/sausage
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/grill/moonfish
reqs = list(/obj/item/food/fishmeat/moonfish = 1)
result = /obj/item/food/grilled_moonfish
- category = CAT_SEAFOOD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/grill/rootflatbread
reqs = list(/obj/item/food/flatrootdough = 1)
result = /obj/item/food/root_flatbread
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/grill/griddle_toast
reqs = list(/obj/item/food/breadslice/plain = 1)
result = /obj/item/food/griddle_toast
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_BREAKFAST
/datum/crafting_recipe/food/grill/frenchtoast
reqs = list(/obj/item/food/raw_frenchtoast = 1)
result = /obj/item/food/frenchtoast
- category = CAT_BREAD
+ dish_category = DISH_BREAD
+ meal_category = MEAL_BREAKFAST
/datum/crafting_recipe/food/grill/khinkali
reqs = list(/obj/item/food/rawkhinkali = 1)
result = /obj/item/food/khinkali
- category = CAT_BREAD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/grill/grilled_cheese_sandwich
reqs = list(/obj/item/food/sandwich/cheese = 1)
result = /obj/item/food/sandwich/grilled_cheese
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/grill/grilled_cheese
reqs = list(/obj/item/food/cheese/firm_cheese_slice = 1)
result = /obj/item/food/grilled_cheese
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED // this is just cheese?
/datum/crafting_recipe/food/grill/ballpark_pretzel
reqs = list(/obj/item/food/raw_ballpark_pretzel = 1)
result = /obj/item/food/ballpark_pretzel
- category = CAT_MARTIAN
+ dish_category = DISH_PASTRY
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/grill/ballpark_tsukune
reqs = list(/obj/item/food/kebab/raw_ballpark_tsukune = 1)
result = /obj/item/food/kebab/ballpark_tsukune
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/grill/chapslice
reqs = list(/obj/item/food/chapslice = 1)
result = /obj/item/food/grilled_chapslice
- category = CAT_MEAT
/datum/crafting_recipe/food/grill/friedegg
reqs = list(/obj/item/food/egg = 1)
result = /obj/item/food/friedegg
- category = CAT_EGG
+ meal_category = MEAL_APPETIZER
+ dish_category = DISH_UNCATEGORIZED
steps = list(
"Break the egg onto a griddle",
"Fry until ready"
@@ -485,7 +548,7 @@
/datum/crafting_recipe/food/grill/pancake
reqs = list(/datum/reagent/consumable/pancakebatter = 5)
result = /obj/item/food/pancakes
- category = CAT_BREAD
+ dish_category = DISH_BREAD
steps = list(
"Pour batter onto a griddle",
"Bake until ready"
@@ -518,26 +581,31 @@
/datum/crafting_recipe/food/grill/hard_taco_shell
reqs = list(/obj/item/food/tortilla = 1)
result = /obj/item/food/hard_taco_shell
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_TACO
+ meal_category = MEAL_COMPONENT
// Machinery: Grinder
/datum/crafting_recipe/food/grinder
machinery = list(/obj/machinery/reagentgrinder)
steps = list("Put into grinder and grind")
- category = CAT_MISCFOOD
non_craftable = TRUE
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/grinder/capsaicin
reqs = list(/obj/item/food/grown/chili = 1)
result = /datum/reagent/consumable/capsaicin
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/frostoil
reqs = list(/obj/item/food/grown/icepepper = 1)
result = /datum/reagent/consumable/frostoil
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/ketchup
reqs = list(/obj/item/food/grown/tomato = 1)
result = /datum/reagent/consumable/ketchup
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/kortaflour
reqs = list(/obj/item/food/grown/korta_nut = 1)
@@ -569,15 +637,18 @@
reqs = list(/datum/reagent/consumable/milk = MILK_TO_BUTTER_COEFF)
result = /obj/item/food/butter
steps = list("Put into grinder and mix")
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/mayonnaise
reqs = list(/datum/reagent/consumable/eggyolk = 1)
result = /datum/reagent/consumable/mayonnaise
steps = list("Put into grinder and mix")
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/sugar
reqs = list(/obj/item/food/grown/sugarcane = 1)
result = /datum/reagent/consumable/sugar
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/sugar/beet
reqs = list(/obj/item/food/grown/whitebeet = 1)
@@ -591,55 +662,64 @@
/datum/crafting_recipe/food/grinder/sprinkles
reqs = list(/obj/item/food/donut/plain = 1)
result = /datum/reagent/consumable/sprinkles
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/cherryjelly
reqs = list(/obj/item/food/grown/cherries = 1)
result = /datum/reagent/consumable/cherryjelly
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/bluecherryjelly
reqs = list(/obj/item/food/grown/bluecherries = 1)
result = /datum/reagent/consumable/bluecherryjelly
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/olivepaste
reqs = list(/obj/item/food/grown/olive = 1)
result = /datum/reagent/consumable/olivepaste
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/grinder/peanutbutter
reqs = list(/obj/item/food/grown/peanut = 1)
result = /datum/reagent/consumable/peanut_butter
+ dish_category = DISH_CONDIMENT
// Machinery: Processor
/datum/crafting_recipe/food/processor
machinery = list(/obj/machinery/processor)
steps = list("Put into processor and activate")
- category = CAT_MISCFOOD
non_craftable = TRUE
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/processor/rawbacon
reqs = list(/obj/item/food/meat/rawcutlet = 1)
result = /obj/item/food/meat/rawbacon
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/processor/rawmeatball
reqs = list(/obj/item/food/meat/slab = 1)
result = /obj/item/food/raw_meatball
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/processor/tatortot
reqs = list(/obj/item/food/grown/potato = 1)
result = /obj/item/food/tatortot
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/processor/fries
reqs = list(/obj/item/food/grown/potato/wedges = 1)
result = /obj/item/food/fries
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/processor/carrotfries
reqs = list(/obj/item/food/grown/carrot = 1)
result = /obj/item/food/carrotfries
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/processor/roastparsnip
reqs = list(/obj/item/food/grown/parsnip = 1)
result = /obj/item/food/roastparsnip
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/processor/soydope
reqs = list(/obj/item/food/grown/soybeans = 1)
@@ -648,20 +728,23 @@
/datum/crafting_recipe/food/processor/spaghetti
reqs = list(/obj/item/food/doughslice = 1)
result = /obj/item/food/spaghetti/raw
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/processor/tortilla
reqs = list(/obj/item/food/grown/corn = 1)
result = /obj/item/food/tortilla
- category = CAT_MEXICAN
+ dish_category = DISH_BREAD
+ cuisine_category = CUISINE_MEXICAN
/datum/crafting_recipe/food/processor/tempeh
reqs = list(/obj/item/food/tempehstarter = 1)
result = /obj/item/food/tempeh
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/processor/popsicle_stick
reqs = list(/obj/item/grown/log = 1)
result = /obj/item/popsicle_stick
+ category = CAT_MISC
/datum/crafting_recipe/food/processor/spidereggs
reqs = list(/obj/item/food/spidereggs = 1)
@@ -671,42 +754,42 @@
/datum/crafting_recipe/food/microwave
machinery = list(/obj/machinery/microwave)
steps = list("Microwave until ready")
- category = CAT_MISCFOOD
non_craftable = TRUE
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/microwave/boiledegg
reqs = list(/obj/item/food/egg = 1)
result = /obj/item/food/boiledegg
- category = CAT_EGG
/datum/crafting_recipe/food/microwave/boiledrice
reqs = list(/obj/item/food/uncooked_rice = 1)
result = /obj/item/food/boiledrice
- category = CAT_SALAD
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/microwave/boiledspaghetti
reqs = list(/obj/item/food/spaghetti/raw = 1)
result = /obj/item/food/spaghetti/boiledspaghetti
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/microwave/onionrings
reqs = list(/obj/item/food/onion_slice = 1)
result = /obj/item/food/onionrings
- category = CAT_SALAD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/microwave/popcorn
reqs = list(/obj/item/food/grown/corn = 1)
result = /obj/item/food/popcorn
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/microwave/cakehat
reqs = list(/obj/item/food/cake/birthday = 1)
result = /obj/item/clothing/head/utility/hardhat/cakehat
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_UNCATEGORIZED
/datum/crafting_recipe/food/microwave/cakehat/energycake
reqs = list(/obj/item/food/cake/birthday/energy = 1)
result = /obj/item/clothing/head/utility/hardhat/cakehat/energycake
- category = CAT_CAKE
/datum/crafting_recipe/food/microwave/cheese_curds
reqs = list(/obj/item/food/cheese/curd_cheese = 1)
@@ -716,7 +799,7 @@
/datum/crafting_recipe/food/oven
machinery = list(/obj/machinery/oven)
steps = list("Bake in the oven until ready")
- category = CAT_BREAD
+ dish_category = DISH_BREAD
non_craftable = TRUE
/datum/crafting_recipe/food/oven/bread
@@ -730,105 +813,119 @@
/datum/crafting_recipe/food/oven/bun
reqs = list(/obj/item/food/doughslice = 1)
result = /obj/item/food/bun
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/oven/rootroll
reqs = list(/obj/item/food/rootdoughslice = 1)
result = /obj/item/food/rootroll
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/oven/pastrybase
reqs = list(/obj/item/food/rawpastrybase = 1)
result = /obj/item/food/pastrybase
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/oven/pizzabread
reqs = list(/obj/item/food/flatdough = 1)
result = /obj/item/food/pizzabread
- category = CAT_PIZZA
+ cuisine_category = CUISINE_ITALIAN
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/oven/pizza
reqs = list(/obj/item/food/pizza/margherita/raw = 1)
result = /obj/item/food/pizza/margherita
- category = CAT_PIZZA
+ cuisine_category = CUISINE_ITALIAN
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/oven/rootflatbread
reqs = list(/obj/item/food/flatrootdough = 1)
result = /obj/item/food/root_flatbread
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/oven/pie
reqs = list(/obj/item/food/piedough = 1)
result = /obj/item/food/pie/plain
- category = CAT_PIE
+ dish_category = DISH_PIE
/datum/crafting_recipe/food/oven/cake
reqs = list(/obj/item/food/cakebatter = 1)
result = /obj/item/food/cake/plain
- category = CAT_CAKE
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/oven/breadstick
reqs = list(/obj/item/food/raw_breadstick = 1)
result = /obj/item/food/breadstick
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/oven/baked_cheese
reqs = list(/obj/item/food/cheese/wheel = 1)
result = /obj/item/food/baked_cheese
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/oven/browniesheet
reqs = list(/obj/item/food/raw_brownie_batter = 1)
result = /obj/item/food/brownie_sheet
- category = CAT_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/oven/green_lasagne
reqs = list(/obj/item/food/raw_green_lasagne = 1)
result = /obj/item/food/green_lasagne
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/oven/big_baked_rice
reqs = list(/obj/item/food/raw_baked_rice = 1)
result = /obj/item/food/big_baked_rice
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/oven/ratatouille
reqs = list(/obj/item/food/raw_ratatouille = 1)
result = /obj/item/food/ratatouille
- category = CAT_SALAD
+ dish_category = DISH_SALAD
+ // cuisine_category = CUISINE_FRENCH
/datum/crafting_recipe/food/oven/stuffed_peppers
+ name = "Voltölpapriken (Stuffed peppers)"
reqs = list(/obj/item/food/raw_stuffed_peppers = 1)
result = /obj/item/food/stuffed_peppers
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/oven/roasted_bell_pepper
reqs = list(/obj/item/food/grown/bell_pepper = 1)
result = /obj/item/food/roasted_bell_pepper
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/oven/oven_baked_corn
reqs = list(/obj/item/food/grown/corn = 1)
result = /obj/item/food/oven_baked_corn
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/oven/yakiimo
reqs = list(/obj/item/food/grown/potato/sweet = 1)
result = /obj/item/food/yakiimo
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/oven/reispan
reqs = list(/obj/item/food/rice_dough = 1)
result = /obj/item/food/bread/reispan
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/oven/ballpark_pretzel
reqs = list(/obj/item/food/raw_ballpark_pretzel = 1)
result = /obj/item/food/ballpark_pretzel
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
// Machinery: Drying rack
/datum/crafting_recipe/food/drying
machinery = list(/obj/machinery/smartfridge/drying)
steps = list("Put into the rack and dry")
- category = CAT_MISCFOOD
non_craftable = TRUE
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/drying/firm_cheese
reqs = list(/obj/item/food/cheese/cheese_curds = 1)
@@ -837,27 +934,33 @@
/datum/crafting_recipe/food/drying/headcheese
reqs = list(/obj/item/food/raw_headcheese = 1)
result = /obj/item/food/headcheese
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/drying/tiziran_sausage
reqs = list(/obj/item/food/raw_tiziran_sausage = 1)
result = /obj/item/food/tiziran_sausage
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/drying/sosjerky
reqs = list(/obj/item/food/meat/slab = 1)
result = /obj/item/food/sosjerky/healthy
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/drying/no_raisin/healthy
reqs = list(/obj/item/food/grown/grapes = 1)
result = /obj/item/food/no_raisin/healthy
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/drying/semki
reqs = list(/obj/item/food/grown/sunflower = 1)
result = /obj/item/food/semki/healthy
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/drying/kamaboko
reqs = list(/obj/item/food/surimi = 1)
result = /obj/item/food/kamaboko
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_SNACK
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_lizard.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_lizard.dm
index 280b233d155..8dc2a208742 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_lizard.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_lizard.dm
@@ -7,7 +7,8 @@
/datum/reagent/consumable/salt = 2
)
result = /obj/item/food/raw_tiziran_sausage
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/headcheese
name = "Raw headcheese"
@@ -18,7 +19,8 @@
)
result = /obj/item/food/raw_headcheese
added_foodtypes = GORE
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/shredded_lungs
name = "Crispy shredded lung stirfry"
@@ -34,7 +36,8 @@
)
result = /obj/item/food/shredded_lungs
added_foodtypes = MEAT|GORE
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/tsatsikh
name = "Tsatsikh"
@@ -47,7 +50,8 @@
/datum/reagent/consumable/blackpepper = 2
)
result = /obj/item/food/tsatsikh
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/liver_pate
name = "Liver pate"
@@ -58,7 +62,8 @@
)
result = /obj/item/food/liver_pate
removed_foodtypes = RAW
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/moonfish_caviar
name = "Moonfish caviar paste"
@@ -67,7 +72,8 @@
/datum/reagent/consumable/salt = 2
)
result = /obj/item/food/moonfish_caviar
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/lizard_escargot
name = "Desert snail cocleas"
@@ -81,7 +87,8 @@
)
result = /obj/item/food/lizard_escargot
removed_foodtypes = GORE
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/fried_blood_sausage
name = "Fried blood sausage"
@@ -93,7 +100,8 @@
result = /obj/item/food/fried_blood_sausage
added_foodtypes = FRIED|NUTS
removed_foodtypes = RAW
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/lizard_fries
name = "Loaded poms-franzisks"
@@ -104,7 +112,8 @@
/obj/item/plate = 1,
)
result = /obj/item/food/lizard_fries
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/brain_pate
name = "Eyeball-and-brain pate"
@@ -116,7 +125,8 @@
)
result = /obj/item/food/brain_pate
added_foodtypes = MEAT|GORE
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/crispy_headcheese
name = "Crispy breaded headcheese"
@@ -125,7 +135,8 @@
/obj/item/food/breadslice/root = 1
)
result = /obj/item/food/crispy_headcheese
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/picoss_skewers
name = "Picoss skewers"
@@ -137,7 +148,8 @@
/datum/reagent/consumable/vinegar = 5
)
result = /obj/item/food/kebab/picoss_skewers
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/nectar_larvae
name = "Nectar larvae"
@@ -148,7 +160,8 @@
/datum/reagent/consumable/korta_nectar = 5
)
result = /obj/item/food/nectar_larvae
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/mushroomy_stirfry
name = "Mushroomy Stirfry"
@@ -159,7 +172,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 5
)
result = /obj/item/food/mushroomy_stirfry
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/moonfish_demiglace
name = "Moonfish demiglace"
@@ -171,7 +185,8 @@
/datum/reagent/consumable/ethanol/wine = 5
)
result = /obj/item/food/moonfish_demiglace
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/lizard_surf_n_turf
name = "Zagosk surf n turf smorgasbord"
@@ -183,7 +198,8 @@
)
removed_foodtypes = SUGAR
result = /obj/item/food/lizard_surf_n_turf
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/rootdough
name = "Rootdough (Without Eggs)"
@@ -195,7 +211,8 @@
)
result = /obj/item/food/rootdough
added_foodtypes = NUTS
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
crafting_flags = parent_type::crafting_flags & ~CRAFT_TRANSFERS_REAGENT_COMPONENTS // prevents water from reacting immediately, clearing the dish
/datum/crafting_recipe/food/rootdough/with_eggs
@@ -207,7 +224,7 @@
/datum/reagent/water = 10
)
result = /obj/item/food/rootdough/egg
- removed_foodtypes = RAW
+ removed_foodtypes = RAW|EGG
/**
* So, at some point, we've had some mean issues with crafting with empty containers.
* Bugs happen and we fix them all the time, so let's make sure stuff like this won't happen again.
@@ -234,7 +251,8 @@
)
result = /obj/item/food/spaghetti/snail_nizaya
removed_foodtypes = GORE
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/garlic_nizaya
name = "Garlic nizaya"
@@ -245,7 +263,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 5
)
result = /obj/item/food/spaghetti/garlic_nizaya
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/demit_nizaya
name = "Demit nizaya"
@@ -259,7 +278,8 @@
)
result = /obj/item/food/spaghetti/demit_nizaya
added_foodtypes = SUGAR
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/mushroom_nizaya
name = "Mushroom nizaya"
@@ -270,7 +290,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 5
)
result = /obj/item/food/spaghetti/mushroom_nizaya
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/rustic_flatbread
name = "Rustic flatbread"
@@ -281,7 +302,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 3
)
result = /obj/item/food/pizza/flatbread/rustic
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/italic_flatbread
name = "Italic flatbread"
@@ -293,7 +315,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 3
)
result = /obj/item/food/pizza/flatbread/italic
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/imperial_flatbread
name = "Imperial flatbread"
@@ -304,7 +327,8 @@
/obj/item/food/headcheese = 1
)
result = /obj/item/food/pizza/flatbread/imperial
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/rawmeat_flatbread
name = "Meatlovers flatbread"
@@ -313,7 +337,8 @@
/obj/item/food/meat/slab = 1
)
result = /obj/item/food/pizza/flatbread/rawmeat
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/stinging_flatbread
name = "Stinging flatbread"
@@ -323,7 +348,8 @@
/obj/item/food/canned/jellyfish = 1
)
result = /obj/item/food/pizza/flatbread/stinging
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/zmorgast_flatbread
name = "Zmorgast flatbread"
@@ -335,7 +361,8 @@
)
result = /obj/item/food/pizza/flatbread/zmorgast
removed_foodtypes = RAW
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/fish_flatbread
name = "BBQ fish flatbread"
@@ -345,7 +372,8 @@
/datum/reagent/consumable/bbqsauce = 5
)
result = /obj/item/food/pizza/flatbread/fish
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/mushroom_flatbread
name = "Mushroom and tomato flatbread"
@@ -356,7 +384,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 3
)
result = /obj/item/food/pizza/flatbread/mushroom
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/nutty_flatbread
name = "Nut paste flatbread"
@@ -367,7 +396,8 @@
)
result = /obj/item/food/pizza/flatbread/nutty
removed_foodtypes = VEGETABLES //This is so nuts
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/emperor_roll
name = "Emperor roll"
@@ -378,7 +408,8 @@
/obj/item/food/moonfish_caviar = 1
)
result = /obj/item/food/emperor_roll
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/honey_sweetroll
name = "Honey sweetroll"
@@ -389,7 +420,8 @@
/datum/reagent/consumable/honey = 5
)
result = /obj/item/food/honey_roll
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/black_eggs
name = "Black scrambled eggs"
@@ -401,7 +433,8 @@
result = /obj/item/food/black_eggs
added_foodtypes = GORE|BREAKFAST
removed_foodtypes = RAW
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/patzikula
name = "Patzikula"
@@ -414,7 +447,8 @@
result = /obj/item/food/patzikula
removed_foodtypes = RAW
added_foodtypes = BREAKFAST
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/korta_brittle
name = "Korta brittle slab"
@@ -427,7 +461,8 @@
)
result = /obj/item/food/cake/korta_brittle
added_foodtypes = SUGAR
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/korta_ice
name = "Korta ice"
@@ -439,7 +474,8 @@
)
result = /obj/item/food/snowcones/korta_ice
added_foodtypes = SUGAR|NUTS
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_FROZEN
/datum/crafting_recipe/food/candied_mushrooms
name = "Candied mushrooms"
@@ -451,7 +487,9 @@
)
result = /obj/item/food/kebab/candied_mushrooms
added_foodtypes = SUGAR
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/sauerkraut
name = "Sauerkraut"
@@ -460,7 +498,9 @@
/datum/reagent/consumable/salt = 10
)
result = /obj/item/food/sauerkraut
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_CONDIMENT
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/lizard_dumplings
name = "Tiziran dumplings"
@@ -470,7 +510,8 @@
)
result = /obj/item/food/lizard_dumplings
added_foodtypes = NUTS
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/steeped_mushrooms
name = "Steeped mushrooms"
@@ -479,7 +520,8 @@
/datum/reagent/lye = 5
)
result = /obj/item/food/steeped_mushrooms
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/rootbreadpbj
name = "Peanut butter and jelly rootwich"
@@ -490,7 +532,8 @@
)
result = /obj/item/food/rootbread_peanut_butter_jelly
added_foodtypes = FRUIT
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/rootbreadpbb
name = "Peanut butter and banana rootwich"
@@ -501,29 +544,30 @@
)
result = /obj/item/food/rootbread_peanut_butter_banana
added_foodtypes = FRUIT
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
+ dish_category = DISH_SANDWICH
// Soups
/datum/crafting_recipe/food/reaction/soup/atrakor_dumplings
reaction = /datum/chemical_reaction/food/soup/atrakor_dumplings
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/reaction/soup/meatball_noodles
reaction = /datum/chemical_reaction/food/soup/meatball_noodles
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/reaction/soup/black_broth
reaction = /datum/chemical_reaction/food/soup/black_broth
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/reaction/soup/jellyfish_stew
reaction = /datum/chemical_reaction/food/soup/jellyfish_stew
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/reaction/soup/jellyfish_stew_two
reaction = /datum/chemical_reaction/food/soup/jellyfish_stew_two
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
/datum/crafting_recipe/food/reaction/soup/rootbread_soup
reaction = /datum/chemical_reaction/food/soup/rootbread_soup
- category = CAT_LIZARD
+ cuisine_category = CUISINE_LIZARD
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_martian.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_martian.dm
index d903a2c5700..5a363cc0283 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_martian.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_martian.dm
@@ -6,7 +6,8 @@
/datum/reagent/consumable/salt = 5
)
result = /obj/item/food/kimchi
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/inferno_kimchi
name = "Inferno kimchi"
@@ -16,7 +17,8 @@
/datum/reagent/consumable/salt = 5
)
result = /obj/item/food/inferno_kimchi
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/garlic_kimchi
name = "Garlic kimchi"
@@ -27,7 +29,8 @@
/datum/reagent/consumable/salt = 5
)
result = /obj/item/food/garlic_kimchi
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/surimi
name = "Surimi"
@@ -35,7 +38,8 @@
/obj/item/food/fishmeat = 1,
)
result = /obj/item/food/surimi
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/sambal
name = "Sambal"
@@ -49,7 +53,8 @@
)
result = /obj/item/food/sambal
added_foodtypes = SEAFOOD //Until we have easy to get shrimp to add to the recipe
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/katsu_fillet
name = "Katsu fillet"
@@ -60,7 +65,8 @@
result = /obj/item/food/katsu_fillet
removed_foodtypes = RAW
added_foodtypes = FRIED
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
/datum/crafting_recipe/food/rice_dough
name = "Rice dough"
@@ -71,7 +77,8 @@
)
result = /obj/item/food/rice_dough
crafting_flags = CRAFT_CHECK_DENSITY
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/hurricane_rice
name = "Hurricane fried rice"
@@ -87,7 +94,8 @@
)
result = /obj/item/food/salad/hurricane_rice
removed_foodtypes = RAW|BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/ikareis
name = "Ikareis"
@@ -102,7 +110,8 @@
)
result = /obj/item/food/salad/ikareis
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/hawaiian_fried_rice
name = "Hawaiian fried rice"
@@ -117,7 +126,8 @@
)
result = /obj/item/food/salad/hawaiian_fried_rice
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/ketchup_fried_rice
name = "Ketchup fried rice"
@@ -133,7 +143,8 @@
)
result = /obj/item/food/salad/ketchup_fried_rice
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/mediterranean_fried_rice
name = "Mediterranean fried rice"
@@ -148,7 +159,8 @@
)
result = /obj/item/food/salad/mediterranean_fried_rice
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/egg_fried_rice
name = "Egg fried rice"
@@ -160,7 +172,8 @@
)
result = /obj/item/food/salad/egg_fried_rice
removed_foodtypes = BREAKFAST|RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/bibimbap
name = "Bibimbap"
@@ -175,7 +188,8 @@
)
result = /obj/item/food/salad/bibimbap
removed_foodtypes = RAW|BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/bulgogi_noodles
name = "Bulgogi noodles"
@@ -189,7 +203,8 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/salad/bulgogi_noodles
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/yakisoba_katsu
name = "Yakisoba katsu"
@@ -203,7 +218,8 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/salad/yakisoba_katsu
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/martian_fried_noodles
name = "Martian fried noodles"
@@ -219,7 +235,8 @@
)
result = /obj/item/food/salad/martian_fried_noodles
removed_foodtypes = RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/simple_fried_noodles
name = "Simple fried noodles"
@@ -229,7 +246,8 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/salad/simple_fried_noodles
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/setagaya_curry
name = "Setagaya curry"
@@ -250,7 +268,8 @@
)
result = /obj/item/food/salad/setagaya_curry
removed_foodtypes = RAW|JUNKFOOD|BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/big_blue_burger
name = "Big Blue Burger"
@@ -265,7 +284,8 @@
)
result = /obj/item/food/burger/big_blue
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/chappy_patty
name = "Chappy Patty"
@@ -278,7 +298,8 @@
)
result = /obj/item/food/burger/chappy
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_BURGER
/datum/crafting_recipe/food/king_katsu_sandwich
name = "King Katsu sandwich"
@@ -292,7 +313,8 @@
)
result = /obj/item/food/king_katsu_sandwich
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/marte_cubano_sandwich
name = "Marte Cubano sandwich"
@@ -304,7 +326,8 @@
)
result = /obj/item/food/marte_cubano_sandwich
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/little_shiro_sandwich
name = "Little Shiro sandwich"
@@ -318,7 +341,8 @@
)
result = /obj/item/food/little_shiro_sandwich
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/croque_martienne
name = "Croque-Martienne sandwich"
@@ -330,7 +354,8 @@
/obj/item/food/friedegg = 1,
)
result = /obj/item/food/croque_martienne
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/prospect_sunrise
name = "Prospect Sunrise sandwich"
@@ -342,7 +367,8 @@
/obj/item/food/pickle = 1,
)
result = /obj/item/food/prospect_sunrise
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/takoyaki
name = "Takoyaki"
@@ -354,7 +380,9 @@
)
result = /obj/item/food/takoyaki
added_foodtypes = GRAIN|FRIED
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/russian_takoyaki
name = "Russian takoyaki"
@@ -366,7 +394,9 @@
)
result = /obj/item/food/takoyaki/russian
added_foodtypes = GRAIN|FRIED
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/tacoyaki
name = "Tacoyaki"
@@ -379,7 +409,9 @@
)
result = /obj/item/food/takoyaki/taco
added_foodtypes = GRAIN|FRIED|SEAFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/okonomiyaki
name = "Okonomiyaki"
@@ -392,7 +424,9 @@
)
result = /obj/item/food/okonomiyaki
added_foodtypes = GRAIN|FRIED|SEAFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY // ??
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/brat_kimchi
name = "Brat-kimchi"
@@ -403,7 +437,8 @@
)
result = /obj/item/food/brat_kimchi
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/tonkatsuwurst
name = "Tonkatsuwurst"
@@ -415,7 +450,9 @@
)
result = /obj/item/food/tonkatsuwurst
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/ti_hoeh_koe
name = "Ti hoeh koe"
@@ -428,7 +465,7 @@
result = /obj/item/food/kebab/ti_hoeh_koe
removed_foodtypes = JUNKFOOD|VEGETABLES|BREAKFAST
added_foodtypes = MEAT|FRIED
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/kitzushi
name = "Kitzushi"
@@ -441,7 +478,8 @@
result = /obj/item/food/kitzushi
removed_foodtypes = BREAKFAST
added_foodtypes = FRIED
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SUSHI
/datum/crafting_recipe/food/epok_epok
name = "Epok-epok"
@@ -455,7 +493,8 @@
result = /obj/item/food/epok_epok
removed_foodtypes = BREAKFAST
added_foodtypes = FRIED
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/roti_john
name = "Roti John"
@@ -470,7 +509,8 @@
result = /obj/item/food/roti_john
added_foodtypes = BREAKFAST
removed_foodtypes = RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/izakaya_fries
name = "Izakaya fries"
@@ -481,7 +521,8 @@
/datum/reagent/consumable/mayonnaise = 3,
)
result = /obj/item/food/izakaya_fries
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/kurry_ok_subsando
name = "Kurry-OK subsando"
@@ -492,7 +533,8 @@
/datum/reagent/consumable/nutriment/soup/curry_sauce = 5,
)
result = /obj/item/food/kurry_ok_subsando
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/loco_moco
name = "Loco moco"
@@ -505,7 +547,8 @@
)
result = /obj/item/food/loco_moco
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/wild_duck_fries
name = "Wild duck fries"
@@ -515,7 +558,8 @@
/datum/reagent/consumable/ketchup = 3,
)
result = /obj/item/food/wild_duck_fries
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/little_hawaii_hotdog
name = "Little Hawaii hotdog"
@@ -526,7 +570,8 @@
/datum/reagent/consumable/nutriment/soup/teriyaki = 3,
)
result = /obj/item/food/little_hawaii_hotdog
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/salt_chilli_fries
name = "Salt n' chilli fries"
@@ -538,7 +583,8 @@
/datum/reagent/consumable/salt = 3,
)
result = /obj/item/food/salt_chilli_fries
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/steak_croquette
name = "Steak croquette"
@@ -549,7 +595,8 @@
)
result = /obj/item/food/steak_croquette
added_foodtypes = FRIED
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/chapsilog
name = "Chapsilog"
@@ -560,7 +607,7 @@
/obj/item/food/grown/garlic = 1,
)
result = /obj/item/food/chapsilog
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/chap_hash
name = "Chap hash"
@@ -574,7 +621,7 @@
result = /obj/item/food/chap_hash
removed_foodtypes = RAW
added_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/agedashi_tofu
name = "Agedashi tofu"
@@ -586,7 +633,8 @@
)
result = /obj/item/food/salad/agedashi_tofu
added_foodtypes = SEAFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SOUP
/datum/crafting_recipe/food/po_kok_gai
name = "Po kok gai"
@@ -600,7 +648,8 @@
result = /obj/item/food/salad/po_kok_gai
added_foodtypes = FRUIT
removed_foodtypes = RAW|BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/huoxing_tofu
name = "Huoxing tofu"
@@ -613,7 +662,8 @@
)
result = /obj/item/food/salad/huoxing_tofu
removed_foodtypes = RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/feizhou_ji
name = "Fēizhōu jī"
@@ -625,7 +675,8 @@
)
result = /obj/item/food/feizhou_ji
removed_foodtypes = RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/galinha_de_cabidela
name = "Galinha de cabidela"
@@ -638,7 +689,8 @@
)
result = /obj/item/food/salad/galinha_de_cabidela
removed_foodtypes = RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/katsu_curry
name = "Katsu curry"
@@ -650,7 +702,8 @@
)
result = /obj/item/food/salad/katsu_curry
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/beef_bowl
name = "Beef bowl"
@@ -664,7 +717,8 @@
result = /obj/item/food/salad/beef_bowl
removed_foodtypes = BREAKFAST
added_foodtypes = SEAFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/salt_chilli_bowl
name = "Salt n' chilli octopus bowl"
@@ -679,7 +733,8 @@
)
result = /obj/item/food/salad/salt_chilli_bowl
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/kansai_bowl
name = "Kansai bowl"
@@ -693,7 +748,8 @@
)
result = /obj/item/food/salad/kansai_bowl
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/eigamudo_curry
name = "Eigamudo curry"
@@ -708,7 +764,8 @@
result = /obj/item/food/salad/eigamudo_curry
removed_foodtypes = BREAKFAST
added_foodtypes = GROSS|TOXIC
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/cilbir
name = "Çilbir"
@@ -721,7 +778,8 @@
)
result = /obj/item/food/cilbir
added_foodtypes = DAIRY
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/peking_duck_crepes
name = "Peking duck crepes a l'orange"
@@ -733,7 +791,9 @@
)
result = /obj/item/food/peking_duck_crepes
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/vulgaris_spekkoek
name = "Vulgaris spekkoek"
@@ -743,7 +803,9 @@
/obj/item/food/butterslice = 2,
)
result = /obj/item/food/cake/spekkoek
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_CAKE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pineapple_foster
name = "Pineapple foster"
@@ -755,7 +817,9 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/salad/pineapple_foster
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pastel_de_nata
name = "Pastel de nata"
@@ -767,7 +831,9 @@
)
result = /obj/item/food/pastel_de_nata
removed_foodtypes = MEAT|RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/boh_loh_yah
name = "Boh loh yah"
@@ -778,7 +844,9 @@
)
result = /obj/item/food/boh_loh_yah
added_foodtypes = PINEAPPLE // someone thought it's funny to give it this foodtype smh
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_COOKIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/banana_fritter
name = "Banana fritter"
@@ -788,7 +856,9 @@
)
result = /obj/item/food/banana_fritter
added_foodtypes = GRAIN|FRIED|SEAFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pineapple_fritter
name = "Pineapple fritter"
@@ -798,7 +868,9 @@
)
result = /obj/item/food/pineapple_fritter
added_foodtypes = GRAIN|FRIED|SEAFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/kasei_dango
name = "Kasei dango"
@@ -811,7 +883,9 @@
)
result = /obj/item/food/kebab/kasei_dango
added_foodtypes = GRAIN
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pb_ice_cream_mochi
name = "Peanut-butter ice cream mochi"
@@ -823,7 +897,9 @@
)
result = /obj/item/food/pb_ice_cream_mochi
added_foodtypes = NUTS
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/frozen_pineapple_pop
name = "Frozen pineapple pop"
@@ -834,7 +910,9 @@
)
result = /obj/item/food/popsicle/pineapple_pop
removed_foodtypes = JUNKFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/sea_salt_pop
name = "Sea-salt ice cream bar"
@@ -845,7 +923,9 @@
/obj/item/popsicle_stick = 1,
)
result = /obj/item/food/popsicle/sea_salt
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/berry_topsicle
name = "Berry topsicle"
@@ -857,7 +937,9 @@
)
result = /obj/item/food/popsicle/topsicle
added_foodtypes = SUGAR|FRUIT
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/banana_topsicle
name = "Banana topsicle"
@@ -869,7 +951,9 @@
)
result = /obj/item/food/popsicle/topsicle/banana
added_foodtypes = SUGAR|FRUIT
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pineapple_topsicle
name = "Pineapple topsicle"
@@ -881,7 +965,9 @@
)
result = /obj/item/food/popsicle/topsicle/pineapple
added_foodtypes = SUGAR|FRUIT|PINEAPPLE
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_FROZEN
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/plasma_dog_supreme
name = "Plasma Dog Supreme"
@@ -892,7 +978,8 @@
/obj/item/food/onion_slice = 1,
)
result = /obj/item/food/plasma_dog_supreme
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/frickles
name = "Frickles"
@@ -903,7 +990,8 @@
)
result = /obj/item/food/frickles
added_foodtypes = GRAIN|FRIED|SEAFOOD
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/raw_ballpark_pretzel
name = "Raw ballpark pretzel"
@@ -913,7 +1001,9 @@
)
result = /obj/item/food/raw_ballpark_pretzel
added_foodtypes = RAW
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_PASTRY
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/raw_ballpark_tsukune
name = "Raw ballpark tsukune"
@@ -923,7 +1013,8 @@
/obj/item/stack/rods = 1,
)
result = /obj/item/food/kebab/raw_ballpark_tsukune
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/sprout_bowl
name = "Sprout bowl"
@@ -936,66 +1027,68 @@
)
result = /obj/item/food/salad/sprout_bowl
removed_foodtypes = BREAKFAST
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_RICE
// Soups
/datum/crafting_recipe/food/reaction/soup/boilednoodles
reaction = /datum/chemical_reaction/food/soup/boilednoodles
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/dashi
reaction = /datum/chemical_reaction/food/soup/dashi
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/teriyaki
reaction = /datum/chemical_reaction/food/soup/teriyaki
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/curry_sauce
reaction = /datum/chemical_reaction/food/soup/curry_sauce
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/shoyu_ramen
reaction = /datum/chemical_reaction/food/soup/shoyu_ramen
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/gyuramen
reaction = /datum/chemical_reaction/food/soup/gyuramen
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/new_osaka_sunrise
reaction = /datum/chemical_reaction/food/soup/new_osaka_sunrise
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/satsuma_black
reaction = /datum/chemical_reaction/food/soup/satsuma_black
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/dragon_ramen
reaction = /datum/chemical_reaction/food/soup/dragon_ramen
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/hong_kong_borscht
reaction = /datum/chemical_reaction/food/soup/hong_kong_borscht
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/hong_kong_macaroni
reaction = /datum/chemical_reaction/food/soup/hong_kong_macaroni
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/foxs_prize_soup
reaction = /datum/chemical_reaction/food/soup/foxs_prize_soup
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/secret_noodle_soup
reaction = /datum/chemical_reaction/food/soup/secret_noodle_soup
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/budae_jjigae
reaction = /datum/chemical_reaction/food/soup/budae_jjigae
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
/datum/crafting_recipe/food/reaction/soup/volt_fish
reaction = /datum/chemical_reaction/food/soup/volt_fish
- category = CAT_MARTIAN
+ cuisine_category = CUISINE_MARTIAN
+ dish_category = DISH_MEAT
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm
index ffefd116ba2..4cb84004435 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm
@@ -9,7 +9,7 @@
/obj/item/food/meat/steak/plain/human = 2
)
result = /obj/item/food/kebab/human
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/kebab
name = "Kebab"
@@ -18,7 +18,7 @@
/obj/item/food/meat/steak = 2
)
result = /obj/item/food/kebab/monkey
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/tofukebab
name = "Tofu kebab"
@@ -27,7 +27,7 @@
/obj/item/food/tofu = 2
)
result = /obj/item/food/kebab/tofu
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/tailkebab
name = "Lizard tail kebab"
@@ -36,7 +36,7 @@
/obj/item/organ/tail/lizard = 1
)
result = /obj/item/food/kebab/tail
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/fiestaskewer
name = "Fiesta Skewer"
@@ -48,7 +48,7 @@
/obj/item/food/grown/tomato = 1
)
result = /obj/item/food/kebab/fiesta
- category = CAT_MEAT
+ dish_category = DISH_MEAT
////////////////////////////////////////////////MR SPIDER////////////////////////////////////////////////
@@ -61,7 +61,7 @@
)
result = /obj/item/food/spidereggsham
removed_foodtypes = TOXIC
- category = CAT_MEAT
+ dish_category = DISH_MEAT
////////////////////////////////////////////////MISC RECIPE's////////////////////////////////////////////////
@@ -73,7 +73,7 @@
)
result = /obj/item/food/tempehstarter
added_foodtypes = GROSS
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/cornedbeef
name = "Corned beef"
@@ -83,7 +83,7 @@
/obj/item/food/grown/cabbage = 2
)
result = /obj/item/food/cornedbeef
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/bearsteak
name = "Filet migrawr"
@@ -94,7 +94,7 @@
tool_paths = list(/obj/item/lighter)
result = /obj/item/food/bearsteak
added_foodtypes = ALCOHOL
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/stewedsoymeat
name = "Stewed soymeat"
@@ -104,7 +104,7 @@
/obj/item/food/grown/tomato = 1
)
result = /obj/item/food/stewedsoymeat
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/sausage
name = "Raw sausage"
@@ -113,7 +113,7 @@
/obj/item/food/meat/rawcutlet = 2
)
result = /obj/item/food/raw_sausage
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/nugget
name = "Chicken nugget"
@@ -121,7 +121,7 @@
/obj/item/food/meat/cutlet = 1
)
result = /obj/item/food/nugget
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/rawkhinkali
name = "Raw Khinkali"
@@ -131,7 +131,7 @@
/obj/item/food/meatball = 1
)
result = /obj/item/food/rawkhinkali
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/meatbun
name = "Meat bun"
@@ -142,7 +142,7 @@
/obj/item/food/grown/cabbage = 1
)
result = /obj/item/food/meatbun
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/pigblanket
name = "Pig in a Blanket"
@@ -152,7 +152,7 @@
/obj/item/food/meat/cutlet = 1
)
result = /obj/item/food/pigblanket
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/ratkebab
name = "Rat Kebab"
@@ -161,7 +161,7 @@
/obj/item/food/deadmouse = 1
)
result = /obj/item/food/kebab/rat
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/doubleratkebab
name = "Double Rat Kebab"
@@ -170,7 +170,7 @@
/obj/item/food/deadmouse = 2
)
result = /obj/item/food/kebab/rat/double
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/ricepork
name = "Rice and Pork"
@@ -181,7 +181,7 @@
)
result = /obj/item/food/salad/ricepork
removed_foodtypes = BREAKFAST
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/ribs
name = "BBQ Ribs"
@@ -192,7 +192,7 @@
)
result = /obj/item/food/bbqribs
added_foodtypes = SUGAR
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/meatclown
name = "Meat Clown"
@@ -201,7 +201,7 @@
/obj/item/food/grown/banana = 1
)
result = /obj/item/food/meatclown
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/lasagna
name = "Lasagna"
@@ -212,7 +212,7 @@
/obj/item/food/spaghetti/raw = 1
)
result = /obj/item/food/lasagna
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/gumbo
name = "Black eyed gumbo"
@@ -225,7 +225,7 @@
)
result = /obj/item/food/salad/gumbo
removed_foodtypes = BREAKFAST
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/fried_chicken
@@ -238,7 +238,7 @@
result = /obj/item/food/fried_chicken
removed_foodtypes = RAW
added_foodtypes = FRIED
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/beef_stroganoff
name = "Beef Stroganoff"
@@ -255,7 +255,7 @@
)
result = /obj/item/food/beef_stroganoff
added_foodtypes = DAIRY
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/beef_wellington
name = "Beef Wellington"
@@ -271,7 +271,7 @@
)
result = /obj/item/food/beef_wellington
removed_foodtypes = BREAKFAST
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/korta_wellington
name = "Korta Wellington"
@@ -287,7 +287,7 @@
)
result = /obj/item/food/korta_wellington
removed_foodtypes = BREAKFAST
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/full_roast
name = "Roast Chicken Dinner"
@@ -306,7 +306,7 @@
)
result = /obj/item/food/roast_dinner
added_foodtypes = GRAIN
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/full_roast_lizzy
name = "Grain-Free Roast Chicken Dinner"
@@ -326,7 +326,7 @@
)
result = /obj/item/food/roast_dinner_lizzy
added_foodtypes = NUTS
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/full_roast_tofu
name = "Meat-Free Roast Dinner"
@@ -345,7 +345,7 @@
)
result = /obj/item/food/roast_dinner_tofu
added_foodtypes = GRAIN
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/full_english
name = "Full English Breakfast"
@@ -359,7 +359,7 @@
/obj/item/food/butteredtoast = 1
)
result = /obj/item/food/full_english
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/envirochow
name = "Envirochow"
@@ -370,7 +370,7 @@
result = /obj/item/food/canned/envirochow
removed_foodtypes = RAW|GORE
added_foodtypes = GROSS
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/meatloaf
name = "Meatloaf"
@@ -381,7 +381,7 @@
/datum/reagent/consumable/ketchup = 10,
)
result = /obj/item/food/raw_meatloaf
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/sweet_and_sour_meatballs
name = "Sweet and sour meatballs"
@@ -392,7 +392,7 @@
/datum/reagent/consumable/sugar = 5,
)
result = /obj/item/food/sweet_and_sour_meatballs
- category = CAT_MEAT
+ dish_category = DISH_MEAT
/datum/crafting_recipe/food/pineapple_skewer
name = "Pineapple skewer"
@@ -402,4 +402,5 @@
/obj/item/food/meat/cutlet = 2,
)
result = /obj/item/food/kebab/pineapple_skewer
- category = CAT_MEAT
+ dish_category = DISH_MEAT
+ meal_category = MEAL_APPETIZER
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_mexican.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_mexican.dm
index a9ad9debd01..bcad9241819 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_mexican.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_mexican.dm
@@ -10,7 +10,8 @@
/obj/item/food/grown/soybeans = 2
)
result = /obj/item/food/burrito
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/cheesyburrito
name ="Cheesy burrito"
@@ -20,40 +21,44 @@
/obj/item/food/grown/soybeans = 1
)
result = /obj/item/food/cheesyburrito
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/carneburrito
- name ="Carne de asada burrito"
+ name = "Carne de asada burrito"
reqs = list(
/obj/item/food/tortilla = 1,
/obj/item/food/meat/cutlet = 2,
/obj/item/food/grown/soybeans = 1
)
result = /obj/item/food/carneburrito
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/fuegoburrito
- name ="Fuego plasma burrito"
+ name = "Fuego plasma burrito"
reqs = list(
/obj/item/food/tortilla = 1,
/obj/item/food/grown/ghost_chili = 2,
/obj/item/food/grown/soybeans = 1
)
result = /obj/item/food/fuegoburrito
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/nachos
- name ="Nachos"
+ name = "Nachos"
reqs = list(
/datum/reagent/consumable/salt = 1,
/obj/item/food/tortilla = 1
)
result = /obj/item/food/nachos
added_foodtypes = FRIED
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/cheesynachos
- name ="Cheesy nachos"
+ name = "Cheesy nachos"
reqs = list(
/datum/reagent/consumable/salt = 1,
/obj/item/food/cheese/wedge = 1,
@@ -61,10 +66,11 @@
)
result = /obj/item/food/cheesynachos
added_foodtypes = FRIED
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/cubannachos
- name ="Cuban nachos"
+ name = "Cuban nachos"
reqs = list(
/datum/reagent/consumable/ketchup = 5,
/obj/item/food/grown/chili = 2,
@@ -72,7 +78,8 @@
)
result = /obj/item/food/cubannachos
added_foodtypes = FRIED
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/taco
name ="Classic Taco"
@@ -83,7 +90,8 @@
/obj/item/food/grown/cabbage = 1,
)
result = /obj/item/food/taco
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_TACO
/datum/crafting_recipe/food/tacoplain
name ="Plain Taco"
@@ -93,7 +101,8 @@
/obj/item/food/meat/cutlet = 1,
)
result = /obj/item/food/taco/plain
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_TACO
/datum/crafting_recipe/food/enchiladas
name = "Enchiladas"
@@ -103,7 +112,8 @@
/obj/item/food/tortilla = 2
)
result = /obj/item/food/enchiladas
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/stuffedlegion
name = "Stuffed legion"
@@ -115,7 +125,7 @@
/datum/reagent/consumable/capsaicin = 2
)
result = /obj/item/food/stuffedlegion
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
/datum/crafting_recipe/food/chipsandsalsa
name = "Chips and salsa"
@@ -128,7 +138,9 @@
)
result = /obj/item/food/chipsandsalsa
removed_foodtypes = JUNKFOOD
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_CONDIMENT
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/classic_chimichanga
name = "Classic Chimichanga"
@@ -140,7 +152,8 @@
)
result = /obj/item/food/classic_chimichanga
added_foodtypes = FRIED
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/vegetarian_chimichanga
name = "Vegetarian Chimichanga"
@@ -152,7 +165,8 @@
)
result = /obj/item/food/vegetarian_chimichanga
added_foodtypes = FRIED
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/classic_hard_shell_taco
name = "Classic Hard-Shell Taco"
@@ -164,7 +178,8 @@
/obj/item/food/grown/cabbage = 1,
)
result = /obj/item/food/classic_hard_shell_taco
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_TACO
/datum/crafting_recipe/food/plain_hard_shell_taco
name = "Plain Hard-Shell Taco"
@@ -173,7 +188,8 @@
/obj/item/food/meat/cutlet = 1,
)
result = /obj/item/food/plain_hard_shell_taco
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_TACO
/datum/crafting_recipe/food/refried_beans
name = "Refried Beans"
@@ -185,7 +201,7 @@
)
result = /obj/item/food/refried_beans
added_foodtypes = FRIED
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
/datum/crafting_recipe/food/spanish_rice
name = "Spanish Rice"
@@ -198,7 +214,8 @@
)
result = /obj/item/food/spanish_rice
removed_foodtypes = BREAKFAST
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/pineapple_salsa
name = "Pineapple salsa"
@@ -210,4 +227,6 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/pineapple_salsa
- category = CAT_MEXICAN
+ cuisine_category = CUISINE_MEXICAN
+ meal_category = MEAL_APPETIZER
+ dish_category = DISH_CONDIMENT
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
index ab213c2a2dc..1ab13d864bd 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
@@ -11,7 +11,8 @@
)
result = /obj/item/food/candiedapple
added_foodtypes = JUNKFOOD|SUGAR
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/spiderlollipop
name = "Spider Lollipop"
@@ -23,14 +24,16 @@
result = /obj/item/food/spiderlollipop
added_foodtypes = JUNKFOOD|SUGAR
removed_foodtypes = TOXIC
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/chococoin
name = "Choco coin"
reqs = list(/obj/item/food/chocolatebar = 1)
tool_paths = list(/obj/item/coin)
result = /obj/item/food/chococoin
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/fudgedice
name = "Fudge dice"
@@ -39,7 +42,8 @@
/obj/item/food/chocolatebar = 1,
)
result = /obj/item/food/fudgedice
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/chocoorange
name = "Choco orange"
@@ -48,7 +52,8 @@
/obj/item/food/chocolatebar = 1,
)
result = /obj/item/food/chocoorange
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/cheesyfries
name = "Cheesy fries"
@@ -57,7 +62,7 @@
/obj/item/food/cheese/wedge = 1
)
result = /obj/item/food/cheesyfries
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/poutine
name = "Poutine"
@@ -68,7 +73,7 @@
)
result = /obj/item/food/poutine
added_foodtypes = MEAT
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/beans
name = "Beans"
@@ -77,7 +82,7 @@
/obj/item/food/grown/soybeans = 2
)
result = /obj/item/food/canned/beans
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/eggplantparm
name ="Eggplant parmigiana"
@@ -86,7 +91,8 @@
/obj/item/food/grown/eggplant = 1
)
result = /obj/item/food/eggplantparm
- category = CAT_MISCFOOD
+ dish_category = DISH_SALAD // ??
+ cuisine_category = CUISINE_ITALIAN
/datum/crafting_recipe/food/melonkeg
name ="Melon keg"
@@ -97,7 +103,7 @@
)
result = /obj/item/food/melonkeg
added_foodtypes = ALCOHOL
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/honeybar
name = "Honey nut bar"
@@ -107,7 +113,7 @@
)
result = /obj/item/food/honeybar
added_foodtypes = SUGAR
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/powercrepe
name = "Powercrepe"
@@ -121,7 +127,7 @@
)
result = /obj/item/food/powercrepe
added_foodtypes = FRUIT|SUGAR
- category = CAT_MISCFOOD
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/branrequests
name = "Bran Requests Cereal"
@@ -132,7 +138,6 @@
result = /obj/item/food/branrequests
removed_foodtypes = JUNKFOOD
added_foodtypes = BREAKFAST
- category = CAT_MISCFOOD
/datum/crafting_recipe/food/ricepudding
name = "Rice pudding"
@@ -145,7 +150,7 @@
result = /obj/item/food/salad/ricepudding
added_foodtypes = DAIRY|SUGAR
removed_foodtypes = BREAKFAST
- category = CAT_MISCFOOD
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/risotto
name = "Risotto"
@@ -158,7 +163,7 @@
)
result = /obj/item/food/salad/risotto
removed_foodtypes = BREAKFAST
- category = CAT_MISCFOOD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/butterbear //ITS ALIVEEEEEE!
name = "Living bear/butter hybrid"
@@ -175,7 +180,8 @@
/obj/item/organ/heart
)
result = /mob/living/basic/bear/butter
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
+ meal_category = MEAL_UNCATEGORIZED
/datum/crafting_recipe/food/crab_rangoon
name = "Crab Rangoon"
@@ -187,7 +193,7 @@
)
result = /obj/item/food/crab_rangoon
removed_foodtypes = RAW
- category = CAT_SEAFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/royalcheese
name = "Royal Cheese"
@@ -198,7 +204,7 @@
/datum/reagent/toxin/mutagen = 5
)
result = /obj/item/food/cheese/royal
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/ant_candy
name = "Ant Candy"
@@ -208,7 +214,8 @@
/datum/reagent/ants = 10
)
result = /obj/item/food/ant_candy
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pesto
name = "Pesto"
@@ -221,7 +228,8 @@
/obj/item/food/canned/pine_nuts = 1
)
result = /obj/item/food/pesto
- category = CAT_MISCFOOD
+ dish_category = DISH_CONDIMENT
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/tomato_sauce
name = "Tomato sauce"
@@ -232,7 +240,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 5
)
result = /obj/item/food/tomato_sauce
- category = CAT_MISCFOOD
+ dish_category = DISH_CONDIMENT
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/bechamel_sauce
name = "Bechamel sauce"
@@ -243,7 +252,8 @@
)
result = /obj/item/food/bechamel_sauce
added_foodtypes = GRAIN
- category = CAT_MISCFOOD
+ dish_category = DISH_CONDIMENT
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/pierogi
name = "Pierogi"
@@ -253,7 +263,7 @@
/obj/item/food/grown/onion = 1,
)
result = /obj/item/food/pierogi
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/stuffed_cabbage
name = "Stuffed cabbage"
@@ -265,7 +275,7 @@
)
result = /obj/item/food/stuffed_cabbage
removed_foodtypes = BREAKFAST
- category = CAT_MISCFOOD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/granola_bar
name = "Granola bar"
@@ -277,7 +287,7 @@
)
result = /obj/item/food/granola_bar
removed_foodtypes = JUNKFOOD
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/onigiri
name = "Onigiri"
@@ -287,7 +297,7 @@
)
result = /obj/item/food/onigiri
removed_foodtypes = BREAKFAST
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/mashed_potatoes
name = "Mashed potatoes"
@@ -297,7 +307,7 @@
/obj/item/food/butterslice = 1,
)
result = /obj/item/food/mashed_potatoes
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/pacoca
name = "Paçoca"
@@ -308,7 +318,7 @@
)
result = /obj/item/food/pacoca
added_foodtypes = SUGAR
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
/datum/crafting_recipe/food/springroll
name = "Spring roll"
@@ -321,7 +331,8 @@
)
result = /obj/item/food/springroll
added_foodtypes = GRAIN
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
+ // cuisine_category = CUISINE_CHINESE
/datum/crafting_recipe/food/caramel_popcorn
name = "Caramel popcorn"
@@ -331,7 +342,8 @@
)
result = /obj/item/food/popcorn/caramel
added_foodtypes = SUGAR
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/salty_popcorn
name = "Salty popcorn"
@@ -340,7 +352,7 @@
/datum/reagent/consumable/salt = 3,
)
result = /obj/item/food/popcorn/salty
- category = CAT_MISCFOOD
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/spacylibertyduff
name = "Spacy liberty duff"
@@ -350,7 +362,7 @@
/obj/item/food/grown/mushroom/libertycap = 3
)
result = /obj/item/food/bowled/spacylibertyduff
- category = CAT_MISCFOOD
+ meal_category = MEAL_DESSERT // jello
/datum/crafting_recipe/food/amanitajelly
name = "Amanita jelly"
@@ -361,7 +373,7 @@
)
result = /obj/item/food/bowled/amanitajelly
added_foodtypes = TOXIC
- category = CAT_MISCFOOD
+ meal_category = MEAL_DESSERT // jello
/datum/crafting_recipe/food/buttered_baked_potato
name = "Buttered baked potato"
@@ -370,7 +382,7 @@
/obj/item/food/butterslice = 1,
)
result = /obj/item/food/buttered_baked_potato
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/loaded_baked_potato
name = "Loaded baked potato"
@@ -382,7 +394,7 @@
)
result = /obj/item/food/loaded_baked_potato
removed_foodtypes = BREAKFAST
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/cheese_pierogi
name = "Cheese pierogi"
@@ -392,7 +404,7 @@
/obj/item/food/cheese/wedge = 1,
)
result = /obj/item/food/cheese_pierogi
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/meat_pierogi
name = "Meat pierogi"
@@ -402,7 +414,7 @@
/obj/item/food/meat/cutlet = 1,
)
result = /obj/item/food/meat_pierogi
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/bonbon/caramel_truffle
name = "Caramel truffle"
@@ -411,7 +423,7 @@
/datum/reagent/consumable/caramel = 2,
)
result = /obj/item/food/bonbon/caramel_truffle
- category = CAT_MISCFOOD
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/bonbon/chocolate_truffle
name = "Chocolate truffle"
@@ -420,7 +432,7 @@
/datum/reagent/consumable/sugar = 2,
)
result = /obj/item/food/bonbon/chocolate_truffle
- category = CAT_MISCFOOD
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/bonbon/peanut_truffle
name = "Peanut truffle"
@@ -429,7 +441,7 @@
/obj/item/food/grown/peanut = 1,
)
result = /obj/item/food/bonbon/peanut_truffle
- category = CAT_MISCFOOD
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/bonbon/peanut_butter_cup
name = "Peanut butter cup"
@@ -439,7 +451,7 @@
)
result = /obj/item/food/bonbon/peanut_butter_cup
added_foodtypes = NUTS
- category = CAT_MISCFOOD
+ dish_category = DISH_CANDY
/datum/crafting_recipe/pickles_jar
name = "Jar of pickles"
@@ -449,7 +461,7 @@
/datum/reagent/water/salt = 20,
)
result = /obj/item/storage/fancy/pickles_jar
- category = CAT_MISCFOOD
+ category = CAT_FOOD
delete_contents = FALSE
/datum/crafting_recipe/food/sauteed_eggplant
@@ -460,7 +472,7 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 3,
)
result = /obj/item/food/sauteed_eggplant
- category = CAT_MISCFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/stuffed_eggplant
name = "Stuffed eggplant"
@@ -472,7 +484,7 @@
/obj/item/food/meat/cutlet = 1,
)
result = /obj/item/food/stuffed_eggplant
- category = CAT_MISCFOOD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/baba_ghanoush
name = "Baba ghanoush"
@@ -485,7 +497,7 @@
/datum/reagent/consumable/lemonjuice = 3,
)
result = /obj/item/food/baba_ghanoush
- category = CAT_MISCFOOD
+ dish_category = DISH_CONDIMENT
/datum/crafting_recipe/food/moussaka
name = "Moussaka"
@@ -497,7 +509,7 @@
/obj/item/food/bechamel_sauce = 1,
)
result = /obj/item/food/moussaka
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/falafel
name = "Falafel"
@@ -508,7 +520,7 @@
/obj/item/food/grown/herbs = 1,
)
result = /obj/item/food/falafel
- category = CAT_MISCFOOD
+ dish_category = DISH_UNCATEGORIZED
/datum/crafting_recipe/food/candied_pineapple
name = "Candied pineapple"
@@ -519,7 +531,7 @@
)
result = /obj/item/food/candied_pineapple
added_foodtypes = SUGAR
- category = CAT_MISCFOOD
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/tzatziki_sauce
name = "Tzatziki sauce"
@@ -530,7 +542,7 @@
/datum/reagent/consumable/salt = 1,
)
result = /obj/item/food/tzatziki_sauce
- category = CAT_MISCFOOD
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/tzatziki_and_pita_bread
name = "Tzatziki and pita bread"
@@ -539,7 +551,7 @@
/obj/item/food/pita_bread = 1,
)
result = /obj/item/food/tzatziki_and_pita_bread
- category = CAT_MISCFOOD
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/grilled_beef_gyro
name = "Grilled beef gyro"
@@ -552,7 +564,7 @@
/obj/item/food/grown/onion = 1,
)
result = /obj/item/food/grilled_beef_gyro
- category = CAT_MISCFOOD
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/vegetarian_gyro
name = "Vegetarian gyro"
@@ -565,7 +577,7 @@
/obj/item/food/grown/onion = 1,
)
result = /obj/item/food/vegetarian_gyro
- category = CAT_MISCFOOD
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/raw_pita_bread
name = "Raw pita bread"
@@ -576,4 +588,4 @@
/datum/reagent/consumable/sugar = 2,
)
result = /obj/item/food/raw_pita_bread
- category = CAT_MISCFOOD
+ dish_category = DISH_BREAD
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_moth.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_moth.dm
index 0c355583c33..680830dbf7d 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_moth.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_moth.dm
@@ -6,7 +6,8 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/herby_cheese
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/mothic_salad
name = "Mothic salad"
@@ -16,7 +17,8 @@
/obj/item/food/grown/tomato = 1
)
result = /obj/item/food/mothic_salad
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/toasted_seeds
name = "Toasted seeds"
@@ -27,7 +29,8 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 2
)
result = /obj/item/food/toasted_seeds
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_SNACK
crafting_flags = parent_type::crafting_flags & ~CRAFT_CLEARS_REAGENTS // seeds don't have nutriment
/datum/crafting_recipe/food/engine_fodder
@@ -40,7 +43,8 @@
/obj/item/food/chips = 1
)
result = /obj/item/food/engine_fodder
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_SNACK
/datum/crafting_recipe/food/squeaking_stir_fry
name = "Skeklitmischtpoppl (Squeaking stir fry)"
@@ -55,7 +59,8 @@
)
result = /obj/item/food/squeaking_stir_fry
removed_foodtypes = BREAKFAST
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/sweet_chili_cabbage_wrap
name = "Sweet chili cabbage wrap"
@@ -67,7 +72,8 @@
/datum/reagent/consumable/honey = 5
)
result = /obj/item/food/sweet_chili_cabbage_wrap
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_BURRITO
/datum/crafting_recipe/food/loaded_curds
name = "Ozlsettitæloskekllön ede pommes (Loaded curds and fries)"
@@ -79,7 +85,8 @@
/obj/item/food/fries = 1
)
result = /obj/item/food/loaded_curds
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/baked_cheese_platter
name = "Stanntkraktælo (Baked cheese platter)"
@@ -88,7 +95,7 @@
/obj/item/food/griddle_toast = 3
)
result = /obj/item/food/baked_cheese_platter
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/raw_green_lasagne
reqs = list(
@@ -99,7 +106,8 @@
)
result = /obj/item/food/raw_green_lasagne
added_foodtypes = RAW
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/raw_baked_rice
reqs = list(
@@ -112,7 +120,8 @@
result = /obj/item/food/raw_baked_rice
removed_foodtypes = BREAKFAST
added_foodtypes = RAW
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/buttered_baked_corn
name = "Buttered baked corn"
@@ -121,7 +130,7 @@
/obj/item/food/butterslice = 1
)
result = /obj/item/food/buttered_baked_corn
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/fiesta_corn_skillet
name = "Fiesta corn skillet"
@@ -134,7 +143,8 @@
/obj/item/food/cheese/wedge = 1
)
result = /obj/item/food/fiesta_corn_skillet
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/ratatouille
reqs = list(
@@ -144,7 +154,8 @@
/obj/item/food/roasted_bell_pepper = 1
)
result = /obj/item/food/raw_ratatouille
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/mozzarella_sticks
name = "Mozzarella sticks"
@@ -154,17 +165,18 @@
)
result = /obj/item/food/mozzarella_sticks
added_foodtypes = FRIED
- category = CAT_MOTH
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/raw_stuffed_peppers
- name = "Voltölpapriken (Stuffed peppers)"
+ name = "Raw Voltölpapriken (Stuffed peppers)"
reqs = list(
/obj/item/food/grown/bell_pepper = 1,
/obj/item/food/herby_cheese = 1,
/obj/item/food/onion_slice = 2
)
result = /obj/item/food/raw_stuffed_peppers
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/fueljacks_lunch
name = "Fueljack's lunch"
@@ -176,7 +188,7 @@
/obj/item/food/cheese/firm_cheese_slice = 1
)
result = /obj/item/food/fueljacks_lunch
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/mac_balls
name = "Macheronirölen (Mac balls)"
@@ -188,7 +200,8 @@
result = /obj/item/food/mac_balls
removed_foodtypes = JUNKFOOD
added_foodtypes = FRIED
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/hua_mulan_congee
name = "Hua Mulan congee"
@@ -201,7 +214,8 @@
result = /obj/item/food/bowled/hua_mulan_congee
removed_foodtypes = BREAKFAST
added_foodtypes = GRAIN
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/fried_eggplant_polenta
name = "Fried eggplant and polenta"
@@ -214,7 +228,8 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/bowled/fried_eggplant_polenta
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/caprese_salad
name = "Caprese salad"
@@ -226,7 +241,8 @@
/datum/reagent/consumable/vinegar = 2
)
result = /obj/item/food/caprese_salad
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/fleet_salad
name = "Lörtonknusksolt (Fleet salad)"
@@ -240,7 +256,8 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/salad/fleet_salad
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/cotton_salad
name = "Flöfrölenknusksolt (Cotton salad)"
@@ -254,7 +271,8 @@
)
result = /obj/item/food/salad/cotton_salad
added_foodtypes = CLOTH
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/moth_kachumbari
name = "Kæniatknusksolt (Kenyan salad)"
@@ -268,7 +286,8 @@
/obj/item/reagent_containers/cup/bowl = 1,
)
result = /obj/item/food/salad/moth_kachumbari
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/raw_mothic_margherita
reqs = list(
@@ -280,7 +299,8 @@
)
result = /obj/item/food/raw_mothic_margherita
added_foodtypes = RAW
- category = CAT_PIZZA
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/raw_mothic_firecracker
reqs = list(
@@ -292,7 +312,8 @@
)
result = /obj/item/food/raw_mothic_firecracker
added_foodtypes = RAW
- category = CAT_PIZZA
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/raw_mothic_five_cheese
reqs = list(
@@ -306,7 +327,8 @@
)
result = /obj/item/food/raw_mothic_five_cheese
added_foodtypes = RAW
- category = CAT_PIZZA
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/raw_mothic_white_pie
reqs = list(
@@ -319,7 +341,8 @@
)
result = /obj/item/food/raw_mothic_white_pie
added_foodtypes = RAW
- category = CAT_PIZZA
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/raw_mothic_pesto
reqs = list(
@@ -330,7 +353,8 @@
)
result = /obj/item/food/raw_mothic_pesto
added_foodtypes = RAW
- category = CAT_PIZZA
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/raw_mothic_garlic
reqs = list(
@@ -341,7 +365,8 @@
)
result = /obj/item/food/raw_mothic_garlic
added_foodtypes = RAW
- category = CAT_PIZZA
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/moth_cheese_cakes
name = "Ælorölen (Cheesecake balls)"
@@ -355,7 +380,8 @@
result = /obj/item/food/moth_cheese_cakes
added_foodtypes = GRAIN|FRIED
removed_foodtypes = JUNKFOOD
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/mothmallow
name = "Mothmallows"
@@ -367,7 +393,8 @@
)
result = /obj/item/food/cake/mothmallow
added_foodtypes = SUGAR
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/moffin
name = "Moffin"
@@ -378,62 +405,64 @@
)
result = /obj/item/food/muffin/moffin
added_foodtypes = CLOTH|SUGAR|BREAKFAST
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_PASTRY
// Soups
/datum/crafting_recipe/food/reaction/soup/cottonball
name = "Flöfrölenmæsch (cottonball soup)"
reaction = /datum/chemical_reaction/food/soup/cottonball
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/cheese
name = "Ælosterrmæsch (cheese soup)"
reaction = /datum/chemical_reaction/food/soup/cheese
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/seed
name = "Misklmæsch (seed soup)"
reaction = /datum/chemical_reaction/food/soup/seed
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/beans
name = "Prickeldröndolhaskl (spicy bean stew)"
reaction = /datum/chemical_reaction/food/soup/beans
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/moth_oats
name = "Häfmisklhaskl (oat stew)"
reaction = /datum/chemical_reaction/food/soup/moth_oats
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/fire_soup
name = "Tömpröttkrakklmæsch (heartburn soup)"
reaction = /datum/chemical_reaction/food/soup/fire_soup
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/rice_porridge
reaction = /datum/chemical_reaction/food/soup/rice_porridge
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/toechtauese_rice_porridge
reaction = /datum/chemical_reaction/food/soup/toechtauese_rice_porridge
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
+ dish_category = DISH_RICE
/datum/crafting_recipe/food/reaction/soup/red_porridge
name = "Eltsløsk ül a priktæolk (red porridge and yoghurt)"
reaction = /datum/chemical_reaction/food/soup/red_porridge
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/cornmeal_porridge
reaction = /datum/chemical_reaction/food/soup/cornmeal_porridge
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/cheese_porridge
reaction = /datum/chemical_reaction/food/soup/cheese_porridge
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
/datum/crafting_recipe/food/reaction/soup/chili_sin_carne
name = "Chili Sin Carne (Vegetarian Chili)"
reaction = /datum/chemical_reaction/food/soup/chili_sin_carne
- category = CAT_MOTH
+ cuisine_category = CUISINE_MOTHIC
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
index 0a7bc4c97d5..47b0b834a1a 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
@@ -13,7 +13,7 @@
result = /obj/item/food/donut/plain
added_foodtypes = JUNKFOOD|SUGAR|BREAKFAST|FRIED
removed_foodtypes = RAW
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donut/chaos
name = "Chaos donut"
@@ -294,7 +294,7 @@
)
result = /obj/item/food/waffles
added_foodtypes = BREAKFAST
- category = CAT_PASTRY
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/soylenviridians
@@ -303,8 +303,8 @@
/obj/item/food/pastrybase = 2,
/obj/item/food/grown/soybeans = 1
)
- result = /obj/item/food/soylenviridians
- category = CAT_PASTRY
+ result = /obj/item/food/soylenviridians // they look like waffles
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/soylentgreen
name = "Soylent green"
@@ -314,7 +314,7 @@
)
result = /obj/item/food/soylentgreen
removed_foodtypes = GORE|RAW
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY // they look like waffles
/datum/crafting_recipe/food/rofflewaffles
@@ -325,7 +325,7 @@
)
result = /obj/item/food/rofflewaffles
added_foodtypes = VEGETABLES|BREAKFAST
- category = CAT_PASTRY
+ dish_category = DISH_BREAD
////////////////////////////////////////////////DONKPOCCKETS////////////////////////////////////////////////
@@ -337,7 +337,7 @@
/obj/item/food/meatball = 1
)
result = /obj/item/food/donkpocket/homemade
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/dankpocket
time = 1.5 SECONDS
@@ -347,7 +347,7 @@
/obj/item/food/grown/cannabis = 1
)
result = /obj/item/food/donkpocket/dank
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/spicy
time = 1.5 SECONDS
@@ -358,7 +358,7 @@
/obj/item/food/grown/chili = 1
)
result = /obj/item/food/donkpocket/spicy/homemade
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/teriyaki
time = 1.5 SECONDS
@@ -369,7 +369,7 @@
/datum/reagent/consumable/soysauce = 3
)
result = /obj/item/food/donkpocket/teriyaki/homemade
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/pizza
time = 1.5 SECONDS
@@ -380,7 +380,7 @@
/obj/item/food/grown/tomato = 1
)
result = /obj/item/food/donkpocket/pizza
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/honk
time = 1.5 SECONDS
@@ -392,7 +392,7 @@
)
result = /obj/item/food/donkpocket/honk
added_foodtypes = FRUIT|SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/berry
time = 1.5 SECONDS
@@ -403,7 +403,7 @@
)
result = /obj/item/food/donkpocket/berry
added_foodtypes = FRUIT|SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/gondola
time = 1.5 SECONDS
@@ -414,7 +414,7 @@
/datum/reagent/gondola_mutation_toxin = 5
)
result = /obj/item/food/donkpocket/gondola
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/deluxe
time = 1.5 SECONDS
@@ -426,7 +426,7 @@
/obj/item/food/onion_slice/red = 1
)
result = /obj/item/food/donkpocket/deluxe
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
removed_foodtypes = BREAKFAST
crafting_flags = parent_type::crafting_flags | CRAFT_MUST_BE_LEARNED
@@ -441,7 +441,7 @@
)
result = /obj/item/food/donkpocket/deluxe/nocarb
removed_foodtypes = VEGETABLES //The herbs are only to enhance the flavor
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/donkpocket/deluxe/vegan
time = 1.5 SECONDS
@@ -454,7 +454,7 @@
)
result = /obj/item/food/donkpocket/deluxe/vegan
removed_foodtypes = BREAKFAST
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
////////////////////////////////////////////////MUFFINS////////////////////////////////////////////////
@@ -467,7 +467,7 @@
)
added_foodtypes = BREAKFAST|SUGAR|DAIRY
result = /obj/item/food/muffin
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/berrymuffin
name = "Berry muffin"
@@ -478,7 +478,7 @@
)
result = /obj/item/food/muffin/berry
added_foodtypes = BREAKFAST|SUGAR|FRUIT|DAIRY
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/booberrymuffin
name = "Booberry muffin"
@@ -490,7 +490,7 @@
)
result = /obj/item/food/muffin/booberry
added_foodtypes = BREAKFAST|SUGAR|DAIRY
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
////////////////////////////////////////////OTHER////////////////////////////////////////////
@@ -505,7 +505,7 @@
)
result = /obj/item/food/khachapuri
added_foodtypes = MEAT
- category = CAT_PASTRY
+ dish_category = DISH_BREAD
/datum/crafting_recipe/food/sugarcookie
time = 1.5 SECONDS
@@ -516,7 +516,7 @@
)
result = /obj/item/food/cookie/sugar
added_foodtypes = JUNKFOOD|SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/spookyskull
time = 1.5 SECONDS
@@ -528,7 +528,7 @@
)
result = /obj/item/food/cookie/sugar/spookyskull
added_foodtypes = JUNKFOOD|SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/spookycoffin
time = 1.5 SECONDS
@@ -540,7 +540,7 @@
)
result = /obj/item/food/cookie/sugar/spookycoffin
added_foodtypes = JUNKFOOD|SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/fortunecookie
time = 1.5 SECONDS
@@ -554,7 +554,7 @@
)
result = /obj/item/food/fortunecookie
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
requirements_mats_blacklist = list(/obj/item/paper)
/datum/crafting_recipe/food/poppypretzel
@@ -566,7 +566,7 @@
)
result = /obj/item/food/poppypretzel
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/plumphelmetbiscuit
time = 1.5 SECONDS
@@ -576,7 +576,7 @@
/obj/item/food/grown/mushroom/plumphelmet = 1
)
result = /obj/item/food/plumphelmetbiscuit
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/cracker
time = 1.5 SECONDS
@@ -586,7 +586,7 @@
/obj/item/food/doughslice = 1,
)
result = /obj/item/food/cracker
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/chococornet
name = "Choco cornet"
@@ -596,7 +596,7 @@
/obj/item/food/chocolatebar = 1
)
result = /obj/item/food/chococornet
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/oatmealcookie
name = "Oatmeal cookie"
@@ -605,7 +605,7 @@
/obj/item/food/grown/oat = 1
)
result = /obj/item/food/cookie/oatmeal
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/raisincookie
name = "Raisin cookie"
@@ -616,7 +616,7 @@
)
result = /obj/item/food/cookie/raisin
removed_foodtypes = JUNKFOOD
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/cherrycupcake
name = "Cherry cupcake"
@@ -626,7 +626,7 @@
)
result = /obj/item/food/cherrycupcake
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/bluecherrycupcake
name = "Blue cherry cupcake"
@@ -636,7 +636,7 @@
)
result = /obj/item/food/cherrycupcake/blue
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/jupitercupcake
name = "Jupiter-cup-cake"
@@ -647,7 +647,7 @@
)
result = /obj/item/food/jupitercupcake
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/honeybun
name = "Honey bun"
@@ -657,7 +657,7 @@
)
result = /obj/item/food/honeybun
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/cannoli
name = "Cannoli"
@@ -668,7 +668,7 @@
)
result = /obj/item/food/cannoli
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/peanut_butter_cookie
name = "Peanut butter cookie"
@@ -678,7 +678,7 @@
)
result = /obj/item/food/cookie/peanut_butter
added_foodtypes = JUNKFOOD|NUTS
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/raw_brownie_batter
name = "Raw brownie batter"
@@ -691,8 +691,8 @@
)
result = /obj/item/food/raw_brownie_batter
added_foodtypes = GRAIN|JUNKFOOD|BREAKFAST|SUGAR
- removed_foodtypes = MEAT|RAW
- category = CAT_PASTRY
+ removed_foodtypes = MEAT|RAW|EGG
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/peanut_butter_brownie_batter
name = "Raw peanut butter brownie batter"
@@ -706,8 +706,8 @@
)
result = /obj/item/food/peanut_butter_brownie_batter
added_foodtypes = GRAIN|JUNKFOOD|BREAKFAST|SUGAR|NUTS
- removed_foodtypes = MEAT|RAW
- category = CAT_PASTRY
+ removed_foodtypes = MEAT|RAW|EGG
+ meal_category = MEAL_COMPONENT
/datum/crafting_recipe/food/crunchy_peanut_butter_tart
name = "Crunchy peanut butter tart"
@@ -719,7 +719,7 @@
)
result = /obj/item/food/crunchy_peanut_butter_tart
added_foodtypes = JUNKFOOD|SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_PASTRY
/datum/crafting_recipe/food/chocolate_chip_cookie
name = "Chocolate chip cookie"
@@ -729,7 +729,7 @@
)
result = /obj/item/food/cookie/chocolate_chip_cookie
removed_foodtypes = JUNKFOOD
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/snickerdoodle
name = "Snickerdoodle"
@@ -739,7 +739,7 @@
)
result = /obj/item/food/cookie/snickerdoodle
added_foodtypes = SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/thumbprint_cookie
name = "Thumbprint cookie"
@@ -749,7 +749,7 @@
)
result = /obj/item/food/cookie/thumbprint_cookie
added_foodtypes = FRUIT|SUGAR
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
/datum/crafting_recipe/food/macaron
name = "Macaron"
@@ -759,4 +759,4 @@
/datum/reagent/consumable/flour = 5,
)
result = /obj/item/food/cookie/macaron
- category = CAT_PASTRY
+ dish_category = DISH_COOKIE
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm
index 7b7b2c95830..6cbd7adfc35 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm
@@ -12,7 +12,8 @@
)
result = /obj/item/food/pie/cream
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/meatpie
name = "Meat pie"
@@ -23,7 +24,8 @@
/obj/item/food/meat/steak/plain = 1
)
result = /obj/item/food/pie/meatpie
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/tofupie
name = "Tofu pie"
@@ -32,7 +34,8 @@
/obj/item/food/tofu = 1
)
result = /obj/item/food/pie/tofupie
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/xenopie
name = "Xeno pie"
@@ -41,7 +44,8 @@
/obj/item/food/meat/cutlet/xeno = 1
)
result = /obj/item/food/pie/xemeatpie
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/cherrypie
name = "Cherry pie"
@@ -51,7 +55,8 @@
)
result = /obj/item/food/pie/cherrypie
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/berryclafoutis
name = "Berry clafoutis"
@@ -61,7 +66,8 @@
)
result = /obj/item/food/pie/berryclafoutis
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/bearypie
name = "Beary Pie"
@@ -72,7 +78,8 @@
)
result = /obj/item/food/pie/bearypie
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/amanitapie
name = "Amanita pie"
@@ -82,7 +89,8 @@
)
result = /obj/item/food/pie/amanita_pie
added_foodtypes = TOXIC|GROSS
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/plumppie
name = "Plump pie"
@@ -91,7 +99,8 @@
/obj/item/food/grown/mushroom/plumphelmet = 1
)
result = /obj/item/food/pie/plump_pie
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/applepie
name = "Apple pie"
@@ -101,7 +110,8 @@
)
result = /obj/item/food/pie/applepie
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/pumpkinpie
name = "Pumpkin pie"
@@ -113,7 +123,8 @@
)
result = /obj/item/food/pie/pumpkinpie
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/goldenappletart
name = "Golden apple tart"
@@ -125,7 +136,8 @@
)
result = /obj/item/food/pie/appletart
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/grapetart
name = "Grape tart"
@@ -137,7 +149,8 @@
)
result = /obj/item/food/pie/grapetart
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/mimetart
name = "Mime tart"
@@ -148,7 +161,8 @@
/datum/reagent/consumable/nothing = 5
)
result = /obj/item/food/pie/mimetart
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
added_foodtypes = SUGAR
crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED
@@ -161,7 +175,8 @@
/obj/item/food/grown/berries = 3
)
result = /obj/item/food/pie/berrytart
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
added_foodtypes = SUGAR
crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED
@@ -175,7 +190,8 @@
/obj/item/slime_extract = 1 //The reason you dont know how to make it!
)
result = /obj/item/food/pie/cocolavatart
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
added_foodtypes = SUGAR
removed_foodtypes = JUNKFOOD
crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED
@@ -190,7 +206,8 @@
)
result = /obj/item/food/pie/blumpkinpie
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/dulcedebatata
name = "Dulce de batata"
@@ -201,7 +218,8 @@
)
result = /obj/item/food/pie/dulcedebatata
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/frostypie
name = "Frosty pie"
@@ -211,7 +229,8 @@
)
result = /obj/item/food/pie/frostypie
added_foodtypes = FRUIT|SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/baklava
name = "Baklava pie"
@@ -222,7 +241,8 @@
)
result = /obj/item/food/pie/baklava
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/frenchsilkpie
name = "French silk pie"
@@ -234,7 +254,8 @@
result = /obj/item/food/pie/frenchsilkpie
removed_foodtypes = JUNKFOOD
added_foodtypes = SUGAR
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/shepherds_pie
name = "Shepherds pie"
@@ -247,7 +268,8 @@
/obj/item/food/grown/garlic = 1,
)
result = /obj/item/food/pie/shepherds_pie
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/asdfpie
name = "Pie-flavored pie"
@@ -255,7 +277,8 @@
/obj/item/food/pie/plain = 2,
)
result = /obj/item/food/pie/asdfpie
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
/datum/crafting_recipe/food/bacid_pie
reqs = list(
@@ -265,4 +288,5 @@
requirements_mats_blacklist = list(/obj/item/stock_parts/power_store/cell)
result = /obj/item/food/pie/bacid_pie
added_foodtypes = TOXIC
- category = CAT_PIE
+ dish_category = DISH_PIE
+ meal_category = MEAL_DESSERT
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm
index db86efd3e0b..0f807e47171 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm
@@ -5,7 +5,8 @@
/datum/crafting_recipe/food/pizza
added_foodtypes = RAW
- category = CAT_PIZZA
+ cuisine_category = CUISINE_ITALIAN
+ dish_category = DISH_PIZZA
/datum/crafting_recipe/food/pizza/margherita
reqs = list(
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm
index 45b01b16e21..ffbe196d5c3 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm
@@ -11,7 +11,7 @@
/obj/item/food/grown/apple = 1
)
result = /obj/item/food/salad/herbsalad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/aesirsalad
name = "Aesir salad"
@@ -21,7 +21,7 @@
/obj/item/food/grown/apple/gold = 1
)
result = /obj/item/food/salad/aesirsalad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/validsalad
name = "Valid salad"
@@ -33,7 +33,7 @@
)
result = /obj/item/food/salad/validsalad
added_foodtypes = FRIED
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/melonfruitbowl
name ="Melon fruit bowl"
@@ -46,7 +46,7 @@
/obj/item/food/grown/ambrosia = 1
)
result = /obj/item/food/melonfruitbowl
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/fruitsalad
name = "Fruit salad"
@@ -59,7 +59,7 @@
)
result = /obj/item/food/salad/fruit
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/junglesalad
name = "Jungle salad"
@@ -71,7 +71,7 @@
)
result = /obj/item/food/salad/jungle
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/citrusdelight
name = "Citrus delight"
@@ -83,7 +83,7 @@
)
result = /obj/item/food/salad/citrusdelight
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/edensalad
name = "Salad of Eden"
@@ -95,7 +95,7 @@
/obj/item/food/grown/peace = 1
)
result = /obj/item/food/salad/edensalad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/kale_salad
name = "Kale salad"
@@ -107,7 +107,7 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 2,
)
result = /obj/item/food/salad/kale_salad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/greek_salad
name = "Greek salad"
@@ -121,7 +121,7 @@
/obj/item/food/grown/cucumber = 1,
)
result = /obj/item/food/salad/greek_salad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/caesar_salad
name = "Caesar salad"
@@ -134,7 +134,7 @@
/obj/item/food/breadslice/plain = 1,
)
result = /obj/item/food/salad/caesar_salad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/spring_salad
name = "Spring salad"
@@ -146,7 +146,7 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 5,
)
result = /obj/item/food/salad/spring_salad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/potato_salad
name = "Potato salad"
@@ -158,7 +158,7 @@
/datum/reagent/consumable/mayonnaise = 5,
)
result = /obj/item/food/salad/potato_salad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/spinach_fruit_salad
name = "Spinach fruit salad"
@@ -170,7 +170,7 @@
/datum/reagent/consumable/nutriment/fat/oil/olive = 2,
)
result = /obj/item/food/salad/spinach_fruit_salad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/antipasto_salad
name = "Antipasto salad"
@@ -183,4 +183,5 @@
/obj/item/food/cheese/mozzarella = 1,
)
result = /obj/item/food/salad/antipasto_salad
- category = CAT_SALAD
+ dish_category = DISH_SALAD
+ cuisine_category = CUISINE_ITALIAN
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm
index 13c017d309b..683cc8ddfc3 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm
@@ -15,7 +15,7 @@
/obj/item/food/cheese/wedge = 1
)
result = /obj/item/food/sandwich
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/cheese_sandwich
name = "Cheese sandwich"
@@ -24,7 +24,7 @@
/obj/item/food/cheese/wedge = 2
)
result = /obj/item/food/sandwich/cheese
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/slimesandwich
name = "Jelly sandwich"
@@ -34,7 +34,7 @@
)
added_foodtypes = TOXIC
result = /obj/item/food/sandwich/jelly/slime
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/cherrysandwich
name = "Jelly sandwich"
@@ -44,7 +44,7 @@
)
added_foodtypes = FRUIT|SUGAR
result = /obj/item/food/sandwich/jelly/cherry
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/notasandwich
name = "Not a sandwich"
@@ -54,7 +54,7 @@
)
added_foodtypes = GROSS
result = /obj/item/food/sandwich/notasandwich
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/hotdog
name = "Hot dog"
@@ -65,7 +65,7 @@
)
result = /obj/item/food/hotdog
removed_foodtypes = BREAKFAST
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/danish_hotdog
name = "Danish hot dog"
@@ -78,7 +78,7 @@
)
result = /obj/item/food/danish_hotdog
removed_foodtypes = BREAKFAST
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/blt
name = "BLT"
@@ -89,7 +89,7 @@
/obj/item/food/grown/tomato = 1
)
result = /obj/item/food/sandwich/blt
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/peanut_butter_jelly_sandwich
name = "Peanut butter and jelly sandwich"
@@ -100,7 +100,7 @@
)
result = /obj/item/food/sandwich/peanut_butter_jelly
added_foodtypes = FRUIT|NUTS
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/peanut_butter_banana_sandwich
name = "Peanut butter and banana sandwich"
@@ -111,7 +111,7 @@
)
result = /obj/item/food/sandwich/peanut_butter_banana
added_foodtypes = NUTS
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/philly_cheesesteak
name = "Philly Cheesesteak"
@@ -122,7 +122,7 @@
/obj/item/food/grown/onion = 1,
)
result = /obj/item/food/sandwich/philly_cheesesteak
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/death_sandwich
name = "Death Sandwich"
@@ -133,7 +133,7 @@
/obj/item/food/grown/tomato = 1,
)
result = /obj/item/food/sandwich/death
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED
/datum/crafting_recipe/food/toast_sandwich
@@ -144,4 +144,4 @@
)
result = /obj/item/food/sandwich/toast_sandwich
removed_foodtypes = BREAKFAST
- category = CAT_SANDWICH
+ dish_category = DISH_SANDWICH
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_seafood.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_seafood.dm
index 1589dbc5383..fbc72e24598 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_seafood.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_seafood.dm
@@ -7,7 +7,7 @@
)
result = /obj/item/food/cubancarp
added_foodtypes = GRAIN|FRIED
- category = CAT_SEAFOOD
+ dish_category = DISH_SANDWICH
/datum/crafting_recipe/food/fishandchips
name = "Fish and chips"
@@ -16,7 +16,7 @@
/obj/item/food/fishmeat = 1
)
result = /obj/item/food/fishandchips
- category = CAT_SEAFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/fishfingers
name = "Fish fingers"
@@ -27,7 +27,7 @@
)
result = /obj/item/food/fishfingers
added_foodtypes = FRIED
- category = CAT_SEAFOOD
+ meal_category = MEAL_APPETIZER
/datum/crafting_recipe/food/fishfry
name = "Fish fry"
@@ -38,7 +38,6 @@
)
result = /obj/item/food/fishfry
added_foodtypes = FRIED
- category = CAT_SEAFOOD
/datum/crafting_recipe/food/sashimi
name = "Spider Sashimi"
@@ -49,10 +48,10 @@
)
result = /obj/item/food/sashimi
removed_foodtypes = TOXIC
- category = CAT_SEAFOOD
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/fishtaco
- name ="Fish taco"
+ name = "Fish taco"
reqs = list(
/obj/item/food/tortilla = 1,
/obj/item/food/cheese/wedge = 1,
@@ -60,11 +59,11 @@
/obj/item/food/grown/cabbage = 1
)
result = /obj/item/food/taco/fish
-
- category = CAT_SEAFOOD
+ cuisine_category = CUISINE_MEXICAN
+ dish_category = DISH_TACO
/datum/crafting_recipe/food/vegetariansushiroll
- name ="Vegetarian sushi roll"
+ name = "Vegetarian sushi roll"
reqs = list(
/obj/item/food/seaweedsheet = 1,
/obj/item/food/boiledrice = 1,
@@ -73,10 +72,11 @@
)
result = /obj/item/food/vegetariansushiroll
removed_foodtypes = BREAKFAST
- category = CAT_SEAFOOD
+ dish_category = DISH_SUSHI
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/spicyfiletroll
- name ="Spicy filet sushi roll"
+ name = "Spicy filet sushi roll"
reqs = list(
/obj/item/food/seaweedsheet = 1,
/obj/item/food/boiledrice = 1,
@@ -86,10 +86,11 @@
)
result = /obj/item/food/spicyfiletsushiroll
removed_foodtypes = BREAKFAST
- category = CAT_SEAFOOD
+ dish_category = DISH_SUSHI
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/nigiri_sushi
- name ="Nigiri sushi"
+ name = "Nigiri sushi"
reqs = list(
/obj/item/food/seaweedsheet = 1,
/obj/item/food/boiledrice = 1,
@@ -98,7 +99,8 @@
)
result = /obj/item/food/nigiri_sushi
removed_foodtypes = BREAKFAST
- category = CAT_SEAFOOD
+ dish_category = DISH_SUSHI
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/meat_poke
name ="Meat poke"
@@ -114,7 +116,7 @@
)
result = /obj/item/food/meat_poke
removed_foodtypes = BREAKFAST
- category = CAT_SEAFOOD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/fish_poke
name ="Fish poke"
@@ -130,7 +132,7 @@
)
result = /obj/item/food/fish_poke
removed_foodtypes = BREAKFAST
- category = CAT_SEAFOOD
+ dish_category = DISH_SALAD
/datum/crafting_recipe/food/futomaki_sushi_roll
name ="Futomaki sushi roll"
@@ -143,7 +145,8 @@
)
result = /obj/item/food/futomaki_sushi_roll
removed_foodtypes = BREAKFAST
- category = CAT_SEAFOOD
+ dish_category = DISH_SUSHI
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/philadelphia_sushi_roll
name ="Philadelphia sushi roll"
@@ -156,4 +159,5 @@
)
result = /obj/item/food/philadelphia_sushi_roll
removed_foodtypes = BREAKFAST
- category = CAT_SEAFOOD
+ dish_category = DISH_SUSHI
+ cuisine_category = CUISINE_JAPANESE
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm
index da85e0159fb..a04b21e3abf 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm
@@ -10,7 +10,8 @@
/obj/item/food/grown/tomato = 2
)
result = /obj/item/food/spaghetti/pastatomato
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_ITALIAN
/datum/crafting_recipe/food/copypasta
name = "Copypasta"
@@ -18,7 +19,8 @@
/obj/item/food/spaghetti/pastatomato = 2
)
result = /obj/item/food/spaghetti/copypasta
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_ITALIAN
/datum/crafting_recipe/food/spaghettimeatball
name = "Spaghetti meatball"
@@ -27,7 +29,8 @@
/obj/item/food/meatball = 2
)
result = /obj/item/food/spaghetti/meatballspaghetti
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_ITALIAN
/datum/crafting_recipe/food/spesslaw
name = "Spesslaw"
@@ -36,7 +39,8 @@
/obj/item/food/meatball = 4
)
result = /obj/item/food/spaghetti/spesslaw
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_ITALIAN
/datum/crafting_recipe/food/beefnoodle
name = "Beef noodle"
@@ -47,7 +51,8 @@
/obj/item/food/grown/cabbage = 1,
)
result = /obj/item/food/spaghetti/beefnoodle
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_ITALIAN
/datum/crafting_recipe/food/chowmein
name = "Chowmein"
@@ -58,7 +63,8 @@
/obj/item/food/grown/carrot = 1
)
result = /obj/item/food/spaghetti/chowmein
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ // cuisine_category = CUISINE_CHINESE
/datum/crafting_recipe/food/butternoodles
name = "Butter Noodles"
@@ -67,7 +73,8 @@
/obj/item/food/butterslice = 1
)
result = /obj/item/food/spaghetti/butternoodles
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_ITALIAN
/datum/crafting_recipe/food/mac_n_cheese
name = "Mac n' cheese"
@@ -79,7 +86,7 @@
/datum/reagent/consumable/blackpepper = 2
)
result = /obj/item/food/spaghetti/mac_n_cheese
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
/datum/crafting_recipe/food/shoyu_tonkotsu_ramen
name = "Shoyu Tonkotsu ramen"
@@ -93,7 +100,8 @@
)
result = /obj/item/food/spaghetti/shoyu_tonkotsu_ramen
removed_foodtypes = BREAKFAST
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/kitakata_ramen
name = "Kitakata ramen"
@@ -106,7 +114,8 @@
/obj/item/food/grown/garlic = 1,
)
result = /obj/item/food/spaghetti/kitakata_ramen
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/kitsune_udon
name = "Kitsune udon"
@@ -119,7 +128,8 @@
/datum/reagent/consumable/sugar = 5,
)
result = /obj/item/food/spaghetti/kitsune_udon
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/nikujaga
name = "Nikujaga"
@@ -132,7 +142,8 @@
/obj/item/food/grown/peas = 1,
)
result = /obj/item/food/spaghetti/nikujaga
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_JAPANESE
/datum/crafting_recipe/food/pho
name = "Pho"
@@ -144,7 +155,8 @@
/obj/item/food/grown/cabbage = 1,
)
result = /obj/item/food/spaghetti/pho
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ // cuisine_category = CUISINE_VIETNAMESE
/datum/crafting_recipe/food/pad_thai
name = "Pad thai"
@@ -157,7 +169,8 @@
/obj/item/food/grown/citrus/lime = 1,
)
result = /obj/item/food/spaghetti/pad_thai
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ // cuisine_category = CUISINE_THAI
/datum/crafting_recipe/food/carbonara
name = "Spaghetti Carbonara"
@@ -170,4 +183,5 @@
)
result = /obj/item/food/spaghetti/carbonara
removed_foodtypes = BREAKFAST|RAW
- category = CAT_SPAGHETTI
+ dish_category = DISH_NOODLES
+ cuisine_category = CUISINE_ITALIAN
diff --git a/tgui/packages/tgui/interfaces/PersonalCrafting/GroupTitle.tsx b/tgui/packages/tgui/interfaces/PersonalCrafting/GroupTitle.tsx
index 3263dfdab74..f20506e9030 100644
--- a/tgui/packages/tgui/interfaces/PersonalCrafting/GroupTitle.tsx
+++ b/tgui/packages/tgui/interfaces/PersonalCrafting/GroupTitle.tsx
@@ -19,3 +19,39 @@ export function GroupTitle(props: Props) {
);
}
+
+export function SubGroupTitle(props: Props) {
+ const { title } = props;
+
+ return (
+
+
+
+ {title}
+
+
+
+ );
+}
diff --git a/tgui/packages/tgui/interfaces/PersonalCrafting/constants.ts b/tgui/packages/tgui/interfaces/PersonalCrafting/constants.ts
index 461c6c346ae..ad0f6a29437 100644
--- a/tgui/packages/tgui/interfaces/PersonalCrafting/constants.ts
+++ b/tgui/packages/tgui/interfaces/PersonalCrafting/constants.ts
@@ -7,6 +7,7 @@ export const TYPE_ICONS = {
[Food.Bugs]: 'bug',
[Food.Cloth]: 'tshirt',
[Food.Dairy]: 'cheese',
+ [Food.Egg]: 'egg',
[Food.Fried]: 'fire',
[Food.Fruit]: 'apple-alt',
[Food.Gore]: 'skull',
@@ -51,22 +52,37 @@ export const CATEGORY_ICONS_CRAFTING = {
export const CATEGORY_ICONS_COOKING = {
'Can Make': 'utensils',
- Breads: 'bread-slice',
- Burgers: 'burger',
- Cakes: 'cake-candles',
- 'Egg-Based Food': 'egg',
+ Appetizer: 'bread-slice',
+ Bread: 'bread-slice',
+ Burger: 'burger',
+ Burrito: 'circle-o',
+ Cake: 'cake-candles',
+ Candy: 'candy-cane',
+ Component: 'cubes',
+ Cookie: 'cookie',
+ Dessert: 'face-grin-beam-sweat',
Frozen: 'ice-cream',
- 'Lizard Food': 'dragon',
- Meats: 'bacon',
- 'Mexican Food': 'pepper-hot',
- 'Misc. Food': 'shapes',
- 'Mothic Food': 'shirt',
- Pastries: 'cookie',
- Pies: 'chart-pie',
- Pizzas: 'pizza-slice',
- Salads: 'leaf',
- Sandwiches: 'hotdog',
- Seafood: 'fish',
- Soups: 'mug-hot',
- Spaghettis: 'wheat-awn',
+ Italian: 'pizza-slice',
+ Japanese: 'earth-asia',
+ Lizard: 'dragon',
+ Martian: 'globe',
+ Meat: 'bacon',
+ Mexican: 'earth-americas',
+ Mothic: 'shirt',
+ Noodles: 'wheat-awn',
+ Pastry: 'cookie',
+ Pie: 'chart-pie',
+ Pizza: 'pizza-slice',
+ Rice: 'bowl-rice',
+ Salad: 'leaf',
+ Sandwich: 'hotdog',
+ Soup: 'mug-hot',
+ Sushi: 'fish',
+ Taco: 'circle-o',
+ Terran: 'earth-europe',
+ Uncategorized: 'shapes',
+ 'Main Course': 'drumstick-bite',
+ Breakfast: 'sun',
+ Snack: 'compress',
+ Condiment: 'bottle-water',
} as const;
diff --git a/tgui/packages/tgui/interfaces/PersonalCrafting/content/RecipeContent.tsx b/tgui/packages/tgui/interfaces/PersonalCrafting/content/RecipeContent.tsx
index 815549343f6..c49c32876af 100644
--- a/tgui/packages/tgui/interfaces/PersonalCrafting/content/RecipeContent.tsx
+++ b/tgui/packages/tgui/interfaces/PersonalCrafting/content/RecipeContent.tsx
@@ -321,7 +321,7 @@ export function RecipeContent(props: FullProps) {
Complexity: {item.complexity}
)}
- {item.foodtypes?.length > 0 && (
+ {!!item.foodtypes && item.foodtypes.length > 0 && (
{item.foodtypes.map((foodtype) => (
diff --git a/tgui/packages/tgui/interfaces/PersonalCrafting/helpers.ts b/tgui/packages/tgui/interfaces/PersonalCrafting/helpers.ts
index 573f009b31b..b662224c20c 100644
--- a/tgui/packages/tgui/interfaces/PersonalCrafting/helpers.ts
+++ b/tgui/packages/tgui/interfaces/PersonalCrafting/helpers.ts
@@ -1,3 +1,5 @@
+import type { BooleanLike } from 'tgui-core/react';
+import { CATEGORY_ICONS_COOKING, CATEGORY_ICONS_CRAFTING } from './constants';
import type { CraftingData } from './types';
export function findIcon(atom_id: number, data: CraftingData): string {
@@ -8,3 +10,15 @@ export function findIcon(atom_id: number, data: CraftingData): string {
return icon;
}
+
+export function getFAIcon(category: string, mode: BooleanLike): string {
+ const icons = mode ? CATEGORY_ICONS_COOKING : CATEGORY_ICONS_CRAFTING;
+ return icons[category] || 'circle';
+}
+
+export function toggleArrayItem(array: T[] | undefined, item: T): T[] {
+ if (!array) return [item];
+ return array.includes(item)
+ ? array.filter((i) => i !== item)
+ : [...array, item];
+}
diff --git a/tgui/packages/tgui/interfaces/PersonalCrafting/index.tsx b/tgui/packages/tgui/interfaces/PersonalCrafting/index.tsx
index 3118f6951c4..3358d49dd8e 100644
--- a/tgui/packages/tgui/interfaces/PersonalCrafting/index.tsx
+++ b/tgui/packages/tgui/interfaces/PersonalCrafting/index.tsx
@@ -21,6 +21,8 @@ import { CATEGORY_ICONS_COOKING, CATEGORY_ICONS_CRAFTING } from './constants';
import { FoodtypeContent } from './content/FoodtypeContent';
import { MaterialContent } from './content/MaterialContent';
import { RecipeContent, RecipeContentCompact } from './content/RecipeContent';
+import { SubGroupTitle } from './GroupTitle';
+import { getFAIcon, toggleArrayItem } from './helpers';
import {
type CraftingData,
type Material,
@@ -55,6 +57,38 @@ export function PersonalCrafting(props: any) {
? DEFAULT_CAT_COOKING
: DEFAULT_CAT_CRAFTING,
);
+
+ const allFoodCuisines = data.recipes
+ .reduce((acc: string[], recipe) => {
+ if (recipe.cuisine_category && !acc.includes(recipe.cuisine_category)) {
+ acc.push(recipe.cuisine_category);
+ }
+ return acc;
+ }, [])
+ .sort((a, b) => (a > b ? 1 : -1));
+
+ const allDishCategories = data.recipes
+ .reduce((acc: string[], recipe) => {
+ if (recipe.dish_category && !acc.includes(recipe.dish_category)) {
+ acc.push(recipe.dish_category);
+ }
+ return acc;
+ }, [])
+ .sort((a, b) => (a > b ? 1 : -1));
+
+ const allMealCategories = data.recipes
+ .reduce((acc: string[], recipe) => {
+ if (recipe.meal_category && !acc.includes(recipe.meal_category)) {
+ acc.push(recipe.meal_category);
+ }
+ return acc;
+ }, [])
+ .sort((a, b) => (a > b ? 1 : -1));
+
+ const [activeFoodCuisine, setFoodCuisine] = useState();
+ const [activeDishCategory, setDishCategory] = useState();
+ const [activeMealCategory, setMealCategory] = useState();
+
const [activeType, setFoodType] = useState(
Object.keys(craftability).length ? 'Can Make' : data.foodtypes[0],
);
@@ -83,26 +117,53 @@ export function PersonalCrafting(props: any) {
? filter(material_occurences, searchMaterial)
: material_occurences;
+ function categoryMatch(recipe: Recipe): boolean {
+ if (tabMode === TABS.material) {
+ return Object.keys(recipe.reqs).includes(activeMaterial);
+ } else if (tabMode === TABS.category) {
+ if (activeCategory === 'Can Make') {
+ return Boolean(craftability[recipe.ref]);
+ }
+ if (activeCategory === 'Foods') {
+ if (
+ activeFoodCuisine?.length &&
+ !activeFoodCuisine.includes(recipe.cuisine_category || '')
+ ) {
+ return false;
+ }
+ if (
+ activeDishCategory?.length &&
+ !activeDishCategory.includes(recipe.dish_category || '')
+ ) {
+ return false;
+ }
+ if (
+ activeMealCategory?.length &&
+ !activeMealCategory.includes(recipe.meal_category || '')
+ ) {
+ return false;
+ }
+ }
+ return recipe.category === activeCategory;
+ } else if (tabMode === TABS.foodtype && mode === MODE.cooking) {
+ if (activeType === 'Can Make') {
+ return Boolean(craftability[recipe.ref]);
+ }
+ if (recipe.foodtypes) {
+ return recipe.foodtypes.includes(activeType);
+ }
+ return false;
+ }
+ return true;
+ }
+
let recipes = filter(
data.recipes,
(recipe) =>
// If craftable only is selected, then filter by craftability
(!display_craftable_only || Boolean(craftability[recipe.ref])) &&
// Ignore categories and types when searching
- (searchText.length > 0 ||
- // Is foodtype mode and the active type matches
- (tabMode === TABS.foodtype &&
- mode === MODE.cooking &&
- ((activeType === 'Can Make' && Boolean(craftability[recipe.ref])) ||
- recipe.foodtypes?.includes(activeType))) ||
- // Is material mode and the active material or catalysts match
- (tabMode === TABS.material &&
- Object.keys(recipe.reqs).includes(activeMaterial)) ||
- // Is category mode and the active categroy matches
- (tabMode === TABS.category &&
- ((activeCategory === 'Can Make' &&
- Boolean(craftability[recipe.ref])) ||
- recipe.category === activeCategory))),
+ (searchText.length > 0 || categoryMatch(recipe)),
);
recipes = sortBy(recipes, [
(recipe) => [
@@ -132,8 +193,6 @@ export function PersonalCrafting(props: any) {
: 30;
const displayLimit = pageSize * pages;
const content = document.getElementById('content');
- const CATEGORY_ICONS =
- mode === MODE.cooking ? CATEGORY_ICONS_COOKING : CATEGORY_ICONS_CRAFTING;
return (
@@ -285,36 +344,142 @@ export function PersonalCrafting(props: any) {
}
}}
>
-
-
-
+
+
+ >
+
+
+
+
+ {category}
+
+ {category === 'Can Make' && (
+
+ {Object.keys(craftability).length}
+
+ )}
+
-
- {category}
-
- {category === 'Can Make' && (
-
- {Object.keys(craftability).length}
-
- )}
+ {/* Foods are further categorized by cuisine and dish type */}
+ {category === 'Foods' &&
+ activeCategory === category && (
+
+
+
+
+
+ {allFoodCuisines.map((cuisine) => (
+
+ {
+ setFoodCuisine(
+ toggleArrayItem(
+ activeFoodCuisine,
+ cuisine,
+ ),
+ );
+ setPages(1);
+ }}
+ >
+
+ {cuisine}
+
+
+ ))}
+
+
+
+ {allDishCategories.map((dish) => (
+
+ {
+ setDishCategory(
+ toggleArrayItem(
+ activeDishCategory,
+ dish,
+ ),
+ );
+ setPages(1);
+ }}
+ >
+
+ {dish}
+
+
+ ))}
+
+
+
+ {allMealCategories.map((meal) => (
+
+ {
+ setMealCategory(
+ toggleArrayItem(
+ activeMealCategory,
+ meal,
+ ),
+ );
+ setPages(1);
+ }}
+ >
+
+ {meal}
+
+
+ ))}
+
+
+ )}
))}
diff --git a/tgui/packages/tgui/interfaces/PersonalCrafting/types.ts b/tgui/packages/tgui/interfaces/PersonalCrafting/types.ts
index 0c986313290..6feef5e35b2 100644
--- a/tgui/packages/tgui/interfaces/PersonalCrafting/types.ts
+++ b/tgui/packages/tgui/interfaces/PersonalCrafting/types.ts
@@ -25,9 +25,7 @@ export type Material = {
export type Recipe = {
category: string;
chem_catalysts: Record;
- complexity: number;
desc: string;
- foodtypes: string[];
has_food_effect: BooleanLike;
id: number;
is_reaction: BooleanLike;
@@ -41,6 +39,12 @@ export type Recipe = {
structures: string[];
tool_behaviors: string[];
tool_paths: string[];
+ // only used for food recipes
+ foodtypes?: string[];
+ complexity?: number;
+ cuisine_category?: string;
+ dish_category?: string;
+ meal_category?: string;
};
export type Diet = {
diff --git a/tgui/packages/tgui/interfaces/PreferencesMenu/types.ts b/tgui/packages/tgui/interfaces/PreferencesMenu/types.ts
index 1e0d11f2434..77098af0fed 100644
--- a/tgui/packages/tgui/interfaces/PreferencesMenu/types.ts
+++ b/tgui/packages/tgui/interfaces/PreferencesMenu/types.ts
@@ -30,6 +30,7 @@ export enum Food {
Sugar = 'SUGAR',
Toxic = 'TOXIC',
Vegetables = 'VEGETABLES',
+ Egg = 'EGG',
}
export enum JobPriority {