From bec842f53a1e4014674b8c98977d9b3db621d067 Mon Sep 17 00:00:00 2001 From: XeonMations <62395746+XeonMations@users.noreply.github.com> Date: Tue, 3 Dec 2024 19:31:31 +0200 Subject: [PATCH] [Port] Food Buffs from the chef (#11770) * it begins * Maltodextrin be gone. * Update screen_alert.dmi * dsajhasdbkhjsad * Update snacks.dm * aaaa * maps * trait is now added to food * hyhhh * hmmmh * handcrafted meals * mmmmmmmmm * mmmmmmmmmmmmmmmmm * aaaa * Update _food_effect.dm * Update CentCom.dmm --- .../RandomRooms/10x5/sk_rdm151_ratburger.dmm | 2 +- _maps/RandomRooms/5x3/rdm_mad_pete.dmm | 2 +- _maps/RandomRuins/SpaceRuins/Fast_Food.dmm | 2 +- _maps/holodeck/workshop/donut.dmm | 2 +- _maps/map_files/BoxStation/BoxStation.dmm | 2 +- _maps/map_files/CorgStation/CorgStation.dmm | 2 +- .../map_files/Deltastation/DeltaStation2.dmm | 2 +- _maps/map_files/FlandStation/FlandStation.dmm | 2 +- _maps/map_files/KiloStation/KiloStation.dmm | 2 +- _maps/map_files/MetaStation/MetaStation.dmm | 2 +- _maps/map_files/RadStation/RadStation.dmm | 4 +- _maps/map_files/generic/CentCom.dmm | 2 +- beestation.dme | 7 +- .../signals_obj/signals_item/signals_food.dm | 2 + code/__DEFINES/food.dm | 67 ++++++++- code/__DEFINES/traits/declarations.dm | 2 + code/_globalvars/traits/_traits.dm | 1 + code/datums/components/bakeable.dm | 16 +- code/datums/components/crafting/_recipes.dm | 3 + code/datums/components/crafting/crafting.dm | 7 +- .../crafting_lists/foodstuffs/_recipes.dm | 7 + .../foodstuffs/recipes_burger.dm | 2 +- .../crafting_lists/foodstuffs/recipes_cake.dm | 10 +- .../crafting_lists/foodstuffs/recipes_egg.dm | 2 +- .../foodstuffs/recipes_pastry.dm | 10 ++ .../foodstuffs/recipes_spaghetti.dm | 12 ++ code/datums/components/food/edible.dm | 140 +++++++++++++----- code/datums/components/grillable.dm | 15 ++ code/datums/elements/dryable.dm | 21 ++- code/datums/materials/meat.dm | 2 +- code/datums/mood_events/food_events.dm | 46 ++++++ code/datums/mood_events/needs_events.dm | 20 --- code/datums/recipe.dm | 120 --------------- .../status_effects/food/_food_effect.dm | 22 +++ code/datums/status_effects/food/chilling.dm | 12 ++ .../datums/status_effects/food/grant_trait.dm | 33 +++++ code/datums/status_effects/food/haste.dm | 27 ++++ code/datums/status_effects/food/speech.dm | 73 +++++++++ code/game/atoms.dm | 2 + code/game/objects/items.dm | 33 ++++- code/game/objects/items/food/_food.dm | 4 + code/game/objects/items/food/bread.dm | 23 +++ code/game/objects/items/food/burgers.dm | 41 ++++- code/game/objects/items/food/cake.dm | 65 +++++++- code/game/objects/items/food/cheese.dm | 3 + code/game/objects/items/food/donkpockets.dm | 57 ++++--- code/game/objects/items/food/donuts.dm | 38 ++++- code/game/objects/items/food/dough.dm | 9 ++ code/game/objects/items/food/egg.dm | 9 ++ code/game/objects/items/food/frozen.dm | 8 + code/game/objects/items/food/meatdish.dm | 31 ++++ code/game/objects/items/food/meatslab.dm | 33 +++-- code/game/objects/items/food/mexican.dm | 12 ++ code/game/objects/items/food/misc.dm | 23 ++- code/game/objects/items/food/monkeycube.dm | 1 + code/game/objects/items/food/packaged.dm | 1 + code/game/objects/items/food/pancakes.dm | 3 + code/game/objects/items/food/pastries.dm | 35 +++++ code/game/objects/items/food/pie.dm | 33 +++++ code/game/objects/items/food/pizza.dm | 21 +++ code/game/objects/items/food/salad.dm | 9 ++ code/game/objects/items/food/sandwichtoast.dm | 9 ++ code/game/objects/items/food/snacks.dm | 32 ++-- code/game/objects/items/food/soup.dm | 3 + code/game/objects/items/food/spaghetti.dm | 28 ++++ code/game/objects/items/food/sweets.dm | 8 + code/game/objects/items/food/vegetables.dm | 8 + code/modules/events/holiday/halloween.dm | 2 + .../kitchen_machinery/deep_fryer.dm | 9 +- .../kitchen_machinery/griddle.dm | 1 + .../kitchen_machinery/microwave.dm | 38 ++--- .../food_and_drinks/kitchen_machinery/oven.dm | 4 + .../kitchen_machinery/smartfridge.dm | 40 +++-- code/modules/holiday/easter.dm | 3 + code/modules/hydroponics/grown.dm | 5 +- code/modules/hydroponics/grown/beans.dm | 2 +- code/modules/hydroponics/grown/corn.dm | 2 +- code/modules/hydroponics/grown/flowers.dm | 2 +- code/modules/hydroponics/grown/melon.dm | 2 +- .../plumbing/plumbers/grinder_chemical.dm | 19 +-- .../chemistry/machinery/reagentgrinder.dm | 45 +++--- .../chemistry/reagents/food_reagents.dm | 77 +++++----- .../reagents/chemistry/recipes/others.dm | 8 +- .../chemistry/recipes/slime_extracts.dm | 4 +- .../reagents/reagent_containers/condiment.dm | 8 +- code/modules/reagents/reagent_dispenser.dm | 4 +- icons/hud/screen_alert.dmi | Bin 128259 -> 136024 bytes icons/obj/food/food.dmi | Bin 44122 -> 44658 bytes icons/obj/food/spaghetti.dmi | Bin 10193 -> 10620 bytes .../UpdatePaths/Scripts/11770_food_buffs.txt | 1 + 90 files changed, 1142 insertions(+), 421 deletions(-) create mode 100644 code/datums/mood_events/food_events.dm delete mode 100644 code/datums/recipe.dm create mode 100644 code/datums/status_effects/food/_food_effect.dm create mode 100644 code/datums/status_effects/food/chilling.dm create mode 100644 code/datums/status_effects/food/grant_trait.dm create mode 100644 code/datums/status_effects/food/haste.dm create mode 100644 code/datums/status_effects/food/speech.dm create mode 100644 tools/UpdatePaths/Scripts/11770_food_buffs.txt diff --git a/_maps/RandomRooms/10x5/sk_rdm151_ratburger.dmm b/_maps/RandomRooms/10x5/sk_rdm151_ratburger.dmm index 64248597f28fa..ee67f102d9c37 100644 --- a/_maps/RandomRooms/10x5/sk_rdm151_ratburger.dmm +++ b/_maps/RandomRooms/10x5/sk_rdm151_ratburger.dmm @@ -79,7 +79,7 @@ /area/template_noop) "A" = ( /obj/structure/window/reinforced/spawner/north, -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /turf/open/floor/iron/cafeteria, /area/template_noop) "B" = ( diff --git a/_maps/RandomRooms/5x3/rdm_mad_pete.dmm b/_maps/RandomRooms/5x3/rdm_mad_pete.dmm index aaeef86bcadee..768760f47d926 100644 --- a/_maps/RandomRooms/5x3/rdm_mad_pete.dmm +++ b/_maps/RandomRooms/5x3/rdm_mad_pete.dmm @@ -109,7 +109,7 @@ /turf/open/floor/iron/freezer, /area/template_noop) "R" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /turf/open/floor/iron/freezer, /area/template_noop) "Z" = ( diff --git a/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm b/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm index 9d236a1dcd6a5..c818971a6383b 100644 --- a/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm +++ b/_maps/RandomRuins/SpaceRuins/Fast_Food.dmm @@ -352,7 +352,7 @@ /turf/open/floor/iron/cafeteria, /area/ruin/space/has_grav/powered/macspace) "bu" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /turf/open/floor/iron/cafeteria, /area/ruin/space/has_grav/powered/macspace) "bv" = ( diff --git a/_maps/holodeck/workshop/donut.dmm b/_maps/holodeck/workshop/donut.dmm index ba0080d128985..e796ef5ffcbc2 100644 --- a/_maps/holodeck/workshop/donut.dmm +++ b/_maps/holodeck/workshop/donut.dmm @@ -33,7 +33,7 @@ /turf/open/floor/holofloor/monotile/steel, /area/template_noop) "t" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /obj/effect/turf_decal/tile/dark_blue/fourcorners, /obj/structure/sign/poster/official/moth1{ pixel_y = 32 diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 347535d43cc9f..525063c240cd4 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -62693,7 +62693,7 @@ /turf/open/floor/iron/white, /area/science/research) "vJW" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /obj/effect/turf_decal/bot, /turf/open/floor/iron/freezer, /area/crew_quarters/kitchen/coldroom) diff --git a/_maps/map_files/CorgStation/CorgStation.dmm b/_maps/map_files/CorgStation/CorgStation.dmm index 885bd9398fa92..8bdb38852124a 100644 --- a/_maps/map_files/CorgStation/CorgStation.dmm +++ b/_maps/map_files/CorgStation/CorgStation.dmm @@ -11320,7 +11320,7 @@ /turf/open/floor/plating, /area/medical/virology) "dzZ" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index b5e8be8eacf66..4352e979368f3 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -8644,7 +8644,7 @@ pixel_y = -22 }, /obj/effect/turf_decal/bot, -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /turf/open/floor/iron, /area/crew_quarters/kitchen) "bfa" = ( diff --git a/_maps/map_files/FlandStation/FlandStation.dmm b/_maps/map_files/FlandStation/FlandStation.dmm index 846372a48fe1d..0187cebdd81a4 100644 --- a/_maps/map_files/FlandStation/FlandStation.dmm +++ b/_maps/map_files/FlandStation/FlandStation.dmm @@ -33667,7 +33667,7 @@ /turf/open/floor/iron/grid/steel, /area/medical/virology) "iCm" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/freezer, /area/crew_quarters/kitchen/coldroom) diff --git a/_maps/map_files/KiloStation/KiloStation.dmm b/_maps/map_files/KiloStation/KiloStation.dmm index f6703df89aec3..658c7ec3a4185 100644 --- a/_maps/map_files/KiloStation/KiloStation.dmm +++ b/_maps/map_files/KiloStation/KiloStation.dmm @@ -66923,7 +66923,7 @@ /turf/open/floor/iron/dark, /area/crew_quarters/heads/hor) "tFp" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/showroomfloor, /area/crew_quarters/kitchen) diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index aac17a7ef0c3d..f76bd4670fc7f 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -15818,7 +15818,7 @@ dir = 8; pixel_x = 28 }, -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /turf/open/floor/iron/freezer, /area/crew_quarters/kitchen) "cgJ" = ( diff --git a/_maps/map_files/RadStation/RadStation.dmm b/_maps/map_files/RadStation/RadStation.dmm index 90d42cbf6d232..1b9c892b8135b 100644 --- a/_maps/map_files/RadStation/RadStation.dmm +++ b/_maps/map_files/RadStation/RadStation.dmm @@ -13560,7 +13560,7 @@ /turf/open/floor/iron/grid/steel, /area/hydroponics) "epx" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/freezer, /area/crew_quarters/kitchen/coldroom) @@ -36197,7 +36197,7 @@ "lBL" = ( /obj/effect/turf_decal/tile/dark_green, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /turf/open/floor/iron, /area/hallway/secondary/service) "lBQ" = ( diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index bc378448e09ca..ae678ecd37530 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -18945,7 +18945,7 @@ }, /area/centcom/control) "aTB" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/reagent_dispensers/nutriment/fat/oil, /turf/open/floor/iron/cafeteria, /area/centcom/holding) "aTC" = ( diff --git a/beestation.dme b/beestation.dme index 414a751ff6ebe..c915660cf17f5 100644 --- a/beestation.dme +++ b/beestation.dme @@ -567,7 +567,6 @@ #include "code\datums\profiling.dm" #include "code\datums\progressbar.dm" #include "code\datums\radiation_wave.dm" -#include "code\datums\recipe.dm" #include "code\datums\ref.dm" #include "code\datums\ruins.dm" #include "code\datums\saymode.dm" @@ -957,6 +956,7 @@ #include "code\datums\mocking\client.dm" #include "code\datums\mood_events\drink_events.dm" #include "code\datums\mood_events\drug_events.dm" +#include "code\datums\mood_events\food_events.dm" #include "code\datums\mood_events\generic_negative_events.dm" #include "code\datums\mood_events\generic_neutral_events.dm" #include "code\datums\mood_events\generic_positive_events.dm" @@ -997,6 +997,11 @@ #include "code\datums\status_effects\gas.dm" #include "code\datums\status_effects\neutral.dm" #include "code\datums\status_effects\status_effect.dm" +#include "code\datums\status_effects\food\_food_effect.dm" +#include "code\datums\status_effects\food\chilling.dm" +#include "code\datums\status_effects\food\grant_trait.dm" +#include "code\datums\status_effects\food\haste.dm" +#include "code\datums\status_effects\food\speech.dm" #include "code\datums\traits\_quirk.dm" #include "code\datums\traits\negative_quirk.dm" #include "code\datums\traits\neutral_quirk.dm" diff --git a/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_food.dm b/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_food.dm index a3cd583da4d6f..671a8269bf557 100644 --- a/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_food.dm +++ b/code/__DEFINES/dcs/signals/signals_obj/signals_item/signals_food.dm @@ -42,6 +42,8 @@ #define COMSIG_GRILL_FOOD "item_grill_food" // Baking foods (oven) +//Called when an object is inserted into an oven (atom/oven, mob/baker) +#define COMSIG_ITEM_OVEN_PLACED_IN "item_placed_in_oven" //Called when an object is in an oven #define COMSIG_ITEM_BAKED "item_baked" #define COMPONENT_HANDLED_BAKING (1<<0) diff --git a/code/__DEFINES/food.dm b/code/__DEFINES/food.dm index 3643c5b0778a1..3c971c2f85c39 100644 --- a/code/__DEFINES/food.dm +++ b/code/__DEFINES/food.dm @@ -64,6 +64,68 @@ DEFINE_BITFIELD(foodtypes, list( #define DRINK_VERYGOOD 4 #define DRINK_FANTASTIC 5 +#define FOOD_QUALITY_NORMAL 1 +#define FOOD_QUALITY_NICE 2 +#define FOOD_QUALITY_GOOD 3 +#define FOOD_QUALITY_VERYGOOD 4 +#define FOOD_QUALITY_FANTASTIC 5 +#define FOOD_QUALITY_AMAZING 6 +#define FOOD_QUALITY_TOP 7 + +#define FOOD_COMPLEXITY_0 0 +#define FOOD_COMPLEXITY_1 1 +#define FOOD_COMPLEXITY_2 2 +#define FOOD_COMPLEXITY_3 3 +#define FOOD_COMPLEXITY_4 4 +#define FOOD_COMPLEXITY_5 5 + +/// Labels for food quality +GLOBAL_LIST_INIT(food_quality_description, list( + FOOD_QUALITY_NORMAL = "okay", + FOOD_QUALITY_NICE = "nice", + FOOD_QUALITY_GOOD = "good", + FOOD_QUALITY_VERYGOOD = "very good", + FOOD_QUALITY_FANTASTIC = "fantastic", + FOOD_QUALITY_AMAZING = "amazing", + FOOD_QUALITY_TOP = "godlike", +)) + +/// Mood events for food quality +GLOBAL_LIST_INIT(food_quality_events, list( + FOOD_QUALITY_NORMAL = /datum/mood_event/food, + FOOD_QUALITY_NICE = /datum/mood_event/food/nice, + FOOD_QUALITY_GOOD = /datum/mood_event/food/good, + FOOD_QUALITY_VERYGOOD = /datum/mood_event/food/verygood, + FOOD_QUALITY_FANTASTIC = /datum/mood_event/food/fantastic, + FOOD_QUALITY_AMAZING = /datum/mood_event/food/amazing, + FOOD_QUALITY_TOP = /datum/mood_event/food/top, +)) + +/// Weighted lists of crafted food buffs randomly given according to crafting_complexity unless the food has a specific buff +GLOBAL_LIST_INIT(food_buffs, list( + FOOD_COMPLEXITY_1 = list( + /datum/status_effect/food/haste = 1, + ), + FOOD_COMPLEXITY_2 = list( + /datum/status_effect/food/haste = 1, + ), + FOOD_COMPLEXITY_3 = list( + /datum/status_effect/food/haste = 1, + ), + FOOD_COMPLEXITY_4 = list( + /datum/status_effect/food/haste = 1, + ), + FOOD_COMPLEXITY_5 = list( + /datum/status_effect/food/haste = 1, + ), +)) + +/// Food quality change according to species diet +#define DISLIKED_FOOD_QUALITY_CHANGE -2 +#define LIKED_FOOD_QUALITY_CHANGE 2 +/// Threshold for food to give a toxic reaction +#define TOXIC_FOOD_QUALITY_THRESHOLD -8 + /// Food is "in a container", not in a code sense, but in a literal sense (canned foods) #define FOOD_IN_CONTAINER (1<<0) /// Finger food can be eaten while walking / running around @@ -76,11 +138,6 @@ DEFINE_BITFIELD(food_types, list( #define STOP_SERVING_BREAKFAST (15 MINUTES) -///Amount of reagents you start with on crafted food excluding the used parts -#define CRAFTED_FOOD_BASE_REAGENT_MODIFIER 0.7 -///Modifier of reagents you get when crafting food from the parts used -#define CRAFTED_FOOD_INGREDIENT_REAGENT_MODIFIER 0.5 - #define IS_EDIBLE(O) (O.GetComponent(/datum/component/edible)) ///Food trash flags diff --git a/code/__DEFINES/traits/declarations.dm b/code/__DEFINES/traits/declarations.dm index 3263780f5015f..7385f71578e02 100644 --- a/code/__DEFINES/traits/declarations.dm +++ b/code/__DEFINES/traits/declarations.dm @@ -221,6 +221,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_T_RAY_VISIBLE "t-ray-visible" // Visible on t-ray scanners if the atom/var/level == 1 /// If this item's been fried #define TRAIT_FOOD_FRIED "food_fried" +/// If this item's been made by a chef instead of spawned by the map or admins +#define TRAIT_FOOD_CHEF_MADE "food_made_by_chef" #define TRAIT_NO_TELEPORT "no-teleport" //you just can't #define TRAIT_STARGAZED "stargazed" //Affected by a stargazer #define TRAIT_DOOR_PRYER "door-pryer" //Item can be used on airlocks to pry them open (even when powered) diff --git a/code/_globalvars/traits/_traits.dm b/code/_globalvars/traits/_traits.dm index af9e7b2e6796e..bb40b3836fbf8 100644 --- a/code/_globalvars/traits/_traits.dm +++ b/code/_globalvars/traits/_traits.dm @@ -207,6 +207,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_DRIED" = TRAIT_DRIED, "TRAIT_CUSTOMIZABLE_REAGENT_HOLDER" = TRAIT_CUSTOMIZABLE_REAGENT_HOLDER, "TRAIT_ODD_CUSTOMIZABLE_FOOD_INGREDIENT" = TRAIT_ODD_CUSTOMIZABLE_FOOD_INGREDIENT, + "TRAIT_FOOD_CHEF_MADE" = TRAIT_FOOD_CHEF_MADE, ), /obj = list( "TRAIT_FROZEN" = TRAIT_FROZEN diff --git a/code/datums/components/bakeable.dm b/code/datums/components/bakeable.dm index bfab12ceb6838..e8b224a131619 100644 --- a/code/datums/components/bakeable.dm +++ b/code/datums/components/bakeable.dm @@ -11,6 +11,9 @@ ///Time spent baking so far var/current_bake_time = 0 + /// REF() to the mind which placed us in an oven + var/who_baked_us + /datum/component/bakeable/Initialize(bake_result, required_bake_time, positive_result, use_large_steam_sprite) . = ..() @@ -33,12 +36,20 @@ src.positive_result = positive_result /datum/component/bakeable/RegisterWithParent() + RegisterSignal(parent, COMSIG_ITEM_OVEN_PLACED_IN, PROC_REF(on_baking_start)) RegisterSignal(parent, COMSIG_ITEM_BAKED, PROC_REF(OnBake)) RegisterSignal(parent, COMSIG_PARENT_EXAMINE, PROC_REF(OnExamine)) /datum/component/bakeable/UnregisterFromParent() . = ..() - UnregisterSignal(parent, list(COMSIG_ITEM_BAKED, COMSIG_PARENT_EXAMINE)) + UnregisterSignal(parent, list(COMSIG_ITEM_OVEN_PLACED_IN, COMSIG_ITEM_BAKED, COMSIG_PARENT_EXAMINE)) + +/// Signal proc for [COMSIG_ITEM_OVEN_PLACED_IN] when baking starts (parent enters an oven) +/datum/component/bakeable/proc/on_baking_start(datum/source, atom/used_oven, mob/baker) + SIGNAL_HANDLER + + if(baker && baker.mind) + who_baked_us = REF(baker.mind) ///Ran every time an item is baked by something /datum/component/bakeable/proc/OnBake(datum/source, atom/used_oven, delta_time = 1) @@ -58,7 +69,10 @@ var/atom/original_object = parent var/obj/item/plate/oven_tray/used_tray = original_object.loc var/atom/baked_result = new bake_result(used_tray) + original_object.reagents?.trans_to(baked_result, original_object.reagents.total_volume) + if(who_baked_us) + ADD_TRAIT(baked_result, TRAIT_FOOD_CHEF_MADE, who_baked_us) if(original_object.custom_materials) baked_result.set_custom_materials(original_object.custom_materials, 1) diff --git a/code/datums/components/crafting/_recipes.dm b/code/datums/components/crafting/_recipes.dm index 6abf3118728d2..97eef7a62b34e 100644 --- a/code/datums/components/crafting/_recipes.dm +++ b/code/datums/components/crafting/_recipes.dm @@ -38,3 +38,6 @@ */ /datum/crafting_recipe/proc/check_requirements(mob/user, list/collected_requirements) return TRUE + +/datum/crafting_recipe/proc/on_craft_completion(mob/user, atom/result) + return diff --git a/code/datums/components/crafting/crafting.dm b/code/datums/components/crafting/crafting.dm index b401e93ffd7e5..df9c89768d91a 100644 --- a/code/datums/components/crafting/crafting.dm +++ b/code/datums/components/crafting/crafting.dm @@ -194,7 +194,11 @@ if(!check_tools(a, R, contents)) return "missing tool." var/list/parts = del_reqs(R, a) - var/atom/movable/I = new R.result (get_turf(a.loc)) + var/atom/movable/I + if(ispath(R.result, /obj/item/food)) + I = new R.result (get_turf(a.loc)) + else + I = new R.result (get_turf(a.loc)) I.CheckParts(parts, R) if(send_feedback) SSblackbox.record_feedback("tally", "object_crafted", 1, I.type) @@ -217,6 +221,7 @@ else result.forceMove(user.drop_location()) to_chat(user, "[TR.name] constructed.") + TR.on_craft_completion(user, result) else to_chat(user, "Construction failed[result]") busy = FALSE diff --git a/code/datums/components/crafting/crafting_lists/foodstuffs/_recipes.dm b/code/datums/components/crafting/crafting_lists/foodstuffs/_recipes.dm index 2789a21047109..5fb77de580fb0 100644 --- a/code/datums/components/crafting/crafting_lists/foodstuffs/_recipes.dm +++ b/code/datums/components/crafting/crafting_lists/foodstuffs/_recipes.dm @@ -7,3 +7,10 @@ /datum/crafting_recipe/food/New() real_parts = parts.Copy() parts |= reqs + + +/datum/crafting_recipe/food/on_craft_completion(mob/user, atom/result) + SHOULD_CALL_PARENT(TRUE) + . = ..() + if(istype(result) && !isnull(user.mind)) + ADD_TRAIT(result, TRAIT_FOOD_CHEF_MADE, REF(user.mind)) diff --git a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_burger.dm b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_burger.dm index ae720b3a7a88f..7dfe3075aba52 100644 --- a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_burger.dm +++ b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_burger.dm @@ -355,7 +355,7 @@ reqs = list( /obj/item/food/patty/plain = 1, // we have no horse meat sadly /obj/item/food/grown/chili = 2, - /datum/reagent/consumable/cooking_oil = 20, + /datum/reagent/consumable/nutriment/fat/oil = 20, /obj/item/food/grown/nettle/death = 2, // closest thing to "grass of death" /obj/item/food/cheese/wedge = 4, /obj/item/food/bun = 1 diff --git a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_cake.dm b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_cake.dm index 576985051f392..8094d4f6e253b 100644 --- a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_cake.dm +++ b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_cake.dm @@ -139,9 +139,9 @@ ) subcategory = CAT_CAKE -/datum/crafting_recipe/food/bscccake - name = "blackberry and strawberry chocolate cake" - result = /obj/item/food/cake/bscc +/datum/crafting_recipe/food/berry_chocolate_cake + name = "strawberry chocolate cake" + result = /obj/item/food/cake/berry_chocolate_cake reqs = list( /obj/item/food/cake/plain = 1, /obj/item/food/chocolatebar = 2, @@ -149,9 +149,9 @@ ) subcategory = CAT_CAKE -/datum/crafting_recipe/food/bscvcake +/datum/crafting_recipe/food/berry_vanilla_cake name = "blackberry and strawberry vanilla cake" - result = /obj/item/food/cake/bsvc + result = /obj/item/food/cake/berry_vanilla_cake reqs = list( /obj/item/food/cake/plain = 1, /obj/item/food/grown/berries = 5 diff --git a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_egg.dm b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_egg.dm index ffeccbf18c8b6..4aa01f34e2104 100644 --- a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_egg.dm +++ b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_egg.dm @@ -12,7 +12,7 @@ subcategory = CAT_EGG /datum/crafting_recipe/food/omelette - name = "Omelette" + name = "Omelette du fromage" result = /obj/item/food/omelette reqs = list( /obj/item/food/egg = 2, diff --git a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_pastry.dm b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_pastry.dm index 86c088cd2225d..e398bdc94a114 100644 --- a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_pastry.dm +++ b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_pastry.dm @@ -526,6 +526,16 @@ ) subcategory = CAT_PASTRY +/datum/crafting_recipe/food/jupitercupcake + name = "Jupiter-cup-cake" + reqs = list( + /obj/item/food/pastrybase = 1, + /obj/item/food/grown/mushroom/jupitercup = 1, + /datum/reagent/consumable/caramel = 3, + ) + result = /obj/item/food/jupitercupcake + category = CAT_PASTRY + /datum/crafting_recipe/food/honeybun name = "Honey bun" result = /obj/item/food/honeybun diff --git a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_spaghetti.dm b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_spaghetti.dm index d21436fc59c67..fc2dfc48de792 100644 --- a/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_spaghetti.dm +++ b/code/datums/components/crafting/crafting_lists/foodstuffs/recipes_spaghetti.dm @@ -109,3 +109,15 @@ /obj/item/stack/sheet/glass = 1 ) subcategory = CAT_SPAGHETTI + +/datum/crafting_recipe/food/carbonara + name = "Spaghetti Carbonara" + reqs = list( + /obj/item/food/spaghetti/boiledspaghetti = 1, + /obj/item/food/cheese/wedge = 1, + /obj/item/food/meat/bacon = 1, + /obj/item/food/egg = 1, + /datum/reagent/consumable/blackpepper = 2 + ) + result = /obj/item/food/spaghetti/carbonara + category = CAT_SPAGHETTI diff --git a/code/datums/components/food/edible.dm b/code/datums/components/food/edible.dm index 32bdf25d2066e..fe6c4dd6f8b79 100644 --- a/code/datums/components/food/edible.dm +++ b/code/datums/components/food/edible.dm @@ -158,6 +158,23 @@ Behavior that's still missing from this component that original food items had t /datum/component/edible/proc/examine(datum/source, mob/user, list/examine_list) SIGNAL_HANDLER + var/atom/owner = parent + + var/quality = get_perceived_food_quality(user) + if(quality > 0) + var/quality_label = GLOB.food_quality_description[quality] + examine_list += "You find this meal [quality_label]." + else if (quality == 0) + examine_list += "You find this meal edible." + else if (quality <= TOXIC_FOOD_QUALITY_THRESHOLD) + examine_list += "You find this meal disgusting!" + else + examine_list += "You find this meal inedible." + + var/datum/mind/mind = user.mind + if(mind && HAS_TRAIT_FROM(owner, TRAIT_FOOD_CHEF_MADE, REF(mind))) + examine_list += "[owner] was made by you!" + if(microwaved_type) examine_list += "[parent] could be microwaved into [initial(microwaved_type.name)]!" @@ -166,11 +183,11 @@ Behavior that's still missing from this component that original food items had t if (0) return if(1) - examine_list += "[parent] was bitten by someone!" + examine_list += "[owner] was bitten by someone!" if(2,3) - examine_list += "[parent] was bitten [bitecount] times!" + examine_list += "[owner] was bitten [bitecount] times!" else - examine_list += "[parent] was bitten multiple times!" + examine_list += "[owner] was bitten multiple times!" /datum/component/edible/proc/use_from_hand(obj/item/source, mob/living/M, mob/living/user) SIGNAL_HANDLER @@ -225,15 +242,12 @@ Behavior that's still missing from this component that original food items had t var/atom/this_food = parent - this_food.reagents.multiply_reagents(CRAFTED_FOOD_BASE_REAGENT_MODIFIER) - this_food.reagents.maximum_volume *= CRAFTED_FOOD_BASE_REAGENT_MODIFIER - for(var/obj/item/food/crafted_part in parts_list) if(!crafted_part.reagents) continue - this_food.reagents.maximum_volume += crafted_part.reagents.maximum_volume * CRAFTED_FOOD_INGREDIENT_REAGENT_MODIFIER - crafted_part.reagents.trans_to(this_food.reagents, crafted_part.reagents.maximum_volume, CRAFTED_FOOD_INGREDIENT_REAGENT_MODIFIER) + this_food.reagents.maximum_volume += crafted_part.reagents.maximum_volume + crafted_part.reagents.trans_to(this_food.reagents, crafted_part.reagents.maximum_volume) this_food.reagents.maximum_volume = ROUND_UP(this_food.reagents.maximum_volume) // Just because I like whole numbers for this. @@ -267,8 +281,6 @@ Behavior that's still missing from this component that original food items had t var/atom/this_food = parent - this_food.reagents.multiply_reagents(cooking_efficiency * CRAFTED_FOOD_BASE_REAGENT_MODIFIER) - source_item.reagents?.trans_to(this_food, source_item.reagents.total_volume) ///Makes sure the thing hasn't been destroyed or fully eaten to prevent eating phantom edibles @@ -324,7 +336,7 @@ Behavior that's still missing from this component that original food items had t else if(fullness > (600 * (1 + eater.overeatduration / 2000))) // The more you eat - the more you can eat eater.visible_message("[eater] cannot force any more of \the [parent] to go down [eater.p_their()] throat!", "You cannot force any more of \the [parent] to go down your throat!") return - + else //If you're feeding it to someone else. if(isbrain(eater)) to_chat(feeder, "[eater] doesn't seem to have a mouth!") @@ -378,6 +390,11 @@ Behavior that's still missing from this component that original food items had t if(!owner.reagents.total_volume) return SEND_SIGNAL(parent, COMSIG_FOOD_EATEN, eater, feeder, bitecount, bite_consumption) + + //Give a buff when the dish is hand-crafted and unbitten + if(bitecount == 0) + apply_buff(eater) + var/fraction = min(bite_consumption / owner.reagents.total_volume, 1) owner.reagents.trans_to(eater, bite_consumption, transfered_by = feeder, method = INGEST) bitecount++ @@ -415,6 +432,23 @@ Behavior that's still missing from this component that original food items had t return FALSE return TRUE +///Applies food buffs according to the crafting complexity +/datum/component/edible/proc/apply_buff(mob/eater) + var/buff + var/recipe_complexity = get_recipe_complexity() + if(recipe_complexity == 0) + return + var/obj/item/food/food = parent + if(!isnull(food.crafted_food_buff)) + buff = food.crafted_food_buff + else + buff = pick_weight(GLOB.food_buffs[recipe_complexity]) + if(!isnull(buff)) + var/mob/living/living_eater = eater + var/timeout = recipe_complexity + var/strength = recipe_complexity + living_eater.apply_status_effect(buff, timeout, strength) + ///Check foodtypes to see if we should send a moodlet /datum/component/edible/proc/check_liked(fraction, mob/eater) if(last_check_time + 50 > world.time) @@ -431,34 +465,68 @@ Behavior that's still missing from this component that original food items had t human_eater.adjust_disgust(25 + 30 * fraction) return // Later checks are irrelevant if you have ageusia - var/food_taste_reaction - if(check_liked) //Callback handling; use this as an override for special food like donuts - food_taste_reaction = check_liked.Invoke(fraction, human_eater) - - if(!food_taste_reaction) - if(foodtypes & tongue.toxic_food) - food_taste_reaction = FOOD_TOXIC - else if(foodtypes & tongue.disliked_food) - food_taste_reaction = FOOD_DISLIKED - else if(foodtypes & tongue.liked_food) - food_taste_reaction = FOOD_LIKED - - switch(food_taste_reaction) - if(FOOD_TOXIC) - to_chat(human_eater,"What the hell was that thing?!") - human_eater.adjust_disgust(25 + 30 * fraction) - SEND_SIGNAL(human_eater, COMSIG_ADD_MOOD_EVENT, "toxic_food", /datum/mood_event/disgusting_food) - if(FOOD_DISLIKED) - to_chat(human_eater,"That didn't taste very good...") - human_eater.adjust_disgust(11 + 15 * fraction) - SEND_SIGNAL(human_eater, COMSIG_ADD_MOOD_EVENT, "gross_food", /datum/mood_event/gross_food) - if(FOOD_LIKED) - to_chat(human_eater,"I love this taste!") - human_eater.adjust_disgust(-5 + -2.5 * fraction) - SEND_SIGNAL(human_eater, COMSIG_ADD_MOOD_EVENT, "fav_food", /datum/mood_event/favorite_food) + var/food_quality = get_perceived_food_quality(eater) + if(food_quality <= TOXIC_FOOD_QUALITY_THRESHOLD) + to_chat(human_eater,"What the hell was that thing?!") + human_eater.adjust_disgust(25 + 30 * fraction) + SEND_SIGNAL(human_eater, COMSIG_ADD_MOOD_EVENT, "toxic_food", /datum/mood_event/disgusting_food) + else if(food_quality < 0) + to_chat(human_eater,"That didn't taste very good...") + human_eater.adjust_disgust(11 + 15 * fraction) + SEND_SIGNAL(human_eater, COMSIG_ADD_MOOD_EVENT, "gross_food", /datum/mood_event/gross_food) + else if(food_quality > 0) + food_quality = min(food_quality, FOOD_QUALITY_TOP) + var/event = GLOB.food_quality_events[food_quality] + human_eater.adjust_disgust(-5 + -2 * food_quality * fraction) + var/quality_label = GLOB.food_quality_description[food_quality] + to_chat(human_eater, "That's \an [quality_label] meal.") + SEND_SIGNAL(human_eater, COMSIG_ADD_MOOD_EVENT, "quality_food", event) last_check_time = world.time +/// Get the complexity of the crafted food +/datum/component/edible/proc/get_recipe_complexity() + if(!HAS_TRAIT(parent, TRAIT_FOOD_CHEF_MADE) || !istype(parent, /obj/item/food)) + return 0 // It is factory made. Soulless. + var/obj/item/food/food = parent + return food.crafting_complexity + +/// Get food quality adjusted according to eater's preferences +/datum/component/edible/proc/get_perceived_food_quality(mob/living/carbon/human/eater) + var/food_quality = get_recipe_complexity() + + if(check_liked) //Callback handling; use this as an override for special food like donuts + var/special_reaction = check_liked.Invoke(eater) + switch(special_reaction) //return early for special foods + if(FOOD_LIKED) + return LIKED_FOOD_QUALITY_CHANGE + if(FOOD_DISLIKED) + return DISLIKED_FOOD_QUALITY_CHANGE + if(FOOD_TOXIC) + return TOXIC_FOOD_QUALITY_THRESHOLD + + var/obj/item/organ/tongue/tongue = eater.getorganslot(ORGAN_SLOT_TONGUE) + if(ishuman(eater)) + if(count_matching_foodtypes(foodtypes, tongue?.toxic_food)) //if the food is toxic, we don't care about anything else + return TOXIC_FOOD_QUALITY_THRESHOLD + if(HAS_TRAIT(eater, TRAIT_AGEUSIA)) //if you can't taste it, it doesn't taste good + return 0 + + food_quality += DISLIKED_FOOD_QUALITY_CHANGE * count_matching_foodtypes(foodtypes, tongue?.disliked_food) + food_quality += LIKED_FOOD_QUALITY_CHANGE * count_matching_foodtypes(foodtypes, tongue?.liked_food) + + return food_quality + +/// Get the number of matching food types in provided bitfields +/datum/component/edible/proc/count_matching_foodtypes(bitfield_one, bitfield_two) + var/count = 0 + var/matching_bits = bitfield_one & bitfield_two + while (matching_bits > 0) + if (matching_bits & 1) + count++ + matching_bits >>= 1 + return count + ///Delete the item when it is fully eaten /datum/component/edible/proc/on_consume(mob/living/eater, mob/living/feeder) SEND_SIGNAL(parent, COMSIG_FOOD_CONSUMED, eater, feeder) diff --git a/code/datums/components/grillable.dm b/code/datums/components/grillable.dm index f4f703752bb64..9769f6db03f2b 100644 --- a/code/datums/components/grillable.dm +++ b/code/datums/components/grillable.dm @@ -15,6 +15,9 @@ ///Do we use the large steam sprite? var/use_large_steam_sprite = FALSE + /// REF() to the mind which placed us on the griddle + var/who_placed_us + /datum/component/grillable/Initialize(cook_result, required_cook_time, positive_result, use_large_steam_sprite) . = ..() if(!isitem(parent)) //Only items support grilling at the moment @@ -25,9 +28,17 @@ src.positive_result = positive_result src.use_large_steam_sprite = use_large_steam_sprite + RegisterSignal(parent, COMSIG_ITEM_GRILL_PLACED, PROC_REF(on_grill_placed)) RegisterSignal(parent, COMSIG_ITEM_GRILLED, PROC_REF(OnGrill)) RegisterSignal(parent, COMSIG_PARENT_EXAMINE, PROC_REF(on_examine)) +/// Signal proc for [COMSIG_ITEM_GRILL_PLACED], item is placed on the grill. +/datum/component/grillable/proc/on_grill_placed(datum/source, mob/griller) + SIGNAL_HANDLER + + if(griller && griller.mind) + who_placed_us = REF(griller.mind) + ///Ran every time an item is grilled by something /datum/component/grillable/proc/OnGrill(datum/source, atom/used_grill, delta_time = 1) SIGNAL_HANDLER @@ -55,10 +66,14 @@ var/atom/original_object = parent var/atom/grilled_result = new cook_result(original_object.loc) + if(who_placed_us) + ADD_TRAIT(grilled_result, TRAIT_FOOD_CHEF_MADE, who_placed_us) + grilled_result.pixel_x = original_object.pixel_x grilled_result.pixel_y = original_object.pixel_y grill_source.visible_message("[parent] turns into \a [grilled_result]!") + original_object.reagents?.trans_to(grilled_result, original_object.reagents.total_volume) SEND_SIGNAL(parent, COMSIG_GRILL_COMPLETED, grilled_result) currently_grilling = FALSE qdel(parent) diff --git a/code/datums/elements/dryable.dm b/code/datums/elements/dryable.dm index 7493d724644b1..8d14c2039037d 100644 --- a/code/datums/elements/dryable.dm +++ b/code/datums/elements/dryable.dm @@ -20,13 +20,13 @@ UnregisterSignal(target, COMSIG_FOOD_CONSUMED) REMOVE_TRAIT(target, TRAIT_DRYABLE, ELEMENT_TRAIT(type)) -/datum/element/dryable/proc/finish_drying(atom/source) +/datum/element/dryable/proc/finish_drying(atom/source, datum/weakref/drying_user) SIGNAL_HANDLER var/atom/dried_atom = source if(dry_result == dried_atom.type)//if the dried type is the same as our currrent state, don't bother creating a whole new item, just re-color it. var/atom/movable/resulting_atom = dried_atom resulting_atom.add_atom_colour("#ad7257", FIXED_COLOUR_PRIORITY) - ADD_TRAIT(resulting_atom, TRAIT_DRIED, ELEMENT_TRAIT(type)) + apply_dried_status(resulting_atom, drying_user) resulting_atom.forceMove(source.drop_location()) return @@ -34,10 +34,23 @@ var/obj/item/stack/itemstack = dried_atom for(var/i in 1 to itemstack.amount) var/atom/movable/resulting_atom = new dry_result(source.drop_location()) - ADD_TRAIT(resulting_atom, TRAIT_DRIED, ELEMENT_TRAIT(type)) + apply_dried_status(resulting_atom, drying_user) + qdel(source) + return + else if(istype(source, /obj/item/food) && ispath(dry_result, /obj/item/food)) + var/obj/item/food/source_food = source + var/obj/item/food/resulting_food = new dry_result(source.drop_location()) + source_food.reagents.trans_to(resulting_food, source_food.reagents.total_volume) + apply_dried_status(resulting_food, drying_user) qdel(source) return else var/atom/movable/resulting_atom = new dry_result(source.drop_location()) - ADD_TRAIT(resulting_atom, TRAIT_DRIED, ELEMENT_TRAIT(type)) + apply_dried_status(resulting_atom, drying_user) qdel(source) + +/datum/element/dryable/proc/apply_dried_status(atom/target, datum/weakref/drying_user) + ADD_TRAIT(target, TRAIT_DRIED, ELEMENT_TRAIT(type)) + var/datum/mind/user_mind = drying_user?.resolve() + if(drying_user && istype(target, /obj/item/food)) + ADD_TRAIT(target, TRAIT_FOOD_CHEF_MADE, REF(user_mind)) diff --git a/code/datums/materials/meat.dm b/code/datums/materials/meat.dm index e9fbc8b4a463f..f4ef630cc1827 100644 --- a/code/datums/materials/meat.dm +++ b/code/datums/materials/meat.dm @@ -29,4 +29,4 @@ /datum/material/meat/proc/make_edible(atom/source, amount, material_flags) var/nutriment_count = 3 * (amount / MINERAL_MATERIAL_AMOUNT) var/oil_count = 2 * (amount / MINERAL_MATERIAL_AMOUNT) - source.AddComponent(/datum/component/edible, list(/datum/reagent/consumable/nutriment = nutriment_count, /datum/reagent/consumable/cooking_oil = oil_count), null, RAW | MEAT | GORE, null, 30, list("Fleshy")) + source.AddComponent(/datum/component/edible, list(/datum/reagent/consumable/nutriment = nutriment_count, /datum/reagent/consumable/nutriment/fat/oil = oil_count), null, RAW | MEAT | GORE, null, 30, list("Fleshy")) diff --git a/code/datums/mood_events/food_events.dm b/code/datums/mood_events/food_events.dm new file mode 100644 index 0000000000000..65b24fa490868 --- /dev/null +++ b/code/datums/mood_events/food_events.dm @@ -0,0 +1,46 @@ +/datum/mood_event/favorite_food + description = "I really enjoyed eating that." + mood_change = 5 + timeout = 4 MINUTES + +/datum/mood_event/gross_food + description = "I really didn't like that food." + mood_change = -2 + timeout = 4 MINUTES + +/datum/mood_event/disgusting_food + description = "That food was disgusting!" + mood_change = -6 + timeout = 4 MINUTES + +/datum/mood_event/breakfast + description = "Nothing like a hearty breakfast to start the shift." + mood_change = 2 + timeout = 10 MINUTES + +/datum/mood_event/food + timeout = 5 MINUTES + var/quality = FOOD_QUALITY_NORMAL + +/datum/mood_event/food/New(mob/M, ...) + . = ..() + mood_change = 2 + 2 * quality + description = "That food was [GLOB.food_quality_description[quality]]." + +/datum/mood_event/food/nice + quality = FOOD_QUALITY_NICE + +/datum/mood_event/food/good + quality = FOOD_QUALITY_GOOD + +/datum/mood_event/food/verygood + quality = FOOD_QUALITY_VERYGOOD + +/datum/mood_event/food/fantastic + quality = FOOD_QUALITY_FANTASTIC + +/datum/mood_event/food/amazing + quality = FOOD_QUALITY_AMAZING + +/datum/mood_event/food/top + quality = FOOD_QUALITY_TOP diff --git a/code/datums/mood_events/needs_events.dm b/code/datums/mood_events/needs_events.dm index d2389f3d08c05..5c12ade14fa9f 100644 --- a/code/datums/mood_events/needs_events.dm +++ b/code/datums/mood_events/needs_events.dm @@ -54,26 +54,6 @@ mood_change = -12 //Generic needs events -/datum/mood_event/favorite_food - description = "I really enjoyed eating that." - mood_change = 5 - timeout = 4 MINUTES - -/datum/mood_event/gross_food - description = "I really didn't like that food." - mood_change = -2 - timeout = 4 MINUTES - -/datum/mood_event/disgusting_food - description = "That food was disgusting!" - mood_change = -6 - timeout = 4 MINUTES - -/datum/mood_event/breakfast - description = "Nothing like a hearty breakfast to start the shift." - mood_change = 2 - timeout = 10 MINUTES - /datum/mood_event/nice_shower description = "I have recently had a nice shower." mood_change = 4 diff --git a/code/datums/recipe.dm b/code/datums/recipe.dm deleted file mode 100644 index 7d4bb9fc1487e..0000000000000 --- a/code/datums/recipe.dm +++ /dev/null @@ -1,120 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * - * /datum/recipe by rastaf0 13 apr 2011 * - * * * * * * * * * * * * * * * * * * * * * * * * * * - * This is powerful and flexible recipe system. - * It exists not only for food. - * supports both reagents and objects as prerequisites. - * In order to use this system you have to define a deriative from /datum/recipe - * * reagents are reagents. Acid, milc, booze, etc. - * * items are objects. Fruits, tools, circuit boards. - * * result is type to create as new object - * * time is optional parameter, you shall use in in your machine, - default /datum/recipe/ procs does not rely on this parameter. - * - * Functions you need: - * /datum/recipe/proc/make(var/obj/container as obj) - * Creates result inside container, - * deletes prerequisite reagents, - * transfers reagents from prerequisite objects, - * deletes all prerequisite objects (even not needed for recipe at the moment). - * - * /proc/select_recipe(list/datum/recipe/avaiable_recipes, obj/obj as obj, exact = 1) - * Wonderful function that select suitable recipe for you. - * obj is a machine (or magik hat) with prerequisites, - * exact = 0 forces algorithm to ignore superfluous stuff. - * - * - * Functions you do not need to call directly but could: - * /datum/recipe/proc/check_reagents(var/datum/reagents/avail_reagents) - * //1=precisely, 0=insufficiently, -1=superfluous - * - * /datum/recipe/proc/check_items(var/obj/container as obj) - * //1=precisely, 0=insufficiently, -1=superfluous - * - * */ - -/datum/recipe - var/list/reagents_list // example: = list(/datum/reagent/consumable/berryjuice = 5) // do not list same reagent twice - var/list/items // example: =list(/obj/item/crowbar, /obj/item/welder) // place /foo/bar before /foo - var/result //example: = /obj/item/food/donut - var/time = 100 // 1/10 part of second - - -/datum/recipe/proc/check_reagents(datum/reagents/avail_reagents) //1=precisely, 0=insufficiently, -1=superfluous - . = 1 - for (var/r_r in reagents_list) - var/aval_r_amnt = avail_reagents.get_reagent_amount(r_r) - if (!(abs(aval_r_amnt - reagents_list[r_r])<0.5)) //if NOT equals - if (aval_r_amnt>reagents_list[r_r]) - . = -1 - else - return 0 - if ((reagents_list?(reagents_list.len):(0)) < avail_reagents.reagent_list.len) - return -1 - return . - -/datum/recipe/proc/check_items(obj/container) //1=precisely, 0=insufficiently, -1=superfluous - if (!items) - if (locate(/obj/) in container) - return -1 - else - return 1 - . = 1 - var/list/checklist = items.Copy() - for (var/obj/O in container) - var/found = 0 - for (var/type in checklist) - if (istype(O,type)) - checklist-=type - found = 1 - break - if (!found) - . = -1 - if (checklist.len) - return 0 - return . - -//general version -/datum/recipe/proc/make(obj/container) - var/obj/result_obj = new result(container) - for (var/obj/O in (container.contents-result_obj)) - O.reagents.trans_to(result_obj, O.reagents.total_volume) - qdel(O) - container.reagents.clear_reagents() - return result_obj - -// food-related -/datum/recipe/proc/make_food(obj/container) - var/obj/result_obj = new result(container) - for (var/obj/O in (container.contents-result_obj)) - if (O.reagents) - O.reagents.del_reagent(/datum/reagent/consumable/nutriment) - O.reagents.update_total() - O.reagents.trans_to(result_obj, O.reagents.total_volume) - qdel(O) - container.reagents.clear_reagents() - return result_obj - -/proc/select_recipe(list/datum/recipe/avaiable_recipes, obj/obj, exact = 1 as num) - if (!exact) - exact = -1 - var/list/datum/recipe/possible_recipes = new - for (var/datum/recipe/recipe in avaiable_recipes) - if (recipe.check_reagents(obj.reagents)==exact && recipe.check_items(obj)==exact) - possible_recipes+=recipe - if (possible_recipes.len==0) - return null - else if (possible_recipes.len==1) - return possible_recipes[1] - else //okay, let's select the most complicated recipe - var/r_count = 0 - var/i_count = 0 - . = possible_recipes[1] - for (var/datum/recipe/recipe in possible_recipes) - var/N_i = (recipe.items)?(recipe.items.len):0 - var/N_r = (recipe.reagents_list)?(recipe.reagents_list.len):0 - if (N_i > i_count || (N_i== i_count && N_r > r_count )) - r_count = N_r - i_count = N_i - . = recipe - return . diff --git a/code/datums/status_effects/food/_food_effect.dm b/code/datums/status_effects/food/_food_effect.dm new file mode 100644 index 0000000000000..917307ef48a8b --- /dev/null +++ b/code/datums/status_effects/food/_food_effect.dm @@ -0,0 +1,22 @@ +/// Buffs given by eating hand-crafted food. The duration scales with food complexity. +/datum/status_effect/food + id = "food_effect" + duration = 5 MINUTES // Same as food mood buffs + status_type = STATUS_EFFECT_REPLACE // Only one food buff allowed + alert_type = /atom/movable/screen/alert/status_effect/food + /// Buff power equal to food complexity (1 to 5) + var/strength + +/datum/status_effect/food/on_creation(mob/living/new_owner, timeout = 1, strength = 1) + . = ..() + src.strength = strength + if(isnum(timeout)) + duration *= timeout + if(istype(linked_alert, /atom/movable/screen/alert/status_effect/food)) + linked_alert.icon_state = "[linked_alert.base_icon_state]_[strength]" + +/atom/movable/screen/alert/status_effect/food + name = "Hand-crafted meal" + desc = "Eating it made me feel better." + icon_state = "food_buff_1" + base_icon_state = "food_buff" diff --git a/code/datums/status_effects/food/chilling.dm b/code/datums/status_effects/food/chilling.dm new file mode 100644 index 0000000000000..10b1b556196a4 --- /dev/null +++ b/code/datums/status_effects/food/chilling.dm @@ -0,0 +1,12 @@ +///food effect applied by ice cream and frozen treats +/datum/status_effect/food/chilling + alert_type = /atom/movable/screen/alert/status_effect/icecream_chilling //different path, so we sprite one state and not five. + +/datum/status_effect/food/chilling/tick(seconds_between_ticks) + var/minimum_temp = (BODYTEMP_HEAT_DAMAGE_LIMIT - 12 * strength) + if(owner.bodytemperature >= minimum_temp) + owner.adjust_bodytemperature(-2.75 * strength * seconds_between_ticks, min_temp = minimum_temp) + +/atom/movable/screen/alert/status_effect/icecream_chilling + desc = "Nothing beats a cup of ice cream during hot, plasma-floody day..." + icon_state = "food_icecream" diff --git a/code/datums/status_effects/food/grant_trait.dm b/code/datums/status_effects/food/grant_trait.dm new file mode 100644 index 0000000000000..d2bc3107946a4 --- /dev/null +++ b/code/datums/status_effects/food/grant_trait.dm @@ -0,0 +1,33 @@ + +/// Makes you gain a trait +/datum/status_effect/food/trait + var/trait = TRAIT_DUMB // You need to override this + +/datum/status_effect/food/trait/on_apply() + ADD_TRAIT(owner, trait, type) + return ..() + +/datum/status_effect/food/trait/be_replaced() + REMOVE_TRAIT(owner, trait, type) + return ..() + +/datum/status_effect/food/trait/on_remove() + REMOVE_TRAIT(owner, trait, type) + return ..() + +/datum/status_effect/food/trait/shockimmune + alert_type = /atom/movable/screen/alert/status_effect/food/trait_shockimmune + trait = TRAIT_SHOCKIMMUNE + +/atom/movable/screen/alert/status_effect/food/trait_shockimmune + name = "Grounded" + desc = "That meal made me feel like a superconductor..." + +/datum/status_effect/food/trait/mute + alert_type = /atom/movable/screen/alert/status_effect/mute + trait = TRAIT_MUTE + +/atom/movable/screen/alert/status_effect/mute + name = "..." + desc = "..." + icon_state = "mute" diff --git a/code/datums/status_effects/food/haste.dm b/code/datums/status_effects/food/haste.dm new file mode 100644 index 0000000000000..8dbe7a7762efe --- /dev/null +++ b/code/datums/status_effects/food/haste.dm @@ -0,0 +1,27 @@ +///Haste makes the eater move and act faster +/datum/status_effect/food/haste + +/datum/status_effect/food/haste/on_apply() + var/datum/movespeed_modifier/food_haste/speed_mod = new() + speed_mod.multiplicative_slowdown = -0.04 * strength + owner.add_movespeed_modifier(speed_mod, update = TRUE) + var/datum/actionspeed_modifier/status_effect/food_haste/action_mod = new() + action_mod.multiplicative_slowdown = -0.06 * strength + owner.add_actionspeed_modifier(action_mod, update = TRUE) + return ..() + +/datum/status_effect/food/haste/be_replaced() + owner.remove_movespeed_modifier(/datum/movespeed_modifier/food_haste) + owner.remove_actionspeed_modifier(/datum/actionspeed_modifier/status_effect/food_haste) + return ..() + +/datum/status_effect/food/haste/on_remove() + owner.remove_movespeed_modifier(/datum/movespeed_modifier/food_haste, update = TRUE) + owner.remove_actionspeed_modifier(/datum/actionspeed_modifier/status_effect/food_haste, update = TRUE) + return ..() + +/datum/movespeed_modifier/food_haste + multiplicative_slowdown = -0.04 + +/datum/actionspeed_modifier/status_effect/food_haste + multiplicative_slowdown = -0.06 diff --git a/code/datums/status_effects/food/speech.dm b/code/datums/status_effects/food/speech.dm new file mode 100644 index 0000000000000..4ec6e6903fa7e --- /dev/null +++ b/code/datums/status_effects/food/speech.dm @@ -0,0 +1,73 @@ +///Temporary modifies the speech using the /datum/component/speechmod +/datum/status_effect/food/speech + +/datum/status_effect/food/speech/italian + alert_type = /atom/movable/screen/alert/status_effect/italian_speech + +/datum/status_effect/food/speech/italian/on_apply() + RegisterSignal(owner, COMSIG_MOB_SAY, PROC_REF(handle_speech)) + +/datum/status_effect/food/speech/italian/on_remove() + . = ..() + UnregisterSignal(owner, COMSIG_MOB_SAY) + +/datum/status_effect/food/speech/italian/proc/handle_speech(datum/source, list/speech_args) + var/message = speech_args[SPEECH_MESSAGE] + if(message[1] != "*") + message = " [message]" + var/list/italian_words = strings(ITALIAN_TALK_FILE, "italian") + + for(var/key in italian_words) + var/value = italian_words[key] + if(islist(value)) + value = pick(value) + + message = replacetextEx(message, " [uppertext(key)]", " [uppertext(value)]") + message = replacetextEx(message, " [capitalize(key)]", " [capitalize(value)]") + message = replacetextEx(message, " [key]", " [value]") + + if(prob(3)) + message += pick(" Ravioli, ravioli, give me the formuoli!"," Mamma-mia!"," Mamma-mia! That's a spicy meat-ball!", " La la la la la funiculi funicula!") + speech_args[SPEECH_MESSAGE] = trim(message) + +/atom/movable/screen/alert/status_effect/italian_speech + name = "Linguini Embrace" + desc = "You feel a sudden urge to gesticulate wildly." + icon_state = "food_italian" + + +/// fr*nch +/datum/status_effect/food/speech/french + alert_type = /atom/movable/screen/alert/status_effect/french_speech + +/datum/status_effect/food/speech/french/on_apply() + RegisterSignal(owner, COMSIG_MOB_SAY, PROC_REF(handle_speech)) + +/datum/status_effect/food/speech/french/on_remove() + . = ..() + UnregisterSignal(owner, COMSIG_MOB_SAY) + +/datum/status_effect/food/speech/french/proc/handle_speech(datum/source, list/speech_args) + SIGNAL_HANDLER + var/message = speech_args[SPEECH_MESSAGE] + if(message[1] != "*") + message = " [message]" + var/list/french_words = strings(FRENCH_TALK_FILE, "french") + + for(var/key in french_words) + var/value = french_words[key] + if(islist(value)) + value = pick(value) + + message = replacetextEx(message, " [uppertext(key)]", " [uppertext(value)]") + message = replacetextEx(message, " [capitalize(key)]", " [capitalize(value)]") + message = replacetextEx(message, " [key]", " [value]") + + if(prob(3)) + message += pick(" Honh honh honh!"," Honh!"," Zut Alors!") + speech_args[SPEECH_MESSAGE] = trim(message) + +/atom/movable/screen/alert/status_effect/french_speech + name = "Café Chic" + desc = "Suddenly, everything seems worthy of a passionate debate." + icon_state = "food_french" diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 0235485ddef64..9aa198d1ae78c 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -1535,6 +1535,8 @@ CREATION_TEST_IGNORE_SUBTYPES(/atom) return /atom/proc/OnCreatedFromProcessing(mob/living/user, obj/item/I, list/chosen_option, atom/original_atom) + if(user.mind) + ADD_TRAIT(src, TRAIT_FOOD_CHEF_MADE, REF(user.mind)) return //! Tool-specific behavior procs. diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 6084c08baed90..774618d2d0d8f 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -216,8 +216,8 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) //Grinder vars /// A reagent list containing the reagents this item produces when ground up in a grinder - this can be an empty list to allow for reagent transferring only var/list/grind_results - /// A reagent list containing the reagents this item produces when JUICED in a grinder! - var/list/juice_results + ///A reagent the nutriments are converted into when the item is juiced. + var/datum/reagent/consumable/juice_results ///Icon for monkey var/icon/monkey_icon @@ -1047,10 +1047,37 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) return TRUE //Called BEFORE the object is ground up - use this to change grind results based on conditions -//Use "return -1" to prevent the grinding from occurring +//Return "-1" to prevent the grinding from occurring /obj/item/proc/on_grind() + return SEND_SIGNAL(src, COMSIG_ITEM_ON_GRIND) +///Grind item, adding grind_results to item's reagents and transfering to target_holder if specified +/obj/item/proc/grind(datum/reagents/target_holder, mob/user) + if(on_grind() == -1) + return FALSE + if(!reagents) + reagents = new() + target_holder.add_reagent_list(grind_results) + if(reagents && target_holder) + reagents.trans_to(target_holder, reagents.total_volume, transfered_by = user) + return TRUE + +///Called BEFORE the object is ground up - use this to change grind results based on conditions. Return "-1" to prevent the grinding from occurring /obj/item/proc/on_juice() + if(!juice_results) + return -1 + return SEND_SIGNAL(src, COMSIG_ITEM_ON_JUICE) + +///Juice item, converting nutriments into juice_results and transfering to target_holder if specified +/obj/item/proc/juice(datum/reagents/target_holder, mob/user) + if(on_juice() == -1) + return FALSE + if(!reagents) + reagents = new() + reagents.add_reagent_list(juice_results) + if(reagents && target_holder) + reagents.trans_to(target_holder, reagents.total_volume, transfered_by = user) + return TRUE /obj/item/proc/set_force_string() switch(force) diff --git a/code/game/objects/items/food/_food.dm b/code/game/objects/items/food/_food.dm index 0c0c857604fd4..9c63b082e2d3d 100644 --- a/code/game/objects/items/food/_food.dm +++ b/code/game/objects/items/food/_food.dm @@ -36,6 +36,10 @@ var/trash_type ///How much junkiness this food has? God I should remove junkiness soon var/junkiness + ///How exquisite the meal is. Applicable to crafted food, increasing its quality. Spans from 0 to 5. + var/crafting_complexity = 0 + ///Buff given when a hand-crafted version of this item is consumed. Randomized according to crafting_complexity if not assigned. + var/datum/status_effect/food/crafted_food_buff = null /obj/item/food/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/bread.dm b/code/game/objects/items/food/bread.dm index 32d3196e7d740..1dbd5ce8250ac 100644 --- a/code/game/objects/items/food/bread.dm +++ b/code/game/objects/items/food/bread.dm @@ -7,6 +7,7 @@ tastes = list("bread" = 10) foodtypes = GRAIN eat_time = 3 SECONDS + crafting_complexity = FOOD_COMPLEXITY_2 /// type is spawned 5 at a time and replaces this bread loaf when processed by cutting tool var/obj/item/food/breadslice/slice_type /// so that the yield can change if it isnt 5 @@ -30,6 +31,7 @@ food_flags = FOOD_FINGER_FOOD eat_time = 0.5 SECONDS w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/breadslice/Initialize(mapload) . = ..() @@ -46,6 +48,7 @@ foodtypes = GRAIN w_class = WEIGHT_CLASS_SMALL slice_type = /obj/item/food/breadslice/plain + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/bread/plain/Initialize(mapload) . = ..() @@ -59,6 +62,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 2 ) + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/breadslice/plain/Initialize(mapload) . = ..() @@ -78,6 +82,7 @@ tastes = list("decaying fungus" = 1) foodtypes = GROSS preserved_food = TRUE + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/breadslice/moldy/bacteria name = "bacteria-rich moldy 'bread' slice" @@ -100,6 +105,7 @@ tastes = list("bread" = 10, "meat" = 10) foodtypes = GRAIN | MEAT slice_type = /obj/item/food/breadslice/meat + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/breadslice/meat name = "meatbread slice" @@ -111,6 +117,7 @@ ) tastes = list("bread" = 1, "meat" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bread/xenomeat name = "xenomeatbread loaf" @@ -123,6 +130,7 @@ tastes = list("bread" = 10, "acid" = 10) foodtypes = GRAIN | MEAT slice_type = /obj/item/food/breadslice/xenomeat + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/breadslice/xenomeat name = "xenomeatbread slice" @@ -134,6 +142,7 @@ ) tastes = list("bread" = 10, "acid" = 10) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bread/spidermeat name = "spider meat loaf" @@ -147,6 +156,7 @@ tastes = list("bread" = 10, "cobwebs" = 5) foodtypes = GRAIN | MEAT | TOXIC slice_type = /obj/item/food/breadslice/spidermeat + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/breadslice/spidermeat name = "spider meat bread slice" @@ -159,6 +169,7 @@ ) tastes = list("bread" = 10, "cobwebs" = 5) foodtypes = GRAIN | MEAT | TOXIC + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bread/banana name = "banana-nut bread" @@ -171,6 +182,7 @@ tastes = list("bread" = 10) // bananjuice will also flavour foodtypes = GRAIN | FRUIT slice_type = /obj/item/food/breadslice/banana + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/breadslice/banana name = "banana-nut bread slice" @@ -182,6 +194,7 @@ ) tastes = list("bread" = 10) foodtypes = GRAIN | FRUIT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bread/tofu name = "Tofubread" @@ -194,6 +207,7 @@ tastes = list("bread" = 10, "tofu" = 10) foodtypes = GRAIN | VEGETABLES slice_type = /obj/item/food/breadslice/tofu + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/breadslice/tofu name = "tofubread slice" @@ -205,6 +219,7 @@ ) tastes = list("bread" = 10, "tofu" = 10) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bread/creamcheese name = "cream cheese bread" @@ -217,6 +232,7 @@ tastes = list("bread" = 10, "cheese" = 10) foodtypes = GRAIN | DAIRY slice_type = /obj/item/food/breadslice/creamcheese + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/breadslice/creamcheese name = "cream cheese bread slice" @@ -228,6 +244,7 @@ ) tastes = list("bread" = 10, "cheese" = 10) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bread/mimana name = "mimana bread" @@ -242,6 +259,7 @@ tastes = list("bread" = 10, "silence" = 10) foodtypes = GRAIN | FRUIT slice_type = /obj/item/food/breadslice/mimana + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/breadslice/mimana name = "mimana bread slice" @@ -254,6 +272,7 @@ /datum/reagent/consumable/nutriment/vitamin = 2 ) foodtypes = GRAIN | FRUIT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bread/empty name = "bread" @@ -290,6 +309,7 @@ attack_verb_simple = list("touche") tastes = list("bread" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/baguette/mime name = "French Baguette" @@ -315,6 +335,7 @@ bite_consumption = 3 tastes = list("bread" = 1, "garlic" = 1, "butter" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/butterbiscuit name = "butter biscuit" @@ -328,6 +349,7 @@ tastes = list("butter" = 1, "biscuit" = 1) foodtypes = GRAIN | BREAKFAST w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/butterdog name = "butterdog" @@ -342,6 +364,7 @@ tastes = list("butter" = 1, "exotic butter" = 1) foodtypes = GRAIN | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/butterdog/ComponentInitialize() . = ..() diff --git a/code/game/objects/items/food/burgers.dm b/code/game/objects/items/food/burgers.dm index 88f88460a2273..10d51386ff4a3 100644 --- a/code/game/objects/items/food/burgers.dm +++ b/code/game/objects/items/food/burgers.dm @@ -11,6 +11,7 @@ foodtypes = GRAIN | MEAT //lettuce doesn't make burger a vegetable. eat_time = 15 //Quick snack w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/plain name = "burger" @@ -21,6 +22,7 @@ /datum/reagent/consumable/nutriment/vitamin = 1 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/plain/Initialize(mapload) . = ..() @@ -47,6 +49,7 @@ foodtypes = MEAT | GRAIN | GORE var/subjectname = "" var/subjectjob = null + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/human/CheckParts(list/parts_list) ..() @@ -70,6 +73,7 @@ /datum/reagent/consumable/nutriment/vitamin = 6 ) foodtypes = GRAIN | MEAT | GORE + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/appendix name = "appendix burger" @@ -82,6 +86,7 @@ icon_state = "appendixburger" tastes = list("bun" = 4, "grass" = 2) foodtypes = GRAIN | MEAT | GORE + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/fish name = "fillet -o- carp sandwich" @@ -94,6 +99,7 @@ ) tastes = list("bun" = 4, "fish" = 4) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/tofu name = "tofu burger" @@ -106,6 +112,7 @@ ) tastes = list("bun" = 4, "tofu" = 4) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/roburger name = "roburger" @@ -118,6 +125,7 @@ ) tastes = list("bun" = 4, "lettuce" = 2, "sludge" = 1) foodtypes = GRAIN | TOXIC + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/roburgerbig name = "roburger" @@ -143,6 +151,7 @@ ) tastes = list("bun" = 4, "acid" = 4) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/bearger name = "bearger" @@ -154,6 +163,7 @@ /datum/reagent/consumable/nutriment/vitamin = 7 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/clown name = "clown burger" @@ -165,6 +175,7 @@ /datum/reagent/consumable/nutriment/vitamin = 6 ) foodtypes = GRAIN | FRUIT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/mime name = "mime burger" @@ -177,6 +188,7 @@ /datum/reagent/consumable/nothing = 6 ) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/brain name = "brainburger" @@ -189,6 +201,7 @@ ) tastes = list("bun" = 4, "brains" = 2) foodtypes = GRAIN | MEAT | GORE + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/ghost name = "ghost burger" @@ -205,6 +218,7 @@ alpha = 170 verb_say = "moans" verb_yell = "wails" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/ghost/Initialize(mapload) . = ..() @@ -254,6 +268,7 @@ /datum/reagent/colorful_reagent/powder/red = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/orange name = "orange burger" @@ -267,6 +282,7 @@ /datum/reagent/colorful_reagent/powder/orange = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/yellow name = "yellow burger" @@ -280,6 +296,7 @@ /datum/reagent/colorful_reagent/powder/yellow = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/green name = "green burger" @@ -293,6 +310,7 @@ /datum/reagent/colorful_reagent/powder/green = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/blue name = "blue burger" @@ -306,6 +324,7 @@ /datum/reagent/colorful_reagent/powder/blue = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/purple name = "purple burger" @@ -319,6 +338,7 @@ /datum/reagent/colorful_reagent/powder/purple = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/black name = "black burger" @@ -332,6 +352,7 @@ /datum/reagent/colorful_reagent/powder/black = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/white name = "white burger" @@ -345,6 +366,7 @@ /datum/reagent/colorful_reagent/powder/white = 10 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/spell name = "spell burger" @@ -357,6 +379,7 @@ ) tastes = list("bun" = 4, "magic" = 2) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/bigbite name = "big bite burger" @@ -369,6 +392,7 @@ ) w_class = WEIGHT_CLASS_NORMAL foodtypes = GRAIN | MEAT | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/jelly name = "jelly burger" @@ -376,6 +400,7 @@ icon_state = "jellyburger" tastes = list("bun" = 4, "jelly" = 2) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/jelly/slime food_reagents = list( @@ -384,6 +409,7 @@ /datum/reagent/consumable/nutriment/vitamin = 6 ) foodtypes = GRAIN | TOXIC + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/jelly/cherry food_reagents = list( @@ -407,6 +433,7 @@ max_volume = 100 tastes = list("bun" = 4, "type two diabetes" = 10) foodtypes = GRAIN | MEAT | DAIRY + crafting_complexity = FOOD_COMPLEXITY_5 /obj/item/food/burger/fivealarm name = "five alarm burger" @@ -420,6 +447,7 @@ /datum/reagent/consumable/nutriment/vitamin = 6 ) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/rat name = "rat burger" @@ -431,6 +459,7 @@ /datum/reagent/consumable/nutriment/vitamin = 2 ) foodtypes = GRAIN | MEAT | GORE + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/baseball name = "home run baseball burger" @@ -442,6 +471,7 @@ /datum/reagent/consumable/nutriment/vitamin = 2 ) foodtypes = GRAIN | GROSS + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/baconburger name = "bacon burger" @@ -454,6 +484,7 @@ ) tastes = list("bacon" = 4, "bun" = 2) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/empoweredburger name = "empowered burger" @@ -467,6 +498,7 @@ ) tastes = list("bun" = 2, "pure electricity" = 4) foodtypes = GRAIN | TOXIC + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/burger/crab name = "crab burger" @@ -479,6 +511,7 @@ ) tastes = list("bun" = 2, "crab meat" = 4) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/soylent name = "soylent burger" @@ -491,6 +524,7 @@ ) tastes = list("bun" = 2, "assistant" = 4) foodtypes = GRAIN | MEAT | DAIRY + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/burger/rib name = "mcrib" @@ -504,6 +538,7 @@ ) tastes = list("bun" = 2, "pork patty" = 4) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/mcguffin name = "mcguffin" @@ -517,6 +552,7 @@ /datum/reagent/consumable/nutriment/vitamin = 1 ) foodtypes = GRAIN | MEAT | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/chicken name = "chicken sandwich" //Apparently the proud people of Americlapstan object to this thing being called a burger. Apparently McDonald's just calls it a burger in Europe as to not scare and confuse us. @@ -528,9 +564,10 @@ /datum/reagent/consumable/mayonnaise = 3, /datum/reagent/consumable/nutriment/protein = 7, /datum/reagent/consumable/nutriment/vitamin = 1, - /datum/reagent/consumable/cooking_oil = 2 + /datum/reagent/consumable/nutriment/fat/oil = 2 ) foodtypes = GRAIN | MEAT | FRIED + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/cheese name = "cheese burger" @@ -543,6 +580,7 @@ /datum/reagent/consumable/nutriment/vitamin = 2 ) foodtypes = GRAIN | MEAT | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/burger/cheese/Initialize(mapload) . = ..() @@ -560,6 +598,7 @@ ) foodtypes = GRAIN | MEAT | DAIRY | TOXIC | GROSS | FRUIT w_class = WEIGHT_CLASS_NORMAL // The crazy hamburger in the video was bigger than joker's hand therefore i think this weight class is adequate. + crafting_complexity = FOOD_COMPLEXITY_4 // empty burger you can customize /obj/item/food/burger/empty diff --git a/code/game/objects/items/food/cake.dm b/code/game/objects/items/food/cake.dm index 377882e0dc2e5..fcfb4d3932b08 100644 --- a/code/game/objects/items/food/cake.dm +++ b/code/game/objects/items/food/cake.dm @@ -11,6 +11,7 @@ ) tastes = list("cake" = 1) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_2 /// type is spawned 5 at a time and replaces this cake when processed by cutting tool var/obj/item/food/cakeslice/slice_type /// changes yield of sliced cake, default for cake is 5 @@ -36,6 +37,7 @@ tastes = list("cake" = 1) foodtypes = GRAIN | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cake/plain name = "plain cake" @@ -48,6 +50,7 @@ tastes = list("sweetness" = 2, "cake" = 5) foodtypes = GRAIN | DAIRY | SUGAR slice_type = /obj/item/food/cakeslice/plain + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/plain name = "plain cake slice" @@ -55,6 +58,7 @@ icon_state = "plaincake_slice" tastes = list("sweetness" = 2,"cake" = 5) foodtypes = GRAIN | DAIRY | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/carrot name = "carrot cake" @@ -67,6 +71,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "carrot" = 1) foodtypes = GRAIN | DAIRY | VEGETABLES | SUGAR slice_type = /obj/item/food/cakeslice/carrot + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/carrot name = "carrot cake slice" @@ -78,6 +83,7 @@ ) tastes = list("cake" = 5, "sweetness" = 2, "carrot" = 1) foodtypes = GRAIN | DAIRY | VEGETABLES | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/brain name = "brain cake" @@ -91,6 +97,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "brains" = 1) foodtypes = GRAIN | DAIRY | MEAT | GROSS | SUGAR slice_type = /obj/item/food/cakeslice/brain + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/brain name = "brain cake slice" @@ -103,6 +110,7 @@ ) tastes = list("cake" = 5, "sweetness" = 2, "brains" = 1) foodtypes = GRAIN | DAIRY | MEAT | GROSS | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/cheese name = "cheese cake" @@ -115,6 +123,7 @@ tastes = list("cake" = 4, "cream cheese" = 3) foodtypes = GRAIN | DAIRY slice_type = /obj/item/food/cakeslice/cheese + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/cheese name = "cheese cake slice" @@ -126,6 +135,7 @@ ) tastes = list("cake" = 4, "cream cheese" = 3) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/orange name = "orange cake" @@ -138,6 +148,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "oranges" = 2) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR slice_type = /obj/item/food/cakeslice/orange + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/orange name = "orange cake slice" @@ -145,6 +156,7 @@ icon_state = "orangecake_slice" tastes = list("cake" = 5, "sweetness" = 2, "oranges" = 2) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/lime name = "lime cake" @@ -157,6 +169,7 @@ tastes = list("cake" = 5, "sweetness" = 2, "unbearable sourness" = 2) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR slice_type = /obj/item/food/cakeslice/lime + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/lime name = "lime cake slice" @@ -164,6 +177,7 @@ icon_state = "limecake_slice" tastes = list("cake" = 5, "sweetness" = 2, "unbearable sourness" = 2) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/lemon name = "lemon cake" @@ -176,6 +190,7 @@ tastes = list("cake" = 5, "sweetness" = 3, "sourness" = 1) //lemon cake is never as sour as it is sweet, have you ever actually eaten it? foodtypes = GRAIN | DAIRY | FRUIT | SUGAR slice_type = /obj/item/food/cakeslice/lemon + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/lemon name = "lemon cake slice" @@ -183,6 +198,7 @@ icon_state = "lemoncake_slice" tastes = list("cake" = 5, "sweetness" = 2, "sourness" = 2) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/chocolate name = "chocolate cake" @@ -195,6 +211,7 @@ tastes = list("cake" = 5, "sweetness" = 1, "chocolate" = 4) foodtypes = GRAIN | DAIRY | JUNKFOOD | SUGAR slice_type = /obj/item/food/cakeslice/chocolate + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/chocolate name = "chocolate cake slice" @@ -202,6 +219,7 @@ icon_state = "chocolatecake_slice" tastes = list("cake" = 5, "sweetness" = 1, "chocolate" = 4) foodtypes = GRAIN | DAIRY | JUNKFOOD | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/birthday name = "birthday cake" @@ -215,6 +233,7 @@ tastes = list("cake" = 5, "sweetness" = 1) foodtypes = GRAIN | DAIRY | JUNKFOOD | SUGAR slice_type = /obj/item/food/cakeslice/birthday + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/birthday/microwave_act(obj/machinery/microwave/M) //super sekrit club new /obj/item/clothing/head/utility/hardhat/cakehat(get_turf(src)) @@ -231,6 +250,7 @@ ) tastes = list("cake" = 5, "sweetness" = 1) foodtypes = GRAIN | DAIRY | JUNKFOOD | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/birthday/energy name = "energy cake" @@ -247,6 +267,7 @@ ) tastes = list("cake" = 3, "a Vlad's Salad" = 1) slice_type = /obj/item/food/cakeslice/birthday/energy + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/cake/birthday/energy/microwave_act(obj/machinery/microwave/M) //super sekriter club new /obj/item/clothing/head/utility/hardhat/cakehat/energycake(get_turf(src)) @@ -277,6 +298,7 @@ /datum/reagent/consumable/liquidelectricity = 2 ) tastes = list("cake" = 3, "a Vlad's Salad" = 1) + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/cakeslice/birthday/energy/proc/energy_bite(mob/living/user) to_chat(user, "As you eat the cake slice, you accidentally hurt yourself on the embedded energy dagger!") @@ -300,6 +322,7 @@ tastes = list("cake" = 5, "sweetness" = 1, "apple" = 1) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR slice_type = /obj/item/food/cakeslice/apple + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/apple name = "apple cake slice" @@ -307,6 +330,7 @@ icon_state = "applecakeslice" tastes = list("cake" = 5, "sweetness" = 1, "apple" = 1) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/slimecake name = "Slime cake" @@ -315,6 +339,7 @@ tastes = list("cake" = 5, "sweetness" = 1, "slime" = 1) foodtypes = GRAIN | DAIRY | SUGAR slice_type = /obj/item/food/cakeslice/slimecake + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/slimecake name = "slime cake slice" @@ -322,6 +347,7 @@ icon_state = "slimecake_slice" tastes = list("cake" = 5, "sweetness" = 1, "slime" = 1) foodtypes = GRAIN | DAIRY | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/pumpkinspice name = "pumpkin spice cake" @@ -330,6 +356,7 @@ tastes = list("cake" = 5, "sweetness" = 1, "pumpkin" = 1) foodtypes = GRAIN | DAIRY | VEGETABLES | SUGAR slice_type = /obj/item/food/cakeslice/pumpkinspice + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/pumpkinspice name = "pumpkin spice cake slice" @@ -337,23 +364,26 @@ icon_state = "pumpkinspicecakeslice" tastes = list("cake" = 5, "sweetness" = 1, "pumpkin" = 1) foodtypes = GRAIN | DAIRY | VEGETABLES | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 -/obj/item/food/cake/bsvc // blackberry strawberries vanilla cake +/obj/item/food/cake/berry_vanilla_cake // blackberry strawberries vanilla cake name = "blackberry and strawberry vanilla cake" desc = "A plain cake, filled with assortment of blackberries and strawberries!" icon_state = "blackberry_strawberries_cake_vanilla_cake" tastes = list("blackberry" = 2, "strawberries" = 2, "vanilla" = 2, "sweetness" = 2, "cake" = 3) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR - slice_type = /obj/item/food/cakeslice/bsvc + slice_type = /obj/item/food/cakeslice/berry_vanilla_cake + crafting_complexity = FOOD_COMPLEXITY_3 -/obj/item/food/cakeslice/bsvc +/obj/item/food/cakeslice/berry_vanilla_cake name = "blackberry and strawberry vanilla cake slice" desc = "Just a slice of cake filled with assortment of blackberries and strawberries!" icon_state = "blackberry_strawberries_cake_vanilla_slice" tastes = list("blackberry" = 2, "strawberries" = 2, "vanilla" = 2, "sweetness" = 2,"cake" = 3) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 -/obj/item/food/cake/bscc // blackbarry strawberries chocolate cake <- this is a relic from before resprite +/obj/item/food/cake/berry_chocolate_cake // blackbarry strawberries chocolate cake <- this is a relic from before resprite name = "strawberry chocolate cake" desc = "A chocolate cake with five strawberries on top. For some reason, this configuration of cake is particularly aesthetically pleasing to AIs in SELF." icon_state = "liars_cake" @@ -364,14 +394,16 @@ ) tastes = list("blackberry" = 2, "strawberries" = 2, "chocolate" = 4, "sweetness" = 2,"cake" = 3) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR - slice_type = /obj/item/food/cakeslice/bscc + slice_type = /obj/item/food/cakeslice/berry_chocolate_cake + crafting_complexity = FOOD_COMPLEXITY_4 -/obj/item/food/cakeslice/bscc +/obj/item/food/cakeslice/berry_chocolate_cake name = "strawberry chocolate cake slice" desc = "Just a slice of cake with five strawberries on top. For some reason, this configuration of cake is particularly aesthetically pleasing to AIs in SELF." //yes, I know the one referenced has cherries, but I'm not implementing a new cake today. icon_state = "liars_slice" tastes = list("strawberries" = 2, "chocolate" = 2, "sweetness" = 2,"cake" = 3) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/cake/holy_cake name = "angel food cake" @@ -385,6 +417,7 @@ tastes = list("cake" = 5, "sweetness" = 1, "clouds" = 1) foodtypes = GRAIN | DAIRY | SUGAR slice_type = /obj/item/food/cakeslice/holy_cake_slice + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cakeslice/holy_cake_slice name = "angel food cake slice" @@ -392,6 +425,7 @@ icon_state = "holy_cake_slice" tastes = list("cake" = 5, "sweetness" = 1, "clouds" = 1) foodtypes = GRAIN | DAIRY | SUGAR + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cake/pound_cake name = "pound cake" @@ -405,6 +439,7 @@ foodtypes = GRAIN | DAIRY | SUGAR | JUNKFOOD slice_type = /obj/item/food/cakeslice/pound_cake_slice yield = 10 //cause its so damn THICC (seriously these things are fucking huge a pound of each ingredient are you kidding) + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cakeslice/pound_cake_slice name = "pound cake slice" @@ -416,6 +451,7 @@ ) tastes = list("cake" = 5, "sweetness" = 5, "batter" = 1) foodtypes = GRAIN | DAIRY | SUGAR | JUNKFOOD + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cake/hardware_cake name = "hardware cake" @@ -430,6 +466,7 @@ tastes = list("acid" = 3, "metal" = 4, "glass" = 5) foodtypes = GRAIN | GROSS slice_type = /obj/item/food/cakeslice/hardware_cake_slice + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/hardware_cake_slice name = "hardware cake slice" @@ -443,6 +480,7 @@ ) tastes = list("acid" = 3, "metal" = 4, "glass" = 5) foodtypes = GRAIN | GROSS + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/vanilla_cake name = "vanilla cake" @@ -457,6 +495,7 @@ tastes = list("cake" = 1, "sugar" = 1, "vanilla" = 10) foodtypes = GRAIN | SUGAR | DAIRY slice_type = /obj/item/food/cakeslice/vanilla_slice + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/vanilla_slice name = "vanilla cake slice" @@ -470,6 +509,7 @@ ) tastes = list("cake" = 1, "sugar" = 1, "vanilla" = 10) foodtypes = GRAIN | SUGAR | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/clown_cake name = "clown cake" @@ -483,6 +523,7 @@ tastes = list("cake" = 1, "sugar" = 1, "joy" = 10) foodtypes = GRAIN | SUGAR | DAIRY slice_type = /obj/item/food/cakeslice/clown_slice + crafting_complexity = FOOD_COMPLEXITY_5 /obj/item/food/cakeslice/clown_slice name = "clown cake slice" @@ -495,6 +536,7 @@ ) tastes = list("cake" = 1, "sugar" = 1, "joy" = 10) foodtypes = GRAIN | SUGAR | DAIRY + crafting_complexity = FOOD_COMPLEXITY_5 /obj/item/food/cake/trumpet name = "spaceman's cake" @@ -524,6 +566,7 @@ ) tastes = list("cake" = 4, "violets" = 2, "jam" = 2) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/cake/brioche name = "brioche cake" @@ -533,11 +576,13 @@ foodtypes = GRAIN | DAIRY | SUGAR slice_type = /obj/item/food/cakeslice/brioche yield = 6 + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cakeslice/brioche name = "brioche cake slice" desc = "Delicious sweet-bread. Who needs anything else?" icon_state = "briochecake_slice" + crafting_complexity = FOOD_COMPLEXITY_2 /* /obj/item/food/cake/pavlova @@ -547,11 +592,13 @@ tastes = list("meringue" = 5, "creaminess" = 1, "berries" = 1) foodtypes = DAIRY | FRUIT | SUGAR slice_type = /obj/item/food/cakeslice/pavlova + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cake/pavlova/nuts name = "pavlova with nuts" foodtypes = NUTS | FRUIT | SUGAR slice_type = /obj/item/food/cakeslice/pavlova/nuts + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/cakeslice/pavlova name = "pavlova slice" @@ -560,9 +607,11 @@ icon_state = "pavlova_slice" tastes = list("meringue" = 5, "creaminess" = 1, "berries" = 1) foodtypes = DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/pavlova/nuts foodtypes = NUTS | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/cake/fruit name = "english fruitcake" @@ -578,6 +627,7 @@ throwforce = 7 foodtypes = GRAIN | DAIRY | FRUIT | SUGAR slice_type = /obj/item/food/cakeslice/fruit + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/fruit name = "english fruitcake slice" @@ -588,6 +638,7 @@ force = 2 throwforce = 2 foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/fruit/Initialize(mapload) . = ..() @@ -606,6 +657,7 @@ foodtypes = GRAIN | DAIRY | FRUIT | SUGAR venue_value = FOOD_PRICE_CHEAP slice_type = /obj/item/food/cakeslice/plum + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cakeslice/plum name = "plum cake slice" @@ -613,4 +665,5 @@ icon_state = "plumcakeslice" tastes = list("cake" = 5, "sweetness" = 1, "plum" = 2) foodtypes = GRAIN | DAIRY | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 */ diff --git a/code/game/objects/items/food/cheese.dm b/code/game/objects/items/food/cheese.dm index 7e65ca2507471..bddd527ad4065 100644 --- a/code/game/objects/items/food/cheese.dm +++ b/code/game/objects/items/food/cheese.dm @@ -4,6 +4,7 @@ tastes = list("cheese" = 1) food_reagents = list(/datum/reagent/consumable/nutriment/protein = 3) foodtypes = DAIRY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/cheese/wheel @@ -16,6 +17,7 @@ /datum/reagent/consumable/nutriment/vitamin = 5, ) //Hard cheeses contain about 25% protein w_class = WEIGHT_CLASS_NORMAL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/cheese/wedge name = "cheese wedge" @@ -27,6 +29,7 @@ /datum/reagent/consumable/nutriment/vitamin = 1, ) w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/cheese/wheel/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/donkpockets.dm b/code/game/objects/items/food/donkpockets.dm index f9239adc576a6..b1c20523aacb9 100644 --- a/code/game/objects/items/food/donkpockets.dm +++ b/code/game/objects/items/food/donkpockets.dm @@ -28,13 +28,13 @@ icon_state = "donkpocket" microwaved_type = /obj/item/food/donkpocket/warm food_reagents = list( - /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/nutriment = 4 ) tastes = list("meat" = 2, "dough" = 2, "laziness" = 1) foodtypes = GRAIN food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /// The lower end for how long it takes to bake var/baking_time_short = 25 SECONDS @@ -50,8 +50,7 @@ desc = "The heated food of choice for the seasoned traitor." food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/medicine/omnizine = 3, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/medicine/omnizine = 3 ) tastes = list("meat" = 2, "dough" = 2, "laziness" = 1) foodtypes = GRAIN @@ -72,11 +71,11 @@ food_reagents = list( /datum/reagent/drug/space_drugs = 2, /datum/reagent/toxin/lipolicide = 3, - /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/nutriment = 4 ) tastes = list("meat" = 2, "dough" = 2) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/donkpocket/warm/dankpocket name = "warm Dank-pocket" @@ -86,8 +85,7 @@ /datum/reagent/medicine/omnizine = 1, /datum/reagent/drug/space_drugs = 2, /datum/reagent/toxin/lipolicide = 3, - /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/nutriment = 4 ) tastes = list("meat" = 2, "dough" = 2) foodtypes = GRAIN | VEGETABLES @@ -98,11 +96,11 @@ icon_state = "donkpocketspicy" food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/capsaicin = 2, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/capsaicin = 2 ) tastes = list("meat" = 2, "dough" = 2, "spice" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 microwaved_type = /obj/item/food/donkpocket/warm/spicy @@ -113,11 +111,11 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1, - /datum/reagent/consumable/capsaicin = 5, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/capsaicin = 5 ) tastes = list("meat" = 2, "dough" = 2, "weird spices" = 2) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/donkpocket/teriyaki name = "\improper Teriyaki-pocket" @@ -125,11 +123,11 @@ icon_state = "donkpocketteriyaki" food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/soysauce = 2, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/soysauce = 2 ) tastes = list("meat" = 2, "dough" = 2, "soy sauce" = 2) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 microwaved_type = /obj/item/food/donkpocket/warm/teriyaki @@ -140,8 +138,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1, - /datum/reagent/consumable/soysauce = 2, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/soysauce = 2 ) tastes = list("meat" = 2, "dough" = 2, "soy sauce" = 2) foodtypes = GRAIN @@ -152,11 +149,11 @@ icon_state = "donkpocketpizza" food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/tomatojuice = 2, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/tomatojuice = 2 ) tastes = list("meat" = 2, "dough" = 2, "cheese"= 2) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 microwaved_type = /obj/item/food/donkpocket/warm/pizza @@ -167,8 +164,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1, - /datum/reagent/consumable/tomatojuice = 2, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/tomatojuice = 2 ) tastes = list("meat" = 2, "dough" = 2, "melty cheese"= 2) foodtypes = GRAIN @@ -179,11 +175,11 @@ icon_state = "donkpocketbanana" food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/banana = 4, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/banana = 4 ) tastes = list("banana" = 2, "dough" = 2, "children's antibiotics" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 microwaved_type = /obj/item/food/donkpocket/warm/honk @@ -195,8 +191,7 @@ /datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1, /datum/reagent/consumable/banana = 4, - /datum/reagent/consumable/laughter = 6, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/laughter = 6 ) tastes = list("banana" = 2, "dough" = 2, "children's antibiotics" = 1) foodtypes = GRAIN @@ -207,11 +202,11 @@ icon_state = "donkpocketberry" food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/berryjuice = 3, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/berryjuice = 3 ) tastes = list("dough" = 2, "jam" = 2) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 microwaved_type = /obj/item/food/donkpocket/warm/berry @@ -222,8 +217,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1, - /datum/reagent/consumable/berryjuice = 3, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/berryjuice = 3 ) tastes = list("dough" = 2, "warm jam" = 2) foodtypes = GRAIN @@ -234,11 +228,11 @@ icon_state = "donkpocketgondola" food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/tranquility = 5, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/tranquility = 5 ) tastes = list("meat" = 2, "dough" = 2, "inner peace" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 microwaved_type = /obj/item/food/donkpocket/warm/gondola @@ -249,8 +243,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 4, /datum/reagent/medicine/omnizine = 1, - /datum/reagent/tranquility = 10, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/tranquility = 10 ) tastes = list("meat" = 2, "dough" = 2, "inner peace" = 1) foodtypes = GRAIN diff --git a/code/game/objects/items/food/donuts.dm b/code/game/objects/items/food/donuts.dm index 8a454957b507c..39143b373f0ac 100644 --- a/code/game/objects/items/food/donuts.dm +++ b/code/game/objects/items/food/donuts.dm @@ -7,9 +7,10 @@ bite_consumption = 5 food_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/sugar = 3) tastes = list("donut" = 1) - foodtypes = JUNKFOOD | GRAIN | FRIED | SUGAR | BREAKFAST + foodtypes = JUNKFOOD | GRAIN | SUGAR | BREAKFAST food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 var/decorated_icon = "donut_homer" var/is_decorated = FALSE var/extra_reagent = null @@ -50,7 +51,7 @@ return "[icon_state]_inbox" ///Override for checkliked in edible component, because all cops LOVE donuts -/obj/item/food/donut/proc/check_liked(fraction, mob/living/carbon/human/H) +/obj/item/food/donut/proc/check_liked(mob/living/carbon/human/H) if(HAS_TRAIT(H.mind, TRAIT_LAW_ENFORCEMENT_METABOLISM) && !HAS_TRAIT(H, TRAIT_AGEUSIA)) return FOOD_LIKED @@ -66,8 +67,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/sprinkles = 1, - /datum/reagent/consumable/sugar = 2, - /datum/reagent/consumable/maltodextrin = 3.65 + /datum/reagent/consumable/sugar = 2 ) /obj/item/food/donut/chaos @@ -77,6 +77,7 @@ bite_consumption = 10 tastes = list("donut" = 3, "chaos" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/chaos/Initialize(mapload) . = ..() @@ -106,6 +107,7 @@ tastes = list("meat" = 1) foodtypes = JUNKFOOD | MEAT | GORE | FRIED | BREAKFAST is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/berry name = "pink donut" @@ -118,6 +120,7 @@ /datum/reagent/consumable/sprinkles = 1 ) //Extra sprinkles to reward frosting decorated_icon = "donut_homer" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/trumpet name = "spaceman's donut" @@ -130,6 +133,7 @@ ) tastes = list("donut" = 3, "violets" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/apple name = "apple donut" @@ -143,6 +147,7 @@ ) tastes = list("donut" = 3, "green apples" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/caramel name = "caramel donut" @@ -156,6 +161,7 @@ ) tastes = list("donut" = 3, "buttery sweetness" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/choco name = "chocolate donut" @@ -169,6 +175,7 @@ ) //the cocoa reagent is just bitter. tastes = list("donut" = 4, "bitterness" = 1) decorated_icon = "donut_choc_sprinkles" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/blumpkin name = "blumpkin donut" @@ -182,6 +189,7 @@ ) tastes = list("donut" = 2, "blumpkin" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/bungo name = "bungo donut" @@ -195,6 +203,7 @@ ) tastes = list("donut" = 3, "tropical sweetness" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/matcha name = "matcha donut" @@ -203,6 +212,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/sugar = 3, /datum/reagent/toxin/teapowder = 3, /datum/reagent/consumable/sprinkles = 1) tastes = list("donut" = 3, "matcha" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 //////////////////////JELLY DONUTS///////////////////////// @@ -219,7 +229,8 @@ ) extra_reagent = /datum/reagent/consumable/berryjuice tastes = list("jelly" = 1, "donut" = 3) - foodtypes = JUNKFOOD | GRAIN | FRIED | FRUIT | SUGAR | BREAKFAST + foodtypes = JUNKFOOD | GRAIN | FRUIT | SUGAR | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_3 // Jelly donuts don't have holes, but look the same on the outside /obj/item/food/donut/jelly/in_box_sprite() @@ -244,6 +255,7 @@ /datum/reagent/consumable/nutriment/vitamin = 1 ) //Extra sprinkles to reward frosting. decorated_icon = "jelly_homer" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/trumpet name = "spaceman's jelly donut" @@ -257,6 +269,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "violets" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/apple name = "apple jelly donut" @@ -271,6 +284,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "green apples" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/caramel name = "caramel jelly donut" @@ -285,6 +299,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "buttery sweetness" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/choco name = "chocolate jelly donut" @@ -299,6 +314,7 @@ ) //the coco reagent is just bitter. tastes = list("jelly" = 1, "donut" = 4, "bitterness" = 1) decorated_icon = "jelly_choc_sprinkles" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/blumpkin name = "blumpkin jelly donut" @@ -313,6 +329,7 @@ ) tastes = list("jelly" = 1, "donut" = 2, "blumpkin" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/bungo name = "bungo jelly donut" @@ -327,6 +344,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "tropical sweetness" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/matcha name = "matcha jelly donut" @@ -341,6 +359,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "matcha" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 //////////////////////////SLIME DONUTS///////////////////////// @@ -349,7 +368,7 @@ desc = "You jelly?" icon_state = "jelly" extra_reagent = /datum/reagent/toxin/slimejelly - foodtypes = JUNKFOOD | GRAIN | FRIED | TOXIC | SUGAR | BREAKFAST + foodtypes = JUNKFOOD | GRAIN | TOXIC | SUGAR | BREAKFAST /obj/item/food/donut/jelly/slimejelly/plain @@ -364,6 +383,7 @@ /datum/reagent/consumable/sprinkles = 1, /datum/reagent/consumable/nutriment/vitamin = 1 ) //Extra sprinkles to reward frosting + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/slimejelly/trumpet name = "spaceman's jelly donut" @@ -377,6 +397,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "violets" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/slimejelly/apple name = "apple jelly donut" @@ -405,6 +426,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "buttery sweetness" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/slimejelly/choco name = "chocolate jelly donut" @@ -419,6 +441,7 @@ ) //the cocoa reagent is just bitter. tastes = list("jelly" = 1, "donut" = 4, "bitterness" = 1) decorated_icon = "jelly_choc_sprinkles" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/slimejelly/blumpkin name = "blumpkin jelly donut" @@ -433,6 +456,7 @@ ) tastes = list("jelly" = 1, "donut" = 2, "blumpkin" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/slimejelly/bungo name = "bungo jelly donut" @@ -447,6 +471,7 @@ ) tastes = list("jelly" = 1, "donut" = 3, "tropical sweetness" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/donut/jelly/slimejelly/matcha name = "matcha jelly donut" @@ -461,5 +486,6 @@ ) tastes = list("jelly" = 1, "donut" = 3, "matcha" = 1) is_decorated = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 #undef DONUT_SPRINKLE_CHANCE diff --git a/code/game/objects/items/food/dough.dm b/code/game/objects/items/food/dough.dm index eb75bd42f74a2..0fbd7734bb5e5 100644 --- a/code/game/objects/items/food/dough.dm +++ b/code/game/objects/items/food/dough.dm @@ -8,6 +8,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 6) tastes = list("dough" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_0 /obj/item/food/dough/make_bakeable() AddComponent(/datum/component/bakeable, /obj/item/food/bread/plain, rand(30 SECONDS, 45 SECONDS), TRUE, TRUE) @@ -24,6 +25,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 6) tastes = list("dough" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_0 /obj/item/food/flatdough/make_bakeable() AddComponent(/datum/component/bakeable, /obj/item/food/pizzabread, rand(30 SECONDS, 45 SECONDS), TRUE, TRUE) @@ -40,6 +42,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 7) tastes = list("bread" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/pizzabread/Initialize(mapload) . = ..() @@ -54,6 +57,7 @@ w_class = WEIGHT_CLASS_SMALL tastes = list("dough" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_0 /obj/item/food/doughslice/make_bakeable() AddComponent(/datum/component/bakeable, /obj/item/food/bun, rand(20 SECONDS, 25 SECONDS), TRUE, TRUE) @@ -67,6 +71,7 @@ w_class = WEIGHT_CLASS_SMALL tastes = list("bun" = 1) // the bun tastes of bun. foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_0 /obj/item/food/bun/Initialize(mapload) . = ..() @@ -80,6 +85,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 9) tastes = list("batter" = 1) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/cakebatter/make_bakeable() AddComponent(/datum/component/bakeable, /obj/item/food/cake/plain, rand(70 SECONDS, 90 SECONDS), TRUE, TRUE) @@ -96,6 +102,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 9) tastes = list("dough" = 1) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/piedough/make_bakeable() AddComponent(/datum/component/bakeable, /obj/item/food/pie/plain, rand(30 SECONDS, 45 SECONDS), TRUE, TRUE) @@ -112,6 +119,7 @@ w_class = WEIGHT_CLASS_SMALL tastes = list("raw pastry" = 1) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/rawpastrybase/make_bakeable() AddComponent(/datum/component/bakeable, /obj/item/food/pastrybase, rand(20 SECONDS, 25 SECONDS), TRUE, TRUE) @@ -125,3 +133,4 @@ w_class = WEIGHT_CLASS_SMALL tastes = list("pastry" = 1) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_2 diff --git a/code/game/objects/items/food/egg.dm b/code/game/objects/items/food/egg.dm index f5a1e479812fa..74a17b06cd12f 100644 --- a/code/game/objects/items/food/egg.dm +++ b/code/game/objects/items/food/egg.dm @@ -15,6 +15,7 @@ foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/egg name = "egg" @@ -27,6 +28,7 @@ microwaved_type = /obj/item/food/boiledegg foodtypes = MEAT | RAW w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_1 /* /obj/item/food/egg/make_microwaveable() @@ -100,6 +102,7 @@ bite_consumption = 1 tastes = list("egg" = 4, "salt" = 1, "pepper" = 1) foodtypes = MEAT | FRIED | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/boiledegg name = "boiled egg" @@ -114,6 +117,7 @@ foodtypes = MEAT | BREAKFAST food_flags = FOOD_FINGER_FOOD // pretty sure I've seen people pop these in their mouths... right? w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/omelette //FUCK THIS name = "omelette du fromage" @@ -128,6 +132,8 @@ w_class = WEIGHT_CLASS_SMALL tastes = list("egg" = 1, "cheese" = 1) foodtypes = MEAT | BREAKFAST | DAIRY //yeah, I say this just about reaches the threshold of dairy foodgroup + crafting_complexity = FOOD_COMPLEXITY_2 + crafted_food_buff = /datum/status_effect/food/speech/french /obj/item/food/omelette/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/kitchen/fork)) @@ -160,6 +166,7 @@ w_class = WEIGHT_CLASS_SMALL tastes = list("egg" = 1, "bacon" = 1, "bun" = 1) foodtypes = MEAT | BREAKFAST | GRAIN + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/eggwrap name = "egg wrap" @@ -174,6 +181,7 @@ tastes = list("egg" = 1) foodtypes = MEAT | VEGETABLES w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/chawanmushi name = "chawanmushi" @@ -187,3 +195,4 @@ ) tastes = list("custard" = 1) foodtypes = MEAT | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_3 diff --git a/code/game/objects/items/food/frozen.dm b/code/game/objects/items/food/frozen.dm index ccec83065a083..16a7075d07d83 100644 --- a/code/game/objects/items/food/frozen.dm +++ b/code/game/objects/items/food/frozen.dm @@ -11,6 +11,7 @@ tastes = list("ice cream" = 1) foodtypes = GRAIN | DAIRY | SUGAR food_flags = FOOD_FINGER_FOOD + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/strawberryicecreamsandwich name = "strawberry ice cream sandwich" @@ -25,6 +26,7 @@ tastes = list("ice cream" = 2, "berry" = 2) foodtypes = FRUIT | DAIRY | SUGAR food_flags = FOOD_FINGER_FOOD + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/spacefreezy @@ -40,6 +42,7 @@ ) tastes = list("blue cherries" = 2, "ice cream" = 2) foodtypes = FRUIT | DAIRY | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/sundae name = "sundae" @@ -54,6 +57,7 @@ ) tastes = list("ice cream" = 1, "banana" = 1) foodtypes = FRUIT | DAIRY | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/honkdae name = "honkdae" @@ -68,6 +72,7 @@ ) tastes = list("ice cream" = 1, "banana" = 1, "a bad joke" = 1) foodtypes = FRUIT | DAIRY | SUGAR + crafting_complexity = FOOD_COMPLEXITY_4 ///////////// //SNOWCONES// @@ -86,6 +91,7 @@ tastes = list("ice" = 1, "water" = 1) foodtypes = SUGAR //We use SUGAR as a base line to act in as junkfood, other wise we use fruit food_flags = FOOD_FINGER_FOOD + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/snowcones/lime name = "lime snowcone" @@ -280,6 +286,7 @@ ) tastes = list("ice" = 1, "water" = 1, "flowers" = 5, "sweetness" = 5, "wax" = 1) foodtypes = SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/snowcones/rainbow name = "rainbow snowcone" @@ -292,3 +299,4 @@ ) tastes = list("ice" = 1, "water" = 1, "sunlight" = 5, "light" = 5, "slime" = 5, "paint" = 3, "clouds" = 3) foodtypes = SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 diff --git a/code/game/objects/items/food/meatdish.dm b/code/game/objects/items/food/meatdish.dm index 23226ece4f125..dce4a09323355 100644 --- a/code/game/objects/items/food/meatdish.dm +++ b/code/game/objects/items/food/meatdish.dm @@ -18,6 +18,7 @@ tastes = list("fish" = 4, "batter" = 1, "hot peppers" = 1) foodtypes = MEAT | FRIED w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/fishmeat name = "fish fillet" @@ -33,6 +34,7 @@ foodtypes = MEAT eatverbs = list("bite", "chew", "gnaw", "swallow", "chomp") w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/fishmeat/carp name = "carp fillet" @@ -62,6 +64,7 @@ tastes = list("fish" = 1, "breadcrumbs" = 1) foodtypes = MEAT | FRIED w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/fishandchips name = "fish and chips" @@ -75,6 +78,7 @@ ) tastes = list("fish" = 1, "chips" = 1) foodtypes = MEAT | VEGETABLES | FRIED + crafting_complexity = FOOD_COMPLEXITY_2 /* /obj/item/food/fishfry @@ -86,6 +90,7 @@ tastes = list("fish" = 1, "pan seared vegtables" = 1) foodtypes = SEAFOOD | VEGETABLES | FRIED w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/fishtaco name = "fish taco" @@ -95,6 +100,7 @@ tastes = list("taco" = 4, "fish" = 2, "cheese" = 2, "cabbage" = 1) foodtypes = SEAFOOD | DAIRY | GRAIN | VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 */ ////////////////////////////////////////////MEATS AND ALIKE//////////////////////////////////////////// @@ -109,12 +115,14 @@ tastes = list("tofu" = 1) foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/tofu/prison name = "soggy tofu" desc = "You refuse to eat this strange bean curd." tastes = list("sour, rotten water" = 1) foodtypes = GROSS + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spiderleg name = "spider leg" @@ -129,6 +137,7 @@ tastes = list("cobwebs" = 1) foodtypes = MEAT | TOXIC w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spiderleg/make_grillable() AddComponent(/datum/component/grillable, /obj/item/food/boiledspiderleg, rand(50 SECONDS, 60 SECONDS), TRUE, TRUE) @@ -146,6 +155,7 @@ tastes = list("meat" = 1, "cabbage" = 1) foodtypes = MEAT | VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/bearsteak name = "Filet migrawr" @@ -160,6 +170,7 @@ tastes = list("meat" = 1, "salmon" = 1) foodtypes = MEAT | ALCOHOL w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 //Raw @@ -174,6 +185,7 @@ w_class = WEIGHT_CLASS_SMALL var/meatball_type = /obj/item/food/meatball var/patty_type = /obj/item/food/raw_patty + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/raw_meatball/make_grillable() AddComponent(/datum/component/grillable, meatball_type, rand(30 SECONDS, 40 SECONDS), TRUE) @@ -220,6 +232,7 @@ foodtypes = MEAT food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/meatball/human name = "strange meatball" @@ -250,6 +263,7 @@ foodtypes = MEAT | RAW w_class = WEIGHT_CLASS_SMALL var/patty_type = /obj/item/food/patty/plain + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/raw_patty/make_grillable() AddComponent(/datum/component/grillable, patty_type, rand(30 SECONDS, 40 SECONDS), TRUE) @@ -286,6 +300,7 @@ tastes = list("meat" = 1) foodtypes = MEAT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 ///Exists purely for the crafting recipe (because itll take subtypes) /obj/item/food/patty/plain @@ -319,6 +334,7 @@ foodtypes = MEAT | RAW eatverbs = list("bite","chew","nibble","gobble","chomp") w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/raw_sausage/make_grillable() AddComponent(/datum/component/grillable, /obj/item/food/sausage, rand(60 SECONDS, 75 SECONDS), TRUE) @@ -338,6 +354,7 @@ eatverbs = list("bite", "chew", "nibble", "gobble", "chomp") w_class = WEIGHT_CLASS_SMALL var/roasted = FALSE + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/sausage/make_processable() AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/salami, 6, 3 SECONDS, table_required = TRUE,/* screentip_verb = "Slice"*/) @@ -363,6 +380,7 @@ foodtypes = MEAT food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/rawkhinkali name = "raw khinkali" @@ -378,6 +396,7 @@ tastes = list("meat" = 1, "onions" = 1, "garlic" = 1) foodtypes = MEAT | RAW w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/rawkhinkali/make_grillable() AddComponent(/datum/component/grillable, /obj/item/food/khinkali, rand(50 SECONDS, 60 SECONDS), TRUE) @@ -397,6 +416,7 @@ tastes = list("meat" = 1, "onions" = 1, "garlic" = 1) foodtypes = MEAT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/meatbun name = "meat bun" @@ -410,6 +430,7 @@ tastes = list("bun" = 3, "meat" = 2) foodtypes = GRAIN | MEAT | VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/stewedsoymeat name = "stewed soy meat" @@ -424,6 +445,7 @@ eatverbs = list("slurp", "sip", "inhale", "drink") foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/boiledspiderleg name = "boiled spider leg" @@ -438,6 +460,7 @@ tastes = list("hot peppers" = 1, "cobwebs" = 1) foodtypes = MEAT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/spidereggsham name = "green eggs and ham" @@ -452,6 +475,7 @@ tastes = list("meat" = 1, "the colour green" = 1) foodtypes = MEAT | BREAKFAST w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/sashimi name = "carp sashimi" @@ -466,6 +490,7 @@ tastes = list("fish" = 1, "hot peppers" = 1) foodtypes = MEAT w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/nugget name = "chicken nugget" @@ -480,6 +505,7 @@ foodtypes = MEAT food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/nugget/Initialize(mapload) . = ..() @@ -500,6 +526,7 @@ tastes = list("meat" = 1, "butter" = 1) foodtypes = MEAT | DAIRY | GRAIN w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/bbqribs name = "bbq ribs" @@ -514,6 +541,7 @@ ) tastes = list("meat" = 3, "smokey sauce" = 1) foodtypes = MEAT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/meatclown name = "meat clown" @@ -527,6 +555,7 @@ ) tastes = list("meat" = 5, "clowns" = 3, "sixteen teslas" = 1) w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/meatclown/Initialize(mapload) . = ..() @@ -544,6 +573,7 @@ ) tastes = list("meat" = 3, "metal" = 1) w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/kebab/human name = "human-kebab" @@ -614,3 +644,4 @@ /datum/reagent/consumable/nutriment/vitamin = 6, /datum/reagent/consumable/capsaicin = 3 ) + crafting_complexity = FOOD_COMPLEXITY_3 diff --git a/code/game/objects/items/food/meatslab.dm b/code/game/objects/items/food/meatslab.dm index b3ffa37c0309a..026e4c1d90d21 100644 --- a/code/game/objects/items/food/meatslab.dm +++ b/code/game/objects/items/food/meatslab.dm @@ -12,8 +12,9 @@ //dried_type = /obj/item/food//sosjerky/healthy bite_consumption = 3 food_reagents = list( - /datum/reagent/consumable/nutriment/protein = 6, - /datum/reagent/consumable/cooking_oil = 2 + /datum/reagent/consumable/nutriment/protein = 5, + /datum/reagent/consumable/nutriment/fat = 2, + /datum/reagent/consumable/nutriment/vitamin = 1 ) //Meat has fats that a food processor can process into cooking oil tastes = list("meat" = 1) foodtypes = MEAT | RAW @@ -206,7 +207,7 @@ /datum/reagent/consumable/nutriment/protein = 16, /datum/reagent/medicine/morphine = 5, /datum/reagent/consumable/nutriment/vitamin = 2, - /datum/reagent/consumable/cooking_oil = 6 + /datum/reagent/consumable/nutriment/fat = 6 ) tastes = list("meat" = 1, "salmon" = 1) foodtypes = RAW | MEAT @@ -259,7 +260,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment/protein = 5, /datum/reagent/toxin = 5, - /datum/reagent/consumable/cooking_oil = 3 + /datum/reagent/consumable/nutriment/fat = 3 ) icon_state = "goliathmeat" tastes = list("meat" = 1) @@ -277,7 +278,7 @@ /datum/reagent/consumable/nutriment/protein = 4, /datum/reagent/consumable/nutriment/vitamin = 2, /datum/reagent/blood = 5, - /datum/reagent/consumable/cooking_oil = 1 + /datum/reagent/consumable/nutriment/fat = 1 ) icon_state = "meatwheat_clump" bite_consumption = 4 @@ -290,7 +291,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment/protein = 7, /datum/reagent/consumable/nutriment/vitamin = 1, - /datum/reagent/consumable/cooking_oil = 5 //Plenty of fat! + /datum/reagent/consumable/nutriment/fat = 5 //Plenty of fat! ) /obj/item/food/meat/rawbacon @@ -300,10 +301,11 @@ bite_consumption = 2 food_reagents = list( /datum/reagent/consumable/nutriment/protein = 2, - /datum/reagent/consumable/cooking_oil = 3 + /datum/reagent/consumable/nutriment/fat = 3 ) tastes = list("bacon" = 1) foodtypes = RAW | MEAT | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/meat/rawbacon/make_grillable() AddComponent(/datum/component/grillable, /obj/item/food/meat/bacon, rand(25 SECONDS, 45 SECONDS), TRUE, TRUE) @@ -315,10 +317,11 @@ food_reagents = list( /datum/reagent/consumable/nutriment/protein = 2, /datum/reagent/consumable/nutriment/vitamin = 1, - /datum/reagent/consumable/cooking_oil = 2 + /datum/reagent/consumable/nutriment/fat = 2 ) tastes = list("bacon" = 1) foodtypes = MEAT | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/meat/slab/gondola name = "gondola meat" @@ -326,7 +329,7 @@ food_reagents = list( /datum/reagent/consumable/nutriment/protein = 4, /datum/reagent/tranquility = 5, - /datum/reagent/consumable/cooking_oil = 3 + /datum/reagent/consumable/nutriment/fat = 3 ) tastes = list("meat" = 4, "tranquility" = 1) foodtypes = RAW | MEAT @@ -343,7 +346,7 @@ desc = "A slab of penguin meat." food_reagents = list( /datum/reagent/consumable/nutriment/protein = 4, - /datum/reagent/consumable/cooking_oil = 3 + /datum/reagent/consumable/nutriment/fat = 3 ) tastes = list("beef" = 1, "cod fish" = 1) @@ -362,7 +365,7 @@ bite_consumption = 3 food_reagents = list( /datum/reagent/consumable/nutriment/protein = 3, - /datum/reagent/consumable/cooking_oil = 3 + /datum/reagent/consumable/nutriment/fat = 3 ) tastes = list("raw crab" = 1) foodtypes = RAW | MEAT @@ -377,10 +380,11 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 2, - /datum/reagent/consumable/cooking_oil = 2 + /datum/reagent/consumable/nutriment/fat = 2 ) tastes = list("crab" = 1) foodtypes = MEAT + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/meat/slab/chicken name = "chicken meat" @@ -425,11 +429,13 @@ desc = "A piece of hot spicy meat." icon_state = "meatsteak" food_reagents = list( - /datum/reagent/consumable/nutriment/protein = 8, + /datum/reagent/consumable/nutriment/protein = 5, + /datum/reagent/consumable/nutriment/fat = 2, /datum/reagent/consumable/nutriment/vitamin = 1, ) foodtypes = MEAT tastes = list("meat" = 1) + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/meat/steak/Initialize(mapload) . = ..() @@ -679,6 +685,7 @@ ) tastes = list("meat" = 1) foodtypes = MEAT + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/meat/cutlet/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/mexican.dm b/code/game/objects/items/food/mexican.dm index 2bb7967fe262f..4175bc3963d2a 100644 --- a/code/game/objects/items/food/mexican.dm +++ b/code/game/objects/items/food/mexican.dm @@ -10,6 +10,7 @@ tastes = list("tortilla" = 1) foodtypes = GRAIN w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/burrito name = "burrito" @@ -23,6 +24,7 @@ tastes = list("tortilla" = 2, "beans" = 3) foodtypes = GRAIN w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cheesyburrito name = "cheesy burrito" @@ -36,6 +38,7 @@ tastes = list("tortilla" = 2, "beans" = 3, "cheese" = 1) foodtypes = GRAIN | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/carneburrito name = "carne asada burrito" @@ -50,6 +53,7 @@ tastes = list("tortilla" = 2, "meat" = 4) foodtypes = GRAIN | MEAT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/fuegoburrito name = "fuego plasma burrito" @@ -65,6 +69,7 @@ tastes = list("tortilla" = 2, "beans" = 3, "hot peppers" = 1) foodtypes = GRAIN w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/nachos name = "nachos" @@ -78,6 +83,7 @@ tastes = list("nachos" = 1) foodtypes = GRAIN | FRIED w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/cheesynachos name = "cheesy nachos" @@ -92,6 +98,7 @@ tastes = list("nachos" = 2, "cheese" = 1) foodtypes = GRAIN | FRIED | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cubannachos name = "Cuban nachos" @@ -106,6 +113,7 @@ tastes = list("nachos" = 2, "hot pepper" = 1) foodtypes = VEGETABLES | FRIED | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/taco name = "classic taco" @@ -120,6 +128,7 @@ tastes = list("taco" = 4, "meat" = 2, "cheese" = 2, "lettuce" = 1) foodtypes = MEAT | DAIRY | GRAIN | VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/taco/plain name = "plain taco" @@ -132,6 +141,7 @@ ) tastes = list("taco" = 4, "meat" = 2, "cheese" = 2) foodtypes = MEAT | DAIRY | GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/enchiladas name = "enchiladas" @@ -148,6 +158,7 @@ tastes = list("hot peppers" = 1, "meat" = 3, "cheese" = 1, "sour cream" = 1) foodtypes = MEAT | GRAIN w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/stuffedlegion name = "stuffed legion" @@ -162,3 +173,4 @@ tastes = list("death" = 2, "rock" = 1, "meat" = 1, "hot peppers" = 1) foodtypes = MEAT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_5 diff --git a/code/game/objects/items/food/misc.dm b/code/game/objects/items/food/misc.dm index 41b4692a2d694..bddf1955ba45b 100644 --- a/code/game/objects/items/food/misc.dm +++ b/code/game/objects/items/food/misc.dm @@ -11,7 +11,7 @@ tastes = list("watermelon" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_results = list(/datum/reagent/consumable/watermelonjuice = 5) + juice_results = /datum/reagent/consumable/watermelonjuice w_class = WEIGHT_CLASS_SMALL /obj/item/food/hugemushroomslice @@ -38,6 +38,7 @@ foodtypes = JUNKFOOD eatverbs = list("bite", "nibble", "gnaw", "gobble", "chomp") w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/soydope name = "soy dope" @@ -50,6 +51,7 @@ tastes = list("soy" = 1) foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/badrecipe name = "burned mess" @@ -93,6 +95,7 @@ tastes = list("cobwebs" = 1) foodtypes = MEAT | TOXIC// | BUGS w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/spiderling name = "spiderling" @@ -119,6 +122,7 @@ tastes = list("melon" = 1) foodtypes = FRUIT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/melonkeg name = "melon keg" @@ -133,6 +137,7 @@ bite_consumption = 5 tastes = list("grain alcohol" = 1, "fruit" = 1) foodtypes = FRUIT | ALCOHOL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/honeybar name = "honey nut bar" @@ -146,6 +151,7 @@ foodtypes = GRAIN | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/powercrepe name = "Powercrepe" @@ -170,6 +176,7 @@ w_class = WEIGHT_CLASS_BULKY tastes = list("cherry" = 1, "crepe" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_5 /obj/item/food/branrequests name = "Bran Requests Cereal" @@ -183,12 +190,13 @@ tastes = list("bran" = 4, "raisins" = 3, "salt" = 1) foodtypes = GRAIN | FRUIT | BREAKFAST w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/butter name = "stick of butter" desc = "A stick of delicious, golden, fatty goodness." icon_state = "butter" - food_reagents = list(/datum/reagent/consumable/nutriment = 5) + food_reagents = list(/datum/reagent/consumable/nutriment/fat = 5) tastes = list("butter" = 1) foodtypes = DAIRY w_class = WEIGHT_CLASS_SMALL @@ -228,12 +236,13 @@ tastes = list("batter" = 3, "onion" = 1) foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/pineappleslice name = "pineapple slice" desc = "A sliced piece of juicy pineapple." icon_state = "pineapple_slice" - juice_results = list(/datum/reagent/consumable/pineapplejuice = 3) + juice_results = /datum/reagent/consumable/pineapplejuice tastes = list("pineapple" = 1) foodtypes = FRUIT | PINEAPPLE w_class = WEIGHT_CLASS_TINY @@ -251,6 +260,7 @@ w_class = WEIGHT_CLASS_SMALL tastes = list("cream cheese" = 4, "crab" = 3, "crispiness" = 2) foodtypes = MEAT | DAIRY | GRAIN + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cornchips name = "boritos corn chips" @@ -260,7 +270,7 @@ bite_consumption = 2 food_reagents = list( /datum/reagent/consumable/nutriment = 3, - /datum/reagent/consumable/cooking_oil = 2, + /datum/reagent/consumable/nutriment/fat/oil = 2, /datum/reagent/consumable/sodiumchloride = 3 ) junkiness = 20 @@ -274,7 +284,7 @@ trash_type = /obj/item/c_tube food_reagents = list( /datum/reagent/consumable/nutriment = 6, - /datum/reagent/consumable/cooking_oil = 2, + /datum/reagent/consumable/nutriment/fat/oil = 2, /datum/reagent/consumable/sodiumchloride = 2 ) @@ -296,7 +306,7 @@ . = ..() AddComponent(/datum/component/edible, check_liked = CALLBACK(src, PROC_REF(check_liked))) -/obj/item/food/rationpack/proc/check_liked(fraction, mob/M) //Nobody likes rationpacks. Nobody. +/obj/item/food/rationpack/proc/check_liked(mob/M) //Nobody likes rationpacks. Nobody. return FOOD_DISLIKED @@ -312,6 +322,7 @@ tastes = list("rice" = 1, "dried seaweed" = 1) foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/onigiri/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/monkeycube.dm b/code/game/objects/items/food/monkeycube.dm index 22c431cf1a0a2..a2a13421d3c68 100644 --- a/code/game/objects/items/food/monkeycube.dm +++ b/code/game/objects/items/food/monkeycube.dm @@ -12,6 +12,7 @@ w_class = WEIGHT_CLASS_TINY var/faction var/spawned_mob = /mob/living/carbon/monkey + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/monkeycube/proc/Expand() if(GLOB.total_cube_monkeys >= CONFIG_GET(number/max_cube_monkeys)) diff --git a/code/game/objects/items/food/packaged.dm b/code/game/objects/items/food/packaged.dm index d5fa96e6a975c..c1aa86733b165 100644 --- a/code/game/objects/items/food/packaged.dm +++ b/code/game/objects/items/food/packaged.dm @@ -16,6 +16,7 @@ max_volume = 30 var/maint = FALSE var/maint_overlay = "" + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/canned/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/pancakes.dm b/code/game/objects/items/food/pancakes.dm index d7e06bacf8700..4c5bd7904d046 100644 --- a/code/game/objects/items/food/pancakes.dm +++ b/code/game/objects/items/food/pancakes.dm @@ -12,6 +12,7 @@ w_class = WEIGHT_CLASS_SMALL ///Used as a base name while generating the icon states when stacked var/stack_name = "pancakes" + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/pancakes/blueberry name = "blueberry pancake" @@ -23,6 +24,7 @@ ) tastes = list("pancakes" = 1, "blueberries" = 1) stack_name = "bbpancakes" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pancakes/chocolatechip name = "chocolate chip pancake" @@ -34,6 +36,7 @@ ) tastes = list("pancakes" = 1, "chocolate" = 1) stack_name = "ccpancakes" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pancakes/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/pastries.dm b/code/game/objects/items/food/pastries.dm index a4d5bcd6dca52..f4e0e2551a151 100644 --- a/code/game/objects/items/food/pastries.dm +++ b/code/game/objects/items/food/pastries.dm @@ -14,6 +14,7 @@ foodtypes = GRAIN | SUGAR | BREAKFAST food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/muffin/berry name = "berry muffin" @@ -21,6 +22,7 @@ desc = "A delicious and spongy little cake, with berries." tastes = list("muffin" = 3, "berry" = 1) foodtypes = GRAIN | FRUIT | SUGAR | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/muffin/booberry name = "booberry muffin" @@ -29,6 +31,7 @@ desc = "My stomach is a graveyard! No living being can quench my bloodthirst!" tastes = list("muffin" = 3, "spookiness" = 1) foodtypes = GRAIN | FRUIT | SUGAR | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/muffin/moffin name = "moffin" @@ -38,6 +41,7 @@ desc = "A delicious and spongy little cake." tastes = list("muffin" = 3, "dust" = 1, "lint" = 1) foodtypes = CLOTH | GRAIN | SUGAR | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/muffin/moffin/Initialize(mapload) . = ..() @@ -73,6 +77,7 @@ tastes = list("waffles" = 1) foodtypes = GRAIN | SUGAR | BREAKFAST w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/soylentgreen name = "\improper Soylent Green" @@ -88,6 +93,7 @@ // The wafers are supposed to be flavorful and nutritious in the movie. They shouldn't be gross in a dystopian future where the chef regularly feeds people from the morgue to you. foodtypes = GRAIN | MEAT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/soylenviridians name = "\improper Soylent Virdians" @@ -102,6 +108,7 @@ tastes = list("waffles" = 7, "the colour green" = 1) foodtypes = GRAIN w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/rofflewaffles name = "roffle waffles" @@ -117,6 +124,7 @@ tastes = list("waffles" = 1, "mushrooms" = 1) foodtypes = GRAIN | VEGETABLES | SUGAR | BREAKFAST w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 ////////////////////////////////////////////OTHER//////////////////////////////////////////// @@ -130,6 +138,7 @@ foodtypes = GRAIN | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cookie/Initialize(mapload) . = ..() @@ -144,6 +153,7 @@ foodtypes = GRAIN | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cookie/sugar name = "sugar cookie" @@ -155,6 +165,7 @@ ) tastes = list("sweetness" = 1) foodtypes = GRAIN | JUNKFOOD | SUGAR + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cookie/oatmeal name = "oatmeal cookie" @@ -166,6 +177,7 @@ ) tastes = list("cookie" = 2, "oat" = 1) foodtypes = GRAIN | BREAKFAST //these & raisin cookies were always served at breakfast at my university. Its basically breakfast in cookie + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cookie/raisin name = "raisin cookie" @@ -177,6 +189,7 @@ ) tastes = list("cookie" = 1, "raisins" = 1) foodtypes = GRAIN | FRUIT | BREAKFAST //these & oatmeal cookies were always served at breakfast at my university. Its basically breakfast in cookie + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/chococornet name = "chocolate cornet" @@ -189,6 +202,7 @@ tastes = list("biscuit" = 3, "chocolate" = 1) foodtypes = GRAIN | JUNKFOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/poppypretzel name = "poppy pretzel" @@ -215,6 +229,7 @@ foodtypes = GRAIN | VEGETABLES food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/plumphelmetbiscuit/Initialize(mapload) var/fey = prob(10) @@ -240,6 +255,7 @@ foodtypes = GRAIN food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/khachapuri name = "khachapuri" @@ -253,6 +269,7 @@ tastes = list("bread" = 1, "egg" = 1, "cheese" = 1) foodtypes = GRAIN | MEAT | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cherrycupcake name = "cherry cupcake" @@ -266,12 +283,28 @@ foodtypes = GRAIN | FRUIT | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cherrycupcake/blue name = "blue cherry cupcake" desc = "Blue cherries inside a delicious cupcake." icon_state = "bluecherrycupcake" tastes = list("cake" = 3, "blue cherry" = 1) + crafting_complexity = FOOD_COMPLEXITY_3 + +/obj/item/food/jupitercupcake + name = "jupiter-cup-cake" + desc = "A static dessert." + icon_state = "jupitercupcake" + food_reagents = list( + /datum/reagent/consumable/nutriment = 6, + /datum/reagent/consumable/nutriment/vitamin = 2, + /datum/reagent/consumable/caramel = 3, + /datum/reagent/consumable/liquidelectricity = 3, + ) + tastes = list("cake" = 3, "caramel" = 2, "zap" = 1) + crafting_complexity = FOOD_COMPLEXITY_3 + crafted_food_buff = /datum/status_effect/food/trait/shockimmune /obj/item/food/honeybun name = "honey bun" @@ -284,6 +317,7 @@ tastes = list("pastry" = 1, "sweetness" = 1) foodtypes = GRAIN | SUGAR w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/ravtart name = "Rav'tart" @@ -297,3 +331,4 @@ tastes = list("pastry" = 1, "sweetness" = 1) foodtypes = GRAIN | FRUIT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 diff --git a/code/game/objects/items/food/pie.dm b/code/game/objects/items/food/pie.dm index bfe688d0c3b31..ffc3b5d41ffca 100644 --- a/code/game/objects/items/food/pie.dm +++ b/code/game/objects/items/food/pie.dm @@ -10,6 +10,7 @@ ) tastes = list("pie" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /// type is spawned 5 at a time and replaces this pie when processed by cutting tool var/obj/item/food/pieslice/slice_type /// so that the yield can change if it isnt 5 @@ -26,6 +27,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 2) tastes = list("pie" = 1, "uncertainty" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/pie/plain name = "plain pie" @@ -37,6 +39,7 @@ ) tastes = list("pie" = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/pie/cream name = "banana cream pie" @@ -50,6 +53,7 @@ tastes = list("pie" = 1) foodtypes = GRAIN | DAIRY | SUGAR var/stunning = TRUE + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/cream/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) . = ..() @@ -118,6 +122,7 @@ slice_type = /obj/item/food/pieslice/berry tastes = list("pie" = 1, "blackberries" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/berry name = "berry clafoutis slice" @@ -125,6 +130,7 @@ icon_state = "berryclafoutis_slice" tastes = list("pie" = 1, "blackberries" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/bearypie name = "beary pie" @@ -138,6 +144,7 @@ slice_type = /obj/item/food/pieslice/beary tastes = list("pie" = 1, "meat" = 1, "salmon" = 1) foodtypes = GRAIN | SUGAR | MEAT | FRUIT // so weird + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pieslice/beary name = "beary pie slice" @@ -145,6 +152,7 @@ icon_state = "bearypie_slice" tastes = list("pie" = 1, "meat" = 1, "salmon" = 1) foodtypes = GRAIN | SUGAR | MEAT | FRUIT + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pie/meatpie name = "meat-pie" @@ -158,6 +166,7 @@ slice_type = /obj/item/food/pieslice/meat tastes = list("pie" = 1, "meat" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/meat name = "meat-pie slice" @@ -165,6 +174,7 @@ icon_state = "meatpie_slice" tastes = list("pie" = 1, "meat" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/tofupie name = "tofu-pie" @@ -178,6 +188,7 @@ slice_type = /obj/item/food/pieslice/tofu tastes = list("pie" = 1, "tofu" = 1) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/tofu name = "tofu-pie slice" @@ -185,6 +196,7 @@ icon_state = "meatpie_slice" tastes = list("pie" = 1, "tofu" = 1) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/amanita_pie name = "amanita pie" @@ -199,6 +211,7 @@ ) tastes = list("pie" = 1, "mushroom" = 1) foodtypes = GRAIN | VEGETABLES | TOXIC | GROSS + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/plump_pie name = "plump pie" @@ -210,6 +223,7 @@ ) tastes = list("pie" = 1, "mushroom" = 1) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/plump_pie/Initialize(mapload) var/fey = prob(10) @@ -235,6 +249,7 @@ slice_type = /obj/item/food/pieslice/xeno tastes = list("pie" = 1, "meat" = 1, "acid" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/xeno name = "xeno-pie slice" @@ -242,6 +257,7 @@ icon_state = "xenopie_slice" tastes = list("pie" = 1, "meat" = 1, "acid" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/applepie name = "apple pie" @@ -254,6 +270,7 @@ slice_type = /obj/item/food/pieslice/apple tastes = list("pie" = 1, "apple" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/apple name = "apple pie slice" @@ -261,6 +278,7 @@ icon_state = "applepie_slice" tastes = list("pie" = 1, "apples" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/cherrypie name = "cherry pie" @@ -273,6 +291,7 @@ slice_type = /obj/item/food/pieslice/cherry tastes = list("pie" = 7, "Nicole Paige Brooks" = 2) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/cherry name = "cherry pie slice" @@ -280,6 +299,7 @@ icon_state = "cherrypie_slice" tastes = list("pie" = 1, "cherries" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/pumpkinpie name = "pumpkin pie" @@ -292,6 +312,7 @@ tastes = list("pie" = 1, "pumpkin" = 1) foodtypes = GRAIN | VEGETABLES | SUGAR slice_type = /obj/item/food/pieslice/pumpkin + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/pumpkin name = "pumpkin pie slice" @@ -299,6 +320,7 @@ icon_state = "pumpkinpieslice" tastes = list("pie" = 1, "pumpkin" = 1) foodtypes = GRAIN | VEGETABLES | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/appletart name = "golden apple streusel tart" @@ -311,6 +333,7 @@ ) tastes = list("pie" = 1, "apple" = 1, "expensive metal" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pie/grapetart name = "grape tart" @@ -322,6 +345,7 @@ ) tastes = list("pie" = 1, "grape" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pie/mimetart name = "mime tart" @@ -334,6 +358,7 @@ ) tastes = list("nothing" = 3) foodtypes = GRAIN + crafted_food_buff = /datum/status_effect/food/trait/mute /obj/item/food/pie/berrytart name = "berry tart" @@ -368,6 +393,7 @@ tastes = list("pie" = 1, "a mouthful of pool water" = 1) foodtypes = GRAIN | VEGETABLES slice_type = /obj/item/food/pieslice/blumpkin + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/blumpkin name = "blumpkin pie slice" @@ -375,6 +401,7 @@ icon_state = "blumpkinpieslice" tastes = list("pie" = 1, "a mouthful of pool water" = 1) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/dulcedebatata name = "dulce de batata" @@ -387,6 +414,7 @@ tastes = list("jelly" = 1, "sweet potato" = 1) foodtypes = VEGETABLES | SUGAR slice_type = /obj/item/food/pieslice/dulcedebatata + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/dulcedebatata name = "dulce de batata slice" @@ -394,6 +422,7 @@ icon_state = "dulcedebatataslice" tastes = list("jelly" = 1, "sweet potato" = 1) foodtypes = VEGETABLES | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/frostypie name = "frosty pie" @@ -406,6 +435,7 @@ slice_type = /obj/item/food/pieslice/frosty tastes = list("mint" = 1, "pie" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pieslice/frosty name = "frosty pie slice" @@ -413,6 +443,7 @@ icon_state = "frostypie_slice" tastes = list("pie" = 1, "mint" = 1) foodtypes = GRAIN | FRUIT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pie/baklava name = "baklava" @@ -426,6 +457,7 @@ foodtypes = /*NUTS | */SUGAR slice_type = /obj/item/food/pieslice/baklava yield = 6 + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pieslice/baklava name = "baklava dish" @@ -433,3 +465,4 @@ icon_state = "baklavaslice" tastes = list("nuts" = 1, "pie" = 1) foodtypes = /*NUTS | */SUGAR + crafting_complexity = FOOD_COMPLEXITY_4 diff --git a/code/game/objects/items/food/pizza.dm b/code/game/objects/items/food/pizza.dm index dc7ea4543b01e..08440e930e166 100644 --- a/code/game/objects/items/food/pizza.dm +++ b/code/game/objects/items/food/pizza.dm @@ -12,6 +12,7 @@ ) tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1) foodtypes = GRAIN | DAIRY | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_2 /// type is spawned 6 at a time and replaces this pizza when processed by cutting tool var/obj/item/food/pizzaslice/slice_type ///What label pizza boxes use if this pizza spawns in them. @@ -20,6 +21,7 @@ /obj/item/food/pizza/raw foodtypes = GRAIN | DAIRY | VEGETABLES | RAW slice_type = null + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/pizza/raw/make_bakeable() AddComponent(/datum/component/bakeable, /obj/item/food/pizza, rand(70 SECONDS, 80 SECONDS), TRUE, TRUE) @@ -36,6 +38,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 5) foodtypes = GRAIN | DAIRY | VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/pizzaslice/make_processable() AddElement(/datum/element/processable, TOOL_ROLLINGPIN, 1, 1 SECONDS, table_required = TRUE, /*screentip_verb = "Flatten"*/) @@ -54,6 +57,7 @@ foodtypes = GRAIN | VEGETABLES | DAIRY slice_type = /obj/item/food/pizzaslice/margherita boxtag = "Margherita Deluxe" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/margherita/raw name = "raw pizza margherita" @@ -79,6 +83,7 @@ icon_state = "pizzamargheritaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1) foodtypes = GRAIN | VEGETABLES | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizzaslice/margherita/Initialize(mapload) . = ..() @@ -97,6 +102,7 @@ foodtypes = GRAIN | VEGETABLES| DAIRY | MEAT slice_type = /obj/item/food/pizzaslice/meat boxtag = "Meatlovers' Supreme" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/meat/raw name = "raw meatpizza" @@ -113,6 +119,7 @@ icon_state = "meatpizzaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "meat" = 1) foodtypes = GRAIN | VEGETABLES | DAIRY | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/mushroom name = "mushroom pizza" @@ -127,6 +134,7 @@ foodtypes = GRAIN | VEGETABLES | DAIRY slice_type = /obj/item/food/pizzaslice/mushroom boxtag = "Mushroom Special" + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/pizza/mushroom/raw name = "raw mushroom pizza" @@ -143,6 +151,7 @@ icon_state = "mushroompizzaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "mushroom" = 1) foodtypes = GRAIN | VEGETABLES | DAIRY + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/pizza/vegetable name = "vegetable pizza" @@ -157,6 +166,7 @@ foodtypes = GRAIN | VEGETABLES | DAIRY slice_type = /obj/item/food/pizzaslice/vegetable boxtag = "Gourmet Vegetable" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/vegetable/raw name = "raw vegetable pizza" @@ -173,6 +183,7 @@ icon_state = "vegetablepizzaslice" tastes = list("crust" = 1, "tomato" = 2, "cheese" = 1, "carrot" = 1) foodtypes = GRAIN | VEGETABLES | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/donkpocket name = "donkpocket pizza" @@ -189,6 +200,7 @@ foodtypes = GRAIN | VEGETABLES | DAIRY | MEAT | JUNKFOOD slice_type = /obj/item/food/pizzaslice/donkpocket boxtag = "Bangin' Donk" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/donkpocket/raw name = "raw donkpocket pizza" @@ -205,6 +217,7 @@ icon_state = "donkpocketpizzaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "meat" = 1, "laziness" = 1) foodtypes = GRAIN | VEGETABLES | DAIRY | MEAT | JUNKFOOD + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/dank name = "dank pizza" @@ -220,6 +233,7 @@ foodtypes = GRAIN | VEGETABLES | DAIRY slice_type = /obj/item/food/pizzaslice/dank boxtag = "Fresh Herb" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/dank/raw name = "raw dank pizza" @@ -236,6 +250,7 @@ icon_state = "dankpizzaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "meat" = 1) foodtypes = GRAIN | VEGETABLES | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/sassysage name = "sassysage pizza" @@ -251,6 +266,7 @@ foodtypes = GRAIN | VEGETABLES | DAIRY slice_type = /obj/item/food/pizzaslice/sassysage boxtag = "Sausage Lovers" + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/sassysage/raw name = "raw sassysage pizza" @@ -267,6 +283,7 @@ icon_state = "sassysagepizzaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "meat" = 1) foodtypes = GRAIN | VEGETABLES | DAIRY + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/pizza/pineapple name = "\improper Hawaiian pizza" @@ -283,6 +300,7 @@ foodtypes = GRAIN | VEGETABLES | DAIRY | MEAT | FRUIT | PINEAPPLE slice_type = /obj/item/food/pizzaslice/pineapple boxtag = "Honolulu Chew" + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pizza/pineapple/raw name = "raw Hawaiian pizza" @@ -299,6 +317,7 @@ icon_state = "pineapplepizzaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "pineapple" = 2, "ham" = 2) foodtypes = GRAIN | VEGETABLES | DAIRY | MEAT | FRUIT | PINEAPPLE + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pizza/arnold name = "\improper Arnold pizza" @@ -314,6 +333,7 @@ tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "pepperoni" = 2, "9 millimeter bullets" = 2) slice_type = /obj/item/food/pizzaslice/arnold boxtag = "9mm Pepperoni" + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pizza/arnold/raw name = "raw Arnold pizza" @@ -360,6 +380,7 @@ icon_state = "arnoldpizzaslice" tastes = list("crust" = 1, "tomato" = 1, "cheese" = 1, "pepperoni" = 2, "9 millimeter bullets" = 2) foodtypes = GRAIN | VEGETABLES | DAIRY | MEAT + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/pizzaslice/arnold/attack(mob/living/M, mob/living/user) . =..() diff --git a/code/game/objects/items/food/salad.dm b/code/game/objects/items/food/salad.dm index 43f364a22fe7c..2361b3ec65570 100644 --- a/code/game/objects/items/food/salad.dm +++ b/code/game/objects/items/food/salad.dm @@ -12,6 +12,7 @@ tastes = list("leaves" = 1) foodtypes = VEGETABLES eatverbs = list("devour","nibble","gnaw","gobble","chomp") //who the fuck gnaws and devours on a salad + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/salad/aesirsalad name = "\improper Aesir salad" @@ -23,6 +24,7 @@ ) tastes = list("leaves" = 1) foodtypes = VEGETABLES | FRUIT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/salad/herbsalad name = "herb salad" @@ -34,6 +36,7 @@ ) tastes = list("leaves" = 1, "apple" = 1) foodtypes = VEGETABLES | FRUIT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/salad/validsalad name = "valid salad" @@ -58,6 +61,7 @@ ) tastes = list("fruit" = 1) foodtypes = FRUIT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/salad/jungle name = "jungle salad" @@ -70,6 +74,7 @@ ) tastes = list("fruit" = 1, "the jungle" = 1) foodtypes = FRUIT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/salad/citrusdelight name = "citrus delight" @@ -81,6 +86,7 @@ ) tastes = list("sourness" = 1, "leaves" = 1) foodtypes = FRUIT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/uncooked_rice name = "uncooked rice" @@ -106,6 +112,7 @@ ) tastes = list("rice" = 1) foodtypes = GRAIN | BREAKFAST + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/salad/ricepudding name = "rice pudding" @@ -130,6 +137,7 @@ ) tastes = list("rice" = 1, "meat" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/salad/eggbowl name = "egg bowl" @@ -142,6 +150,7 @@ ) tastes = list("rice" = 1, "egg" = 1) foodtypes = GRAIN | MEAT //EGG = MEAT -NinjaNomNom 2017 + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/reagent_containers/cup/bowl diff --git a/code/game/objects/items/food/sandwichtoast.dm b/code/game/objects/items/food/sandwichtoast.dm index 9760d1788e92d..2b822d429c9a5 100644 --- a/code/game/objects/items/food/sandwichtoast.dm +++ b/code/game/objects/items/food/sandwichtoast.dm @@ -12,6 +12,7 @@ foodtypes = GRAIN | VEGETABLES food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/grilled_cheese_sandwich name = "grilled cheese sandwich" @@ -28,6 +29,7 @@ foodtypes = GRAIN food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/cheese_sandwich name = "cheese sandwich" @@ -43,6 +45,7 @@ foodtypes = GRAIN | DAIRY food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cheese_sandwich/make_grillable() AddComponent(/datum/component/grillable, /obj/item/food/grilled_cheese_sandwich, rand(30 SECONDS, 60 SECONDS), TRUE) @@ -57,6 +60,7 @@ foodtypes = GRAIN food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/jellysandwich/slime food_reagents = list( @@ -87,6 +91,7 @@ foodtypes = GRAIN | GROSS food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/butteredtoast name = "buttered toast" @@ -102,6 +107,7 @@ foodtypes = GRAIN | BREAKFAST food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/jelliedtoast name = "jellied toast" @@ -113,6 +119,7 @@ foodtypes = GRAIN | BREAKFAST food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/jelliedtoast/cherry food_reagents = list( @@ -143,6 +150,7 @@ foodtypes = GRAIN food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/hotdog name = "hotdog" @@ -159,3 +167,4 @@ tastes = list("bun" = 3, "meat" = 2) foodtypes = GRAIN | MEAT //Ketchup is not a vegetable w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 diff --git a/code/game/objects/items/food/snacks.dm b/code/game/objects/items/food/snacks.dm index 8b0ca430f9b6f..8c36b8649951a 100644 --- a/code/game/objects/items/food/snacks.dm +++ b/code/game/objects/items/food/snacks.dm @@ -9,14 +9,14 @@ trash_type = /obj/item/trash/candy food_reagents = list( /datum/reagent/consumable/nutriment = 1, - /datum/reagent/consumable/sugar = 3, - /datum/reagent/consumable/maltodextrin = 2 + /datum/reagent/consumable/sugar = 3 ) junkiness = 25 tastes = list("candy" = 1) foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/sosjerky name = "\improper Scaredy's Private Reserve Beef Jerky" @@ -26,13 +26,13 @@ food_reagents = list( /datum/reagent/consumable/nutriment/protein = 3, /datum/reagent/consumable/sugar = 2, - /datum/reagent/consumable/sodiumchloride = 2, - /datum/reagent/consumable/maltodextrin = 3 + /datum/reagent/consumable/sodiumchloride = 2 ) junkiness = 25 tastes = list("dried meat" = 1) w_class = WEIGHT_CLASS_SMALL foodtypes = JUNKFOOD | MEAT | SUGAR + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/sosjerky/healthy name = "homemade beef jerky" @@ -52,13 +52,13 @@ food_reagents = list( /datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/sugar = 3, - /datum/reagent/consumable/sodiumchloride = 1, - /datum/reagent/consumable/maltodextrin = 2 + /datum/reagent/consumable/sodiumchloride = 1 ) junkiness = 20 tastes = list("salt" = 1, "crisps" = 1) foodtypes = JUNKFOOD | FRIED w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/no_raisin name = "\improper 4no raisins" @@ -67,8 +67,7 @@ trash_type = /obj/item/trash/raisins food_reagents = list( /datum/reagent/consumable/nutriment = 2, - /datum/reagent/consumable/sugar = 4, - /datum/reagent/consumable/maltodextrin = 3.35 + /datum/reagent/consumable/sugar = 4 ) junkiness = 25 tastes = list("dried raisins" = 1) @@ -76,6 +75,7 @@ food_flags = FOOD_FINGER_FOOD custom_price = PAYCHECK_MEDIUM * 0.7 w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/no_raisin/healthy name = "homemade raisins" @@ -93,14 +93,14 @@ icon_state = "space_twinkie" desc = "Guaranteed to survive longer than you will." food_reagents = list( - /datum/reagent/consumable/sugar = 4, - /datum/reagent/consumable/maltodextrin = 1.35 + /datum/reagent/consumable/sugar = 4 ) junkiness = 25 foodtypes = JUNKFOOD | GRAIN | SUGAR food_flags = FOOD_FINGER_FOOD custom_price = PAYCHECK_EASY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/cheesiehonkers name = "\improper Cheesie Honkers" @@ -109,13 +109,13 @@ trash_type = /obj/item/trash/cheesie food_reagents = list( /datum/reagent/consumable/nutriment = 1, - /datum/reagent/consumable/sugar = 3, - /datum/reagent/consumable/maltodextrin = 2 + /datum/reagent/consumable/sugar = 3 ) junkiness = 25 tastes = list("cheese" = 5, "crisps" = 2) foodtypes = JUNKFOOD | DAIRY | SUGAR w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/syndicake name = "\improper Syndi-Cakes" @@ -124,12 +124,12 @@ trash_type = /obj/item/trash/syndi_cakes food_reagents = list( /datum/reagent/consumable/nutriment = 4, - /datum/reagent/consumable/doctor_delight = 5, - /datum/reagent/consumable/maltodextrin = 4 + /datum/reagent/consumable/doctor_delight = 5 ) tastes = list("sweetness" = 3, "cake" = 1) foodtypes = GRAIN | FRUIT | VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/energybar name = "\improper High-power energy bars" @@ -138,10 +138,10 @@ trash_type = /obj/item/trash/energybar food_reagents = list( /datum/reagent/consumable/nutriment = 3, - /datum/reagent/consumable/liquidelectricity = 10, - /datum/reagent/consumable/maltodextrin = 3 + /datum/reagent/consumable/liquidelectricity = 10 ) tastes = list("pure electricity" = 3, "fitness" = 2) foodtypes = TOXIC food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 diff --git a/code/game/objects/items/food/soup.dm b/code/game/objects/items/food/soup.dm index e673e53bfbb8a..20793965b101c 100644 --- a/code/game/objects/items/food/soup.dm +++ b/code/game/objects/items/food/soup.dm @@ -269,6 +269,7 @@ ) tastes = list("jelly" = 1, "mushroom" = 1) foodtypes = VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/soup/amanitajelly name = "amanita jelly" @@ -283,6 +284,7 @@ ) tastes = list("jelly" = 1, "mushroom" = 1) foodtypes = VEGETABLES | TOXIC + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/soup/stew name = "stew" @@ -367,6 +369,7 @@ /datum/reagent/consumable/nutriment = 11, /datum/reagent/consumable/nutriment/vitamin = 2 ) + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/soup/oatmeal name = "oatmeal" diff --git a/code/game/objects/items/food/spaghetti.dm b/code/game/objects/items/food/spaghetti.dm index 3ad8b59a3eec4..d614b849f354e 100644 --- a/code/game/objects/items/food/spaghetti.dm +++ b/code/game/objects/items/food/spaghetti.dm @@ -4,6 +4,7 @@ icon = 'icons/obj/food/spaghetti.dmi' food_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1) foodtypes = GRAIN + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spaghetti/Initialize(mapload) . = ..() @@ -19,12 +20,14 @@ icon_state = "spaghetti" tastes = list("pasta" = 1) microwaved_type = /obj/item/food/spaghetti/boiledspaghetti + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/spaghetti/boiledspaghetti name = "boiled spaghetti" desc = "A plain dish of noodles, this needs more ingredients." icon_state = "spaghettiboiled" food_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/consumable/nutriment/vitamin = 1) + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/spaghetti/boiledspaghetti/Initialize(mapload) . = ..() @@ -38,6 +41,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/tomatojuice = 10, /datum/reagent/consumable/nutriment/vitamin = 4) tastes = list("pasta" = 1, "tomato" = 1) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spaghetti/copypasta name = "copypasta" @@ -47,6 +51,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 12, /datum/reagent/consumable/tomatojuice = 20, /datum/reagent/consumable/nutriment/vitamin = 8) tastes = list("pasta" = 1, "tomato" = 1) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spaghetti/meatballspaghetti name = "spaghetti and meatballs" @@ -55,6 +60,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/nutriment/vitamin = 2) tastes = list("pasta" = 1, "meat" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spaghetti/spesslaw name = "spesslaw" @@ -62,6 +68,7 @@ icon_state = "spesslaw" food_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/nutriment/vitamin = 3) tastes = list("pasta" = 1, "meat" = 1) + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spaghetti/chowmein name = "chow mein" @@ -69,6 +76,7 @@ icon_state = "chowmein" food_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 6) tastes = list("noodle" = 1, "tomato" = 1) + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/spaghetti/beefnoodle name = "beef noodle" @@ -78,6 +86,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/nutriment/vitamin = 6, /datum/reagent/liquidgibs = 3) tastes = list("noodle" = 1, "meat" = 1) foodtypes = GRAIN | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/spaghetti/butternoodles name = "butter noodles" @@ -86,6 +95,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 9, /datum/reagent/consumable/nutriment/vitamin = 2) tastes = list("noodle" = 1, "butter" = 1) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spaghetti/kasespatzle name = "käsespätzle" @@ -94,6 +104,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 8, /datum/reagent/consumable/nutriment/vitamin = 4) tastes = list("pasta" = 1, "cheese" = 1, "egg" = 1) foodtypes = GRAIN | DAIRY + crafting_complexity = FOOD_COMPLEXITY_4 /obj/item/food/spaghetti/spaghettinapolitan name = "spaghetti napolitan" @@ -102,6 +113,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 8, /datum/reagent/consumable/nutriment/vitamin = 6) tastes = list("pasta" = 1, "ketchup" = 1, "sausage" = 1) foodtypes = GRAIN | MEAT | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/spaghetti/lasagna name = "lasagna" @@ -110,6 +122,7 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/tomatojuice = 5, /datum/reagent/consumable/nutriment/vitamin = 4) tastes = list("pasta" = 1, "tomato" = 1, "cheese" = 1, "mondays" = 1) foodtypes = GRAIN | DAIRY | VEGETABLES | MEAT + crafting_complexity = FOOD_COMPLEXITY_3 /obj/item/food/spaghetti/glassnoodles name = "glass noodles" @@ -118,3 +131,18 @@ food_reagents = list(/datum/reagent/consumable/nutriment = 7, /datum/reagent/consumable/nutriment/vitamin = 6) tastes = list("noodle" = 1, "sweetness" = 1, "tofu" = 1) foodtypes = GRAIN | VEGETABLES + crafting_complexity = FOOD_COMPLEXITY_3 + +/obj/item/food/spaghetti/carbonara + name = "spaghetti carbonara" + desc = "Silky eggs, crispy pork, cheesy bliss. Mamma mia!" + icon_state = "carbonara" + food_reagents = list( + /datum/reagent/consumable/nutriment = 10, + /datum/reagent/consumable/nutriment/protein = 6, + /datum/reagent/consumable/nutriment/vitamin = 4, + ) + tastes = list("spaghetti" = 1, "parmigiano reggiano" = 1, "guanciale" = 1) + foodtypes = GRAIN | MEAT | DAIRY + crafting_complexity = FOOD_COMPLEXITY_4 + crafted_food_buff = /datum/status_effect/food/speech/italian diff --git a/code/game/objects/items/food/sweets.dm b/code/game/objects/items/food/sweets.dm index e18cba8c1fed3..1475e9712b6ae 100644 --- a/code/game/objects/items/food/sweets.dm +++ b/code/game/objects/items/food/sweets.dm @@ -11,6 +11,7 @@ foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/candy_corn/prison name = "desiccated candy corn" @@ -33,6 +34,7 @@ tastes = list("apple" = 2, "caramel" = 3) foodtypes = JUNKFOOD | FRUIT | SUGAR w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/mint name = "mint" @@ -58,6 +60,7 @@ foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_TINY + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/chococoin name = "chocolate coin" @@ -72,6 +75,7 @@ foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/fudgedice name = "fudge dice" @@ -87,6 +91,7 @@ foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/chocoorange name = "chocolate orange" @@ -100,6 +105,7 @@ foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/bonbon name = "bon bon" @@ -276,6 +282,7 @@ foodtypes = JUNKFOOD | SUGAR //| BUGS food_flags = FOOD_FINGER_FOOD slot_flags = ITEM_SLOT_MASK + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/swirl_lollipop name = "Swirl lollipop" @@ -290,3 +297,4 @@ tastes = list("whimsical joy" = 1, "sugar" = 2) foodtypes = JUNKFOOD | SUGAR food_flags = FOOD_FINGER_FOOD + crafting_complexity = FOOD_COMPLEXITY_1 diff --git a/code/game/objects/items/food/vegetables.dm b/code/game/objects/items/food/vegetables.dm index 6594af8f7d18f..ead341540c13b 100644 --- a/code/game/objects/items/food/vegetables.dm +++ b/code/game/objects/items/food/vegetables.dm @@ -11,6 +11,7 @@ tastes = list("eggplant" = 3, "cheese" = 1) foodtypes = VEGETABLES | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/yakiimo name = "yaki imo" @@ -23,6 +24,7 @@ tastes = list("sweet potato" = 1) foodtypes = VEGETABLES | SUGAR w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/roastparsnip name = "roast parsnip" @@ -35,6 +37,7 @@ tastes = list("parsnip" = 1) foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 // Potatoes /obj/item/food/tatortot @@ -46,6 +49,7 @@ foodtypes = FRIED | VEGETABLES food_flags = FOOD_FINGER_FOOD w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/tatortot/Initialize(mapload) . = ..() @@ -63,6 +67,7 @@ tastes = list("baked potato" = 1, "bacon" = 1, "cheese" = 1, "cabbage" = 1) foodtypes = VEGETABLES | DAIRY | MEAT w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_3 // Fries /obj/item/food/fries @@ -73,6 +78,7 @@ tastes = list("fries" = 3, "salt" = 1) foodtypes = VEGETABLES | FRIED w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/fries/Initialize(mapload) . = ..() @@ -89,6 +95,7 @@ tastes = list("fries" = 3, "cheese" = 1) foodtypes = VEGETABLES | DAIRY w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cheesyfries/Initialize(mapload) . = ..() @@ -106,6 +113,7 @@ tastes = list("carrots" = 3, "salt" = 1) foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/carrotfries/Initialize(mapload) . = ..() diff --git a/code/modules/events/holiday/halloween.dm b/code/modules/events/holiday/halloween.dm index 14eee118128e2..f25b90eadcc6e 100644 --- a/code/modules/events/holiday/halloween.dm +++ b/code/modules/events/holiday/halloween.dm @@ -28,12 +28,14 @@ desc = "Spooky! It's got delicious calcium flavouring!" icon = 'icons/obj/halloween_items.dmi' icon_state = "skeletoncookie" + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/cookie/sugar/spookycoffin name = "coffin cookie" desc = "Spooky! It's got delicious coffee flavouring!" icon = 'icons/obj/halloween_items.dmi' icon_state = "coffincookie" + crafting_complexity = FOOD_COMPLEXITY_2 //spooky items diff --git a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm index 4ed9d8d7ee6a7..90d1fe3bb5ac8 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm @@ -57,7 +57,7 @@ GLOBAL_LIST_INIT(oilfry_blacklisted_items, typecacheof(list( /obj/machinery/deepfryer/Initialize(mapload) . = ..() create_reagents(50, OPENCONTAINER) - reagents.add_reagent(/datum/reagent/consumable/cooking_oil, 25) + reagents.add_reagent(/datum/reagent/consumable/nutriment/fat/oil, 25) fry_loop = new(src, FALSE) /obj/machinery/deepfryer/Destroy() @@ -100,7 +100,7 @@ GLOBAL_LIST_INIT(oilfry_blacklisted_items, typecacheof(list( qdel(weapon) return // Make sure we have cooking oil - if(!reagents.has_reagent(/datum/reagent/consumable/cooking_oil)) + if(!reagents.has_reagent(/datum/reagent/consumable/nutriment/fat/oil)) to_chat(user, "[src] has no cooking oil to fry with!") return // Don't deep fry indestructible things, for sanity reasons @@ -141,7 +141,7 @@ GLOBAL_LIST_INIT(oilfry_blacklisted_items, typecacheof(list( /obj/machinery/deepfryer/process(delta_time) ..() - var/datum/reagent/consumable/cooking_oil/frying_oil = reagents.has_reagent(/datum/reagent/consumable/cooking_oil) + var/datum/reagent/consumable/nutriment/fat/oil/frying_oil = reagents.has_reagent(/datum/reagent/consumable/nutriment/fat/oil) if(!frying_oil) return reagents.chem_temp = frying_oil.fry_temperature @@ -188,7 +188,8 @@ GLOBAL_LIST_INIT(oilfry_blacklisted_items, typecacheof(list( // Give them reagents to put frying oil in if(isnull(frying.reagents)) frying.create_reagents(50, INJECTABLE) - //ADD_TRAIT(frying, TRAIT_FOOD_CHEF_MADE, REF(user)) //Attaching behavior to if the food is made by a chef, later newfood + if(user.mind) + ADD_TRAIT(frying, TRAIT_FOOD_CHEF_MADE, REF(user.mind)) SEND_SIGNAL(frying, COMSIG_ITEM_ENTERED_FRYER) icon_state = "fryer_on" diff --git a/code/modules/food_and_drinks/kitchen_machinery/griddle.dm b/code/modules/food_and_drinks/kitchen_machinery/griddle.dm index 836c0fffcd1ca..6822e5678ef3f 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/griddle.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/griddle.dm @@ -98,6 +98,7 @@ vis_contents += item_to_grill griddled_objects += item_to_grill item_to_grill.flags_1 |= IS_ONTOP_1 + SEND_SIGNAL(item_to_grill, COMSIG_ITEM_GRILL_PLACED, user) RegisterSignal(item_to_grill, COMSIG_MOVABLE_MOVED, PROC_REF(ItemMoved)) RegisterSignal(item_to_grill, COMSIG_GRILL_COMPLETED, PROC_REF(GrillCompleted)) RegisterSignal(item_to_grill, COMSIG_PARENT_QDELETING, PROC_REF(ItemRemovedFromGrill)) diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index 1713d03236f04..db18b99af441c 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -275,7 +275,7 @@ /obj/machinery/microwave/AltClick(mob/user) if(user.canUseTopic(src, !issilicon(usr))) - cook() + cook(user) /obj/machinery/microwave/ui_interact(mob/user) . = ..() @@ -316,7 +316,7 @@ ingredients.Cut() open() -/obj/machinery/microwave/proc/cook() +/obj/machinery/microwave/proc/cook(mob/user) if(machine_stat & (NOPOWER|BROKEN)) return if(operating || broken > 0 || panel_open || !anchored || dirty == 100) @@ -328,13 +328,13 @@ return if(prob(max((5 / efficiency) - 5, dirty * 5))) //a clean unupgraded microwave has no risk of failure - muck() + muck(user) return for(var/obj/O in ingredients) if(istype(O, /obj/item/food) || istype(O, /obj/item/grown)) continue if(prob(min(dirty * 5, 100))) - start_can_fail() + start_can_fail(user) return break start() @@ -347,32 +347,32 @@ soundloop.start() update_icon() -/obj/machinery/microwave/proc/spark() +/obj/machinery/microwave/proc/spark(mob/user) visible_message("Sparks fly around [src]!") var/datum/effect_system/spark_spread/s = new s.set_up(2, 1, src) - s.start() + s.start(user) #define MICROWAVE_NORMAL 0 #define MICROWAVE_MUCK 1 #define MICROWAVE_PRE 2 -/obj/machinery/microwave/proc/start() +/obj/machinery/microwave/proc/start(mob/user) wzhzhzh() - loop(MICROWAVE_NORMAL, 10) + loop(MICROWAVE_NORMAL, 10, user) -/obj/machinery/microwave/proc/start_can_fail() +/obj/machinery/microwave/proc/start_can_fail(mob/user) wzhzhzh() - loop(MICROWAVE_PRE, 4) + loop(MICROWAVE_PRE, 4, user) -/obj/machinery/microwave/proc/muck() +/obj/machinery/microwave/proc/muck(mob/user) wzhzhzh() playsound(src.loc, 'sound/effects/splat.ogg', 50, 1) dirty_anim_playing = TRUE update_icon() - loop(MICROWAVE_MUCK, 4) + loop(MICROWAVE_MUCK, 4, user) -/obj/machinery/microwave/proc/loop(type, time, wait = max(12 - 2 * efficiency, 2)) // standard wait is 10 +/obj/machinery/microwave/proc/loop(type, time, wait = max(12 - 2 * efficiency, 2), mob/user) // standard wait is 10 if(machine_stat & (NOPOWER|BROKEN)) operating = FALSE if(type == MICROWAVE_PRE) @@ -382,7 +382,7 @@ if(!time) switch(type) if(MICROWAVE_NORMAL) - loop_finish() + loop_finish(user) if(MICROWAVE_MUCK) muck_finish() if(MICROWAVE_PRE) @@ -392,9 +392,10 @@ use_power(500) addtimer(CALLBACK(src, PROC_REF(loop), type, time, wait), wait) -/obj/machinery/microwave/proc/loop_finish() +/obj/machinery/microwave/proc/loop_finish(mob/user) operating = FALSE + var/iron = 0 for(var/obj/item/O in ingredients) O.microwave_act(src) @@ -408,12 +409,15 @@ if(prob(max(iron / 2, 33))) explosion(loc, 0, 1, 2) else - dump_inventory_contents() + dump_inventory_contents(user) after_finish_loop() -/obj/machinery/microwave/dump_inventory_contents() +/obj/machinery/microwave/dump_inventory_contents(mob/user) . = ..() + if(user && user.mind) + for(var/obj/item/result as anything in ingredients) + ADD_TRAIT(result, TRAIT_FOOD_CHEF_MADE, REF(user.mind)) ingredients.Cut() /obj/machinery/microwave/proc/pre_fail() diff --git a/code/modules/food_and_drinks/kitchen_machinery/oven.dm b/code/modules/food_and_drinks/kitchen_machinery/oven.dm index 42cef1088b00d..80703098d34d0 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/oven.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/oven.dm @@ -144,6 +144,10 @@ begin_processing() used_tray.vis_flags |= VIS_HIDE + // yeah yeah i figure you don't need connect loc for just baking trays + for(var/obj/item/baked_item in used_tray.contents) + SEND_SIGNAL(baked_item, COMSIG_ITEM_OVEN_PLACED_IN, src, user) + update_appearance() update_baking_audio() return TRUE diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index d2e503a970904..07a705bb378cb 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -99,7 +99,7 @@ return FALSE if(accept_check(O)) - load(O) + load(O, user) user.visible_message("[user] has added \the [O] to \the [src].", "You add \the [O] to \the [src].") if (visible_contents) update_appearance() @@ -112,7 +112,7 @@ if(contents.len >= max_n_of_items) break if(accept_check(G)) - load(G) + load(G, user) loaded++ if(loaded) @@ -176,7 +176,7 @@ return TRUE return FALSE -/obj/machinery/smartfridge/proc/load(obj/item/O) +/obj/machinery/smartfridge/proc/load(obj/item/O, mob/user) if(ismob(O.loc)) var/mob/M = O.loc if(!M.transferItemToLoc(O, src)) @@ -308,6 +308,8 @@ has_emissive = FALSE opacity = FALSE var/drying = FALSE + /// The reference to the last user's mind. Needed for the chef made trait to be properly applied correctly to dried food. + var/datum/weakref/current_user /obj/machinery/smartfridge/drying_rack/Initialize(mapload) . = ..() @@ -322,6 +324,10 @@ QDEL_LIST(old_parts) RefreshParts() +/obj/machinery/smartfridge/drying_rack/Destroy() + current_user = null + return ..() + /obj/machinery/smartfridge/drying_rack/on_deconstruction() new /obj/item/stack/sheet/wood(drop_location(), 10) ..() @@ -348,7 +354,7 @@ return switch(action) if("Dry") - toggle_drying(FALSE) + toggle_drying(FALSE, usr) return TRUE return FALSE @@ -362,9 +368,13 @@ if(!powered()) toggle_drying(TRUE) -/obj/machinery/smartfridge/drying_rack/load() //For updating the filled overlay - ..() +/obj/machinery/smartfridge/drying_rack/load(obj/item/dried_object, mob/user) //For updating the filled overlay + . = ..() + if(!.) + return update_appearance() + if(drying && user?.mind) + current_user = WEAKREF(user.mind) /obj/machinery/smartfridge/drying_rack/update_icon() ..() @@ -390,15 +400,18 @@ return TRUE return FALSE -/obj/machinery/smartfridge/drying_rack/proc/toggle_drying(forceoff) +/obj/machinery/smartfridge/drying_rack/proc/toggle_drying(forceoff, mob/user) if(drying || forceoff) drying = FALSE + current_user = FALSE else drying = TRUE + if(user?.mind) + current_user = WEAKREF(user.mind) update_appearance() /obj/machinery/smartfridge/drying_rack/proc/rack_dry(obj/item/target) - SEND_SIGNAL(target, COMSIG_ITEM_DRIED) + SEND_SIGNAL(target, COMSIG_ITEM_DRIED, current_user) /obj/machinery/smartfridge/drying_rack/emp_act(severity) . = ..() @@ -462,12 +475,17 @@ return TRUE return FALSE -/obj/machinery/smartfridge/organ/load(obj/item/O) +/obj/machinery/smartfridge/organ/load(obj/item/item, mob/user) . = ..() if(!.) //if the item loads, clear can_decompose return - var/obj/item/organ/organ = O - organ.organ_flags |= ORGAN_FROZEN + if(isorgan(item)) + var/obj/item/organ/organ = item + organ.organ_flags |= ORGAN_FROZEN + if(isbodypart(item)) + var/obj/item/bodypart/bodypart = item + for(var/obj/item/organ/stored in bodypart.contents) + stored.organ_flags |= ORGAN_FROZEN /obj/machinery/smartfridge/organ/RefreshParts() for(var/obj/item/stock_parts/matter_bin/B in component_parts) diff --git a/code/modules/holiday/easter.dm b/code/modules/holiday/easter.dm index 695d450b650c2..90d48c4f07611 100644 --- a/code/modules/holiday/easter.dm +++ b/code/modules/holiday/easter.dm @@ -165,6 +165,7 @@ icon_state = "hotcrossbun" foodtypes = SUGAR | GRAIN tastes = list("easter") + crafting_complexity = FOOD_COMPLEXITY_1 /obj/item/food/scotchegg name = "scotch egg" @@ -173,9 +174,11 @@ icon_state = "scotchegg" bite_consumption = 3 food_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 2) + crafting_complexity = FOOD_COMPLEXITY_2 /obj/item/food/chocolatebunny name = "chocolate bunny" desc = "Contains less than 10% real rabbit!" icon_state = "chocolatebunny" food_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/sugar = 2, /datum/reagent/consumable/cocoa = 2, /datum/reagent/consumable/nutriment/vitamin = 1) + crafting_complexity = FOOD_COMPLEXITY_1 diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 4ae15a1479aaf..af0ce169f8834 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -196,9 +196,8 @@ CREATION_TEST_IGNORE_SUBTYPES(/obj/item/food/grown) /obj/item/food/grown/on_juice() var/nutriment = reagents.get_reagent_amount(/datum/reagent/consumable/nutriment) - if(juice_results?.len) - for(var/i in 1 to juice_results.len) - juice_results[juice_results[i]] = nutriment + if(juice_results) + juice_results = nutriment reagents.del_reagent(/datum/reagent/consumable/nutriment) reagents.del_reagent(/datum/reagent/consumable/nutriment/vitamin) diff --git a/code/modules/hydroponics/grown/beans.dm b/code/modules/hydroponics/grown/beans.dm index 2b966717da0c2..7d0cc9d2f1f26 100644 --- a/code/modules/hydroponics/grown/beans.dm +++ b/code/modules/hydroponics/grown/beans.dm @@ -15,7 +15,7 @@ icon_dead = "soybean-dead" genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/soya/koi) - reagents_add = list(/datum/reagent/consumable/nutriment/vitamin = 0.04, /datum/reagent/consumable/nutriment = 0.05, /datum/reagent/consumable/cooking_oil = 0.03) //Vegetable oil! + reagents_add = list(/datum/reagent/consumable/nutriment/vitamin = 0.04, /datum/reagent/consumable/nutriment = 0.05, /datum/reagent/consumable/nutriment/fat/oil = 0.03) //Vegetable oil! /obj/item/food/grown/soybeans seed = /obj/item/seeds/soya diff --git a/code/modules/hydroponics/grown/corn.dm b/code/modules/hydroponics/grown/corn.dm index fcf7375a8c0ab..969832f006c5d 100644 --- a/code/modules/hydroponics/grown/corn.dm +++ b/code/modules/hydroponics/grown/corn.dm @@ -13,7 +13,7 @@ icon_grow = "corn-grow" // Uses one growth icons set for all the subtypes icon_dead = "corn-dead" // Same for the dead icon mutatelist = list(/obj/item/seeds/corn/snapcorn) - reagents_add = list(/datum/reagent/consumable/cornoil = 0.2, /datum/reagent/consumable/nutriment/vitamin = 0.04, /datum/reagent/consumable/nutriment = 0.1) + reagents_add = list(/datum/reagent/consumable/nutriment/fat/oil = 0.2, /datum/reagent/consumable/nutriment/vitamin = 0.04, /datum/reagent/consumable/nutriment = 0.1) /obj/item/food/grown/corn seed = /obj/item/seeds/corn diff --git a/code/modules/hydroponics/grown/flowers.dm b/code/modules/hydroponics/grown/flowers.dm index 3b89cbc066ff9..a679893cbd9bf 100644 --- a/code/modules/hydroponics/grown/flowers.dm +++ b/code/modules/hydroponics/grown/flowers.dm @@ -194,7 +194,7 @@ CREATION_TEST_IGNORE_SUBTYPES(/obj/item/seeds/flower/trumpet) icon_grow = "sunflower-grow" icon_dead = "sunflower-dead" mutatelist = list(/obj/item/seeds/sunflower/moonflower, /obj/item/seeds/sunflower/novaflower) - reagents_add = list(/datum/reagent/consumable/cornoil = 0.08, /datum/reagent/consumable/nutriment = 0.04) + reagents_add = list(/datum/reagent/consumable/nutriment/fat/oil = 0.08, /datum/reagent/consumable/nutriment = 0.04) /obj/item/grown/sunflower // FLOWER POWER! seed = /obj/item/seeds/sunflower diff --git a/code/modules/hydroponics/grown/melon.dm b/code/modules/hydroponics/grown/melon.dm index 06d942315d284..24652aed6380a 100644 --- a/code/modules/hydroponics/grown/melon.dm +++ b/code/modules/hydroponics/grown/melon.dm @@ -82,7 +82,7 @@ * Checks whether or not the person eating the holymelon * is a holy_role (chaplain), as chaplains love holymelons. */ -/obj/item/food/grown/holymelon/proc/check_holyness(fraction, mob/mob_eating) +/obj/item/food/grown/holymelon/proc/check_holyness(mob/mob_eating) if(!ishuman(mob_eating)) return var/mob/living/carbon/human/holy_person = mob_eating diff --git a/code/modules/plumbing/plumbers/grinder_chemical.dm b/code/modules/plumbing/plumbers/grinder_chemical.dm index ef6bb7eb249a1..b29fa7c6f1081 100644 --- a/code/modules/plumbing/plumbers/grinder_chemical.dm +++ b/code/modules/plumbing/plumbers/grinder_chemical.dm @@ -49,17 +49,10 @@ CREATION_TEST_IGNORE_SUBTYPES(/obj/machinery/plumbing/grinder_chemical) if(reag_container.prevent_grinding) // don't grind floorpill return var/obj/item/I = AM - if(I.juice_results || I.grind_results) - if(I.juice_results) - I.on_juice() - reagents.add_reagent_list(I.juice_results) - if(I.reagents) - I.reagents.trans_to(src, I.reagents.total_volume, transfered_by = src) - qdel(I) - return - I.on_grind() - reagents.add_reagent_list(I.grind_results) - if(I.reagents) - I.reagents.trans_to(src, I.reagents.total_volume, transfered_by = src) - qdel(I) + if(I.grind_results || I.juice_results) + use_power(active_power_usage) + if(I.grind_results) + I.grind(src, src) + else if (I.juice_results) + I.juice(src, src) diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index e954d56382520..3a107381ce6a6 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -263,50 +263,45 @@ /obj/machinery/reagentgrinder/proc/stop_operating() operating = FALSE -/obj/machinery/reagentgrinder/proc/juice() +/obj/machinery/reagentgrinder/proc/juice(mob/user) power_change() if(!beaker || machine_stat & (NOPOWER|BROKEN) || beaker.reagents.total_volume >= beaker.reagents.maximum_volume) return operate_for(50, juicing = TRUE) - for(var/obj/item/i in holdingitems) + for(var/obj/item/juiced_item in holdingitems) if(beaker.reagents.total_volume >= beaker.reagents.maximum_volume) break - var/obj/item/I = i - if(I.juice_results) - juice_item(I) + if(juiced_item.juice_results) + juice_item(juiced_item, user) -/obj/machinery/reagentgrinder/proc/juice_item(obj/item/I) //Juicing results can be found in respective object definitions - if(I.on_juice(src) == -1) - to_chat(usr, "[src] shorts out as it tries to juice up [I], and transfers it back to storage.") +/obj/machinery/reagentgrinder/proc/juice_item(obj/item/juiced_item, mob/user) //Juicing results can be found in respective object definitions + if(juiced_item.on_juice(src) == -1) + to_chat(usr, "[src] shorts out as it tries to juice up [juiced_item], and transfers it back to storage.") return - beaker.reagents.add_reagent_list(I.juice_results) - remove_object(I) + beaker.reagents.add_reagent_list(juiced_item.juice_results) + remove_object(juiced_item) /obj/machinery/reagentgrinder/proc/grind(mob/user) power_change() if(!beaker || machine_stat & (NOPOWER|BROKEN) || beaker.reagents.total_volume >= beaker.reagents.maximum_volume) return operate_for(60) - for(var/i in holdingitems) + for(var/obj/item/grinded_item in holdingitems) if(beaker.reagents.total_volume >= beaker.reagents.maximum_volume) break - var/obj/item/I = i - if(I.grind_results || I.is_grindable()) - if(istype(I, /obj/item/reagent_containers)) - var/obj/item/reagent_containers/p = I - if(!p.prevent_grinding) - grind_item(p, user) + if(grinded_item.grind_results || grinded_item.is_grindable()) + if(istype(grinded_item, /obj/item/reagent_containers)) + var/obj/item/reagent_containers/beaker = grinded_item + if(!beaker.prevent_grinding) + grind_item(beaker, user) else - grind_item(I, user) + grind_item(grinded_item, user) -/obj/machinery/reagentgrinder/proc/grind_item(obj/item/I, mob/user) //Grind results can be found in respective object definitions - if(I.on_grind(src) == -1) //Call on_grind() to change amount as needed, and stop grinding the item if it returns -1 - to_chat(usr, "[src] shorts out as it tries to grind up [I], and transfers it back to storage.") +/obj/machinery/reagentgrinder/proc/grind_item(obj/item/grinded_item, mob/user) //Grind results can be found in respective object definitions + if(!grinded_item.grind(beaker, user)) + to_chat(usr, "[src] shorts out as it tries to grind up [grinded_item], and transfers it back to storage.") return - beaker.reagents.add_reagent_list(I.grind_results) - if(I.reagents) - I.reagents.trans_to(beaker, I.reagents.total_volume, transfered_by = user) - remove_object(I) + remove_object(grinded_item) /obj/machinery/reagentgrinder/proc/mix(mob/user) //For butter and other things that would change upon shaking or mixing diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index 7f77bce0a5215..89655acc213bf 100755 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -111,18 +111,18 @@ brute_heal = 0.8 //Rewards the player for eating a balanced diet. nutriment_factor = 9 * REAGENTS_METABOLISM //45% as calorie dense as corn oil. -/datum/reagent/consumable/cooking_oil - name = "Cooking Oil" - description = "A variety of cooking oil derived from fat or plants. Used in food preparation and frying." - color = "#EADD6B" //RGB: 234, 221, 107 (based off of canola oil) - taste_mult = 0.8 - taste_description = "oil" - nutriment_factor = 7 * REAGENTS_METABOLISM //Not very healthy on its own - metabolization_rate = 10 * REAGENTS_METABOLISM +/datum/reagent/consumable/nutriment/fat + name = "Fat" + description = "Triglycerides found in vegetable oils and fatty animal tissue." + color = "#f0eed7" + taste_description = "lard" + brute_heal = 0 + burn_heal = 1 + nutriment_factor = 18 // Twice as nutritious compared to protein and carbohydrates var/fry_temperature = 450 //Around ~350 F (117 C) which deep fryers operate around in the real world - chem_flags = CHEMICAL_RNG_GENERAL | CHEMICAL_RNG_FUN -/datum/reagent/consumable/cooking_oil/reaction_obj(obj/exposed_obj, reac_volume) +/datum/reagent/consumable/nutriment/fat/reaction_obj(obj/exposed_obj, reac_volume) + . = ..() if(!holder || (holder.chem_temp <= fry_temperature)) return if(!isitem(exposed_obj) || HAS_TRAIT(exposed_obj, TRAIT_FOOD_FRIED)) @@ -139,16 +139,17 @@ log_game("[exposed_obj.name] ([exposed_obj.type]) has been deep fried by a reaction with cooking oil reagent at [AREACOORD(exposed_obj)].") exposed_obj.visible_message("[exposed_obj] rapidly fries as it's splashed with hot oil! Somehow.") exposed_obj.AddElement(/datum/element/fried_item, volume) - exposed_obj.reagents.add_reagent(/datum/reagent/consumable/cooking_oil, reac_volume) + exposed_obj.reagents.add_reagent(src.type, reac_volume) -/datum/reagent/consumable/cooking_oil/reaction_mob(mob/living/exposed_mob, method = TOUCH, reac_volume, show_message = 1, touch_protection = 0) - if(!(method == VAPOR || method == TOUCH) || isnull(holder) || (holder.chem_temp < fry_temperature)) +/datum/reagent/consumable/nutriment/fat/reaction_mob(mob/living/exposed_mob, methods = TOUCH, reac_volume, show_message = TRUE, touch_protection = 0) + . = ..() + if(!(methods & (VAPOR|TOUCH)) || isnull(holder) || (holder.chem_temp < fry_temperature)) //Directly coats the mob, and doesn't go into their bloodstream return - var/oil_damage = ((holder.chem_temp / fry_temperature) * 0.33) //Damage taken per unit - if(method & TOUCH) - oil_damage *= max(1 - touch_protection, 0) - var/FryLoss = round(min(38, oil_damage * reac_volume)) + var/burn_damage = ((holder.chem_temp / fry_temperature) * 0.33) //Damage taken per unit + if(methods & TOUCH) + burn_damage *= max(1 - touch_protection, 0) + var/FryLoss = round(min(38, burn_damage * reac_volume)) if(!HAS_TRAIT(exposed_mob, TRAIT_OIL_FRIED)) exposed_mob.visible_message("The boiling oil sizzles as it covers [exposed_mob]!", \ "You're covered in boiling oil!") @@ -159,16 +160,31 @@ addtimer(CALLBACK(exposed_mob, TYPE_PROC_REF(/mob/living, unfry_mob)), 3) if(FryLoss) exposed_mob.adjustFireLoss(FryLoss) - return TRUE -/datum/reagent/consumable/cooking_oil/reaction_turf(turf/open/exposed_turf, reac_volume) +/datum/reagent/consumable/nutriment/fat/reaction_turf(turf/open/exposed_turf, reac_volume) + . = ..() if(!istype(exposed_turf) || isgroundlessturf(exposed_turf) || (reac_volume < 5)) return - exposed_turf.MakeSlippery(TURF_WET_LUBE, min_wet_time = 10 SECONDS, wet_time_to_add = reac_volume * 1.5 SECONDS) exposed_turf.name = "deep-fried [initial(exposed_turf.name)]" exposed_turf.add_atom_colour(color, TEMPORARY_COLOUR_PRIORITY) +/datum/reagent/consumable/nutriment/fat/oil + name = "Vegetable Oil" + description = "A variety of cooking oil derived from plant fats. Used in food preparation and frying." + color = "#EADD6B" //RGB: 234, 221, 107 (based off of canola oil) + taste_mult = 0.8 + taste_description = "oil" + nutriment_factor = 7 //Not very healthy on its own + metabolization_rate = 10 * REAGENTS_METABOLISM + +/datum/reagent/consumable/nutriment/fat/oil/olive + name = "Olive Oil" + description = "A high quality oil, suitable for dishes where the oil is a key flavour." + taste_description = "olive oil" + color = "#DBCF5C" + nutriment_factor = 10 + /datum/reagent/consumable/sugar name = "Sugar" description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." @@ -178,7 +194,7 @@ taste_mult = 1.5 // stop sugar drowning out other flavours nutriment_factor = 10 * REAGENTS_METABOLISM metabolization_rate = 2 * REAGENTS_METABOLISM - overdose_threshold = 200 // Hyperglycaemic shock + overdose_threshold = 100 // Hyperglycaemic shock taste_description = "sweetness" /datum/reagent/consumable/sugar/overdose_start(mob/living/M) @@ -439,25 +455,6 @@ . = 1 ..() -/datum/reagent/consumable/cornoil - name = "Corn Oil" - description = "An oil derived from various types of corn." - nutriment_factor = 20 * REAGENTS_METABOLISM - color = "#302000" // rgb: 48, 32, 0 - chem_flags = CHEMICAL_RNG_GENERAL | CHEMICAL_RNG_FUN | CHEMICAL_GOAL_BOTANIST_HARVEST - taste_description = "slime" - -/datum/reagent/consumable/cornoil/reaction_turf(turf/open/T, reac_volume) - if (!istype(T)) - return - T.MakeSlippery(TURF_WET_LUBE, min_wet_time = 10 SECONDS, wet_time_to_add = reac_volume*2 SECONDS) - var/obj/effect/hotspot/hotspot = (locate(/obj/effect/hotspot) in T) - if(hotspot) - var/datum/gas_mixture/lowertemp = T.return_air() - lowertemp.set_temperature(max( min(lowertemp.return_temperature()-2000,lowertemp.return_temperature() / 2) ,TCMB)) - lowertemp.react(src) - qdel(hotspot) - /datum/reagent/consumable/enzyme name = "Universal Enzyme" description = "A universal enzyme used in the preparation of certain chemicals and foods." diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index 83835d7a0cb36..ce4231bfe48b2 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -9,8 +9,8 @@ /datum/chemical_reaction/cooking_oil name = "Cooking Oil" - id = /datum/reagent/consumable/cooking_oil - results = list(/datum/reagent/consumable/cooking_oil = 4) + id = /datum/reagent/consumable/nutriment/fat/oil + results = list(/datum/reagent/consumable/nutriment/fat/oil = 4) required_reagents = list(/datum/reagent/hydrogen = 1, /datum/reagent/oil = 1, /datum/reagent/consumable/sugar = 1, /datum/reagent/carbon = 1) /datum/chemical_reaction/lube @@ -29,7 +29,7 @@ name = "Spray Tan" id = /datum/reagent/spraytan results = list(/datum/reagent/spraytan = 2) - required_reagents = list(/datum/reagent/consumable/orangejuice = 1, /datum/reagent/consumable/cornoil = 1) + required_reagents = list(/datum/reagent/consumable/orangejuice = 1, /datum/reagent/consumable/nutriment/fat/oil = 1) /datum/chemical_reaction/impedrezene name = "Impedrezene" @@ -47,7 +47,7 @@ name = "Glycerol" id = /datum/reagent/glycerol results = list(/datum/reagent/glycerol = 1) - required_reagents = list(/datum/reagent/consumable/cornoil = 3, /datum/reagent/toxin/acid = 1) + required_reagents = list(/datum/reagent/consumable/nutriment/fat/oil = 3, /datum/reagent/toxin/acid = 1) /datum/chemical_reaction/sodiumchloride name = "Sodium Chloride" diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index 6fca3dfe74e6f..c1ea9196bd923 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -443,10 +443,10 @@ explosion(get_turf(holder.my_atom), 0, 2, 3) -/datum/chemical_reaction/slime/slimecornoil +/datum/chemical_reaction/slime/slimeoil name = "Slime Corn Oil" id = "m_cornoil" - results = list(/datum/reagent/consumable/cornoil = 10) + results = list(/datum/reagent/consumable/nutriment/fat/oil = 10) required_reagents = list(/datum/reagent/blood = 1) required_container = /obj/item/slime_extract/oil required_other = TRUE diff --git a/code/modules/reagents/reagent_containers/condiment.dm b/code/modules/reagents/reagent_containers/condiment.dm index b9f22c89e4e8f..c03d29bfe7d64 100644 --- a/code/modules/reagents/reagent_containers/condiment.dm +++ b/code/modules/reagents/reagent_containers/condiment.dm @@ -276,14 +276,13 @@ fill_icon_thresholds = null */ -/obj/item/reagent_containers/condiment/cooking_oil +/obj/item/reagent_containers/condiment/vegetable_oil name = "cooking oil" desc = "For all your deep-frying needs." icon_state = "cooking_oil" - list_reagents = list(/datum/reagent/consumable/cooking_oil = 50) + list_reagents = list(/datum/reagent/consumable/nutriment/fat/oil = 50) fill_icon_thresholds = null -/* /obj/item/reagent_containers/condiment/olive_oil name = "quality oil" desc = "For the fancy chef inside everyone." @@ -291,6 +290,7 @@ list_reagents = list(/datum/reagent/consumable/nutriment/fat/oil/olive = 50) fill_icon_thresholds = null +/* /obj/item/reagent_containers/condiment/yoghurt name = "yoghurt carton" desc = "Creamy and smooth." @@ -361,7 +361,7 @@ /datum/reagent/consumable/frostoil = list("condi_frostoil", "Coldsauce", "Leaves the tongue numb in its passage"), /datum/reagent/consumable/sodiumchloride = list("condi_salt", "Salt Shaker", "Salt. From space oceans, presumably"), /datum/reagent/consumable/blackpepper = list("condi_pepper", "Pepper Mill", "Often used to flavor food or make people sneeze"), - /datum/reagent/consumable/cornoil = list("condi_cornoil", "Corn Oil", "A delicious oil used in cooking. Made from corn"), + /datum/reagent/consumable/nutriment/fat/oil = list("condi_cornoil", "Corn Oil", "A delicious oil used in cooking. Made from corn"), /datum/reagent/consumable/sugar = list("condi_sugar", "Sugar", "Tasty spacey sugar!"), /datum/reagent/consumable/astrotame = list("condi_astrotame", "Astrotame", "The sweetness of a thousand sugars but none of the calories."), /datum/reagent/consumable/bbqsauce = list("condi_bbq", "BBQ sauce", "Hand wipes not included."), diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 197effcb27bfa..7737635e9eec9 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -295,12 +295,12 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/reagent_dispensers/peppertank, 30) MAPPING_DIRECTIONAL_HELPERS(/obj/structure/reagent_dispensers/virusfood, 30) -/obj/structure/reagent_dispensers/cooking_oil +/obj/structure/reagent_dispensers/nutriment/fat/oil name = "vat of cooking oil" desc = "A huge metal vat with a tap on the front. Filled with cooking oil for use in frying food." icon_state = "vat" anchored = TRUE - reagent_id = /datum/reagent/consumable/cooking_oil + reagent_id = /datum/reagent/consumable/nutriment/fat/oil /obj/structure/reagent_dispensers/plumbed name = "stationairy water tank" diff --git a/icons/hud/screen_alert.dmi b/icons/hud/screen_alert.dmi index 885ee8fae8697f9396cfd9d30ac901c8b536b264..dc9f39b99ec45a20a94b869f0c0b814fed700291 100644 GIT binary patch literal 136024 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�S!d?6Z^28r(RG!!f1in3s63_` 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 literal 128259 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%0Av%G9CHIprF_(LqAF;*sD(obn3H%Z>D7QS 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 delta 7784 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%0DKt;dy_SN%kFyheI4BZ=i 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 E0bL1(V*mgE diff --git a/icons/obj/food/spaghetti.dmi b/icons/obj/food/spaghetti.dmi index f3a1f8624165dda54967a9e5fe0c06b2ebe07dc0..6f50a5ab1008e521f7e15c5702d5ea346fd03fe2 100644 GIT binary patch literal 10620 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 literal 10193 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 diff --git a/tools/UpdatePaths/Scripts/11770_food_buffs.txt b/tools/UpdatePaths/Scripts/11770_food_buffs.txt new file mode 100644 index 0000000000000..a8d7790d72ba1 --- /dev/null +++ b/tools/UpdatePaths/Scripts/11770_food_buffs.txt @@ -0,0 +1 @@ +/obj/structure/reagent_dispensers/cooking_oil : /obj/structure/reagent_dispensers/nutriment/fat/oil{@OLD}