From fc20b6e1ea08d9b26ba522b84050f03217601a4b Mon Sep 17 00:00:00 2001 From: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com> Date: Thu, 21 Apr 2022 17:56:46 -0600 Subject: [PATCH] Allows processable to require a table (#66257) --- code/datums/elements/food/processable.dm | 15 +++++++- code/game/objects/items/food/bread.dm | 20 +++++----- code/game/objects/items/food/cake.dm | 48 ++++++++++++------------ code/game/objects/items/food/dough.dm | 8 ++-- code/game/objects/items/food/lizard.dm | 12 +++--- code/game/objects/items/food/meat.dm | 29 +++++++------- code/game/objects/items/food/misc.dm | 2 +- code/game/objects/items/food/moth.dm | 4 +- code/game/objects/items/food/pie.dm | 8 ++-- code/game/objects/items/food/pizza.dm | 8 ++-- 10 files changed, 84 insertions(+), 70 deletions(-) diff --git a/code/datums/elements/food/processable.dm b/code/datums/elements/food/processable.dm index c421acc3393..6a9d98ced3c 100644 --- a/code/datums/elements/food/processable.dm +++ b/code/datums/elements/food/processable.dm @@ -10,8 +10,10 @@ var/time_to_process ///Amount of the resulting actor this will create var/amount_created + ///Whether or not the atom being processed has to be on a table or tray to process it + var/table_required -/datum/element/processable/Attach(datum/target, tool_behaviour, result_atom_type, amount_created = 3, time_to_process = 20) +/datum/element/processable/Attach(datum/target, tool_behaviour, result_atom_type, amount_created = 3, time_to_process = 20, table_required = FALSE) . = ..() if(!isatom(target)) return ELEMENT_INCOMPATIBLE @@ -20,6 +22,7 @@ src.amount_created = amount_created src.time_to_process = time_to_process src.result_atom_type = result_atom_type + src.table_required = table_required RegisterSignal(target, COMSIG_ATOM_TOOL_ACT(tool_behaviour), .proc/try_process) RegisterSignal(target, COMSIG_PARENT_EXAMINE, .proc/OnExamine) @@ -31,6 +34,16 @@ /datum/element/processable/proc/try_process(datum/source, mob/living/user, obj/item/I, list/mutable_recipes) SIGNAL_HANDLER + if(table_required) + var/obj/item/found_item = source + var/found_location = found_item.loc + var/found_turf = isturf(found_location) + var/found_table = locate(/obj/structure/table) in found_location + var/found_tray = locate(/obj/item/storage/bag/tray) in found_location + if(!found_turf && !istype(found_location, /obj/item/storage/bag/tray) || found_turf && !(found_table || found_tray)) + to_chat(user, span_notice("You cannot make [initial(result_atom_type.name)] here! You need a table or at least a tray.")) + return + mutable_recipes += list(list(TOOL_PROCESSING_RESULT = result_atom_type, TOOL_PROCESSING_AMOUNT = amount_created, TOOL_PROCESSING_TIME = time_to_process)) ///So people know what the frick they're doing without reading from a wiki page (I mean they will inevitably but i'm trying to help, ok?) diff --git a/code/game/objects/items/food/bread.dm b/code/game/objects/items/food/bread.dm index ee2c2fd0c8f..c4fce9b5821 100644 --- a/code/game/objects/items/food/bread.dm +++ b/code/game/objects/items/food/bread.dm @@ -39,7 +39,7 @@ AddComponent(/datum/component/customizable_reagent_holder, /obj/item/food/bread/empty, CUSTOM_INGREDIENT_ICON_FILL, max_ingredients = 8) /obj/item/food/bread/plain/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/plain, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/plain, 5, 30, table_required = TRUE) /obj/item/food/breadslice/plain name = "bread slice" @@ -86,7 +86,7 @@ /obj/item/food/bread/meat/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/meat, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/meat, 5, 30, table_required = TRUE) /obj/item/food/breadslice/meat name = "meatbread slice" @@ -104,7 +104,7 @@ tastes = list("bread" = 10, "meat" = 10) /obj/item/food/bread/sausage/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/sausage, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/sausage, 5, 30, table_required = TRUE) /obj/item/food/breadslice/sausage name = "sausagebread slice" @@ -123,7 +123,7 @@ foodtypes = GRAIN | MEAT /obj/item/food/bread/xenomeat/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/xenomeat, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/xenomeat, 5, 30, table_required = TRUE) /obj/item/food/breadslice/xenomeat name = "xenomeatbread slice" @@ -141,7 +141,7 @@ foodtypes = GRAIN | MEAT | TOXIC /obj/item/food/bread/spidermeat/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/spidermeat, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/spidermeat, 5, 30, table_required = TRUE) /obj/item/food/breadslice/spidermeat name = "spider meat bread slice" @@ -159,7 +159,7 @@ foodtypes = GRAIN | FRUIT /obj/item/food/bread/banana/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/banana, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/banana, 5, 30, table_required = TRUE) /obj/item/food/breadslice/banana name = "banana-nut bread slice" @@ -178,7 +178,7 @@ venue_value = FOOD_PRICE_TRASH /obj/item/food/bread/tofu/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/tofu, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/tofu, 5, 30, table_required = TRUE) /obj/item/food/breadslice/tofu name = "tofubread slice" @@ -196,7 +196,7 @@ foodtypes = GRAIN | DAIRY /obj/item/food/bread/creamcheese/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/creamcheese, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/creamcheese, 5, 30, table_required = TRUE) /obj/item/food/breadslice/creamcheese name = "cream cheese bread slice" @@ -210,7 +210,7 @@ desc = "It's bread, customized to your wildest dreams." /obj/item/food/bread/empty/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/empty, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/empty, 5, 30, table_required = TRUE) /obj/item/food/bread/mimana name = "mimana bread" @@ -221,7 +221,7 @@ foodtypes = GRAIN | FRUIT /obj/item/food/bread/mimana/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/mimana, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/mimana, 5, 30, table_required = TRUE) /obj/item/food/breadslice/mimana name = "mimana bread slice" diff --git a/code/game/objects/items/food/cake.dm b/code/game/objects/items/food/cake.dm index b11e60de46e..2de47996471 100644 --- a/code/game/objects/items/food/cake.dm +++ b/code/game/objects/items/food/cake.dm @@ -28,7 +28,7 @@ /obj/item/food/cake/plain/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/plain, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/plain, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/plain name = "plain cake slice" @@ -48,7 +48,7 @@ /obj/item/food/cake/carrot/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/carrot, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/carrot, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/carrot name = "carrot cake slice" @@ -67,7 +67,7 @@ foodtypes = GRAIN | DAIRY | MEAT | GROSS | SUGAR /obj/item/food/cake/brain/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/brain, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/brain, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/brain name = "brain cake slice" @@ -88,7 +88,7 @@ /obj/item/food/cake/cheese/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/cheese, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/cheese, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/cheese name = "cheese cake slice" @@ -108,7 +108,7 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/cake/orange/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/orange, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/orange, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/orange name = "orange cake slice" @@ -127,7 +127,7 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/cake/lime/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/lime, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/lime, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/lime name = "lime cake slice" @@ -146,7 +146,7 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/cake/lemon/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/lemon, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/lemon, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/lemon name = "lemon cake slice" @@ -165,7 +165,7 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/cake/chocolate/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/chocolate, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/chocolate, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/chocolate name = "chocolate cake slice" @@ -183,7 +183,7 @@ foodtypes = GRAIN | DAIRY | JUNKFOOD | SUGAR /obj/item/food/cake/birthday/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/birthday, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/birthday, 5, 30, table_required = TRUE) /obj/item/food/cake/birthday/microwave_act(obj/machinery/microwave/microwave) //super sekrit club new /obj/item/clothing/head/hardhat/cakehat(get_turf(src)) @@ -207,7 +207,7 @@ tastes = list("cake" = 3, "a Vlad's Salad" = 1) /obj/item/food/cake/birthday/energy/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/birthday/energy, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/birthday/energy, 5, 30, table_required = TRUE) /obj/item/food/cake/birthday/energy/proc/energy_bite(mob/living/user) to_chat(user, "As you eat the cake, you accidentally hurt yourself on the embedded energy sword!") @@ -255,7 +255,7 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/cake/apple/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/apple, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/apple, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/apple name = "apple cake slice" @@ -273,7 +273,7 @@ foodtypes = GRAIN | DAIRY | SUGAR /obj/item/food/cake/slimecake/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/slimecake, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/slimecake, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/slimecake name = "slime cake slice" @@ -292,7 +292,7 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/cake/pumpkinspice/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/pumpkinspice, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/pumpkinspice, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/pumpkinspice name = "pumpkin spice cake slice" @@ -310,7 +310,7 @@ foodtypes = GRAIN | DAIRY | FRUIT | SUGAR /obj/item/food/cake/bsvc/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/bsvc, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/bsvc, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/bsvc name = "blackberry and strawberry vanilla cake slice" @@ -328,7 +328,7 @@ foodtypes = GRAIN | DAIRY | FRUIT | SUGAR /obj/item/food/cake/bscc/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/bscc, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/bscc, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/bscc name = "strawberry chocolate cake slice" @@ -346,7 +346,7 @@ foodtypes = GRAIN | DAIRY | SUGAR /obj/item/food/cake/holy_cake/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/holy_cake_slice, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/holy_cake_slice, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/holy_cake_slice name = "angel food cake slice" @@ -365,7 +365,7 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/cake/pound_cake/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/pound_cake_slice, 7, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/pound_cake_slice, 7, 30, table_required = TRUE) /obj/item/food/cakeslice/pound_cake_slice name = "pound cake slice" @@ -384,7 +384,7 @@ foodtypes = GRAIN | GROSS /obj/item/food/cake/hardware_cake/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/hardware_cake_slice, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/hardware_cake_slice, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/hardware_cake_slice name = "hardware cake slice" @@ -403,7 +403,7 @@ foodtypes = GRAIN | SUGAR | DAIRY /obj/item/food/cake/vanilla_cake/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/vanilla_slice, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/vanilla_slice, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/vanilla_slice name = "vanilla cake slice" @@ -422,7 +422,7 @@ foodtypes = GRAIN | SUGAR | DAIRY /obj/item/food/cake/clown_cake/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/clown_slice, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/clown_slice, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/clown_slice name = "clown cake slice" @@ -441,7 +441,7 @@ foodtypes = GRAIN | DAIRY | FRUIT | SUGAR /obj/item/food/cake/trumpet/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/trumpet, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/trumpet, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/trumpet name = "spaceman's cake" @@ -460,7 +460,7 @@ foodtypes = GRAIN | DAIRY | SUGAR /obj/item/food/cake/brioche/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/brioche, 6, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/brioche, 6, 30, table_required = TRUE) /obj/item/food/cakeslice/brioche name = "brioche cake slice" @@ -479,7 +479,7 @@ foodtypes = DAIRY | FRUIT | SUGAR /obj/item/food/cake/pavlova/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/pavlova, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/pavlova, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/pavlova name = "pavlova slice" @@ -502,7 +502,7 @@ foodtypes = GRAIN | DAIRY | FRUIT | SUGAR /obj/item/food/cake/fruit/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/fruit, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/fruit, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/fruit name = "english fruitcake slice" diff --git a/code/game/objects/items/food/dough.dm b/code/game/objects/items/food/dough.dm index 0e33f790f67..36c9076fc70 100644 --- a/code/game/objects/items/food/dough.dm +++ b/code/game/objects/items/food/dough.dm @@ -14,7 +14,7 @@ // Dough + rolling pin = flat dough /obj/item/food/dough/MakeProcessable() - AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/food/flatdough, 1, 30) + AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/food/flatdough, 1, 30, table_required = TRUE) /obj/item/food/flatdough name = "flat dough" @@ -30,7 +30,7 @@ // sliceable into 3xdoughslices /obj/item/food/flatdough/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/doughslice, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/doughslice, 3, 30, table_required = TRUE) /obj/item/food/pizzabread name = "pizza bread" @@ -87,7 +87,7 @@ AddComponent(/datum/component/bakeable, /obj/item/food/cake/plain, rand(70 SECONDS, 90 SECONDS), TRUE, TRUE) /obj/item/food/cakebatter/MakeProcessable() - AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/food/piedough, 1, 30) + AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/food/piedough, 1, 30, table_required = TRUE) /obj/item/food/piedough name = "pie dough" @@ -102,7 +102,7 @@ AddComponent(/datum/component/bakeable, /obj/item/food/pie/plain, rand(30 SECONDS, 45 SECONDS), TRUE, TRUE) /obj/item/food/piedough/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/rawpastrybase, 6, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/rawpastrybase, 6, 30, table_required = TRUE) /obj/item/food/rawpastrybase name = "raw pastry base" diff --git a/code/game/objects/items/food/lizard.dm b/code/game/objects/items/food/lizard.dm index dd1662ac4ef..343602bc10a 100644 --- a/code/game/objects/items/food/lizard.dm +++ b/code/game/objects/items/food/lizard.dm @@ -51,7 +51,7 @@ w_class = WEIGHT_CLASS_SMALL /obj/item/food/headcheese/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/headcheese_slice, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/headcheese_slice, 5, 30, table_required = TRUE) /obj/item/food/headcheese_slice name = "headcheese slice" @@ -289,7 +289,7 @@ AddComponent(/datum/component/bakeable, /obj/item/food/bread/root, rand(30 SECONDS, 45 SECONDS), TRUE, TRUE) /obj/item/food/rootdough/MakeProcessable() - AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/food/flatrootdough, 1, 30) + AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/food/flatrootdough, 1, 30, table_required = TRUE) /obj/item/food/flatrootdough name = "flat rootdough" @@ -301,7 +301,7 @@ foodtypes = VEGETABLES | NUTS /obj/item/food/flatrootdough/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/rootdoughslice, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/rootdoughslice, 3, 30, table_required = TRUE) /obj/item/food/flatrootdough/MakeGrillable() AddComponent(/datum/component/grillable, /obj/item/food/root_flatbread, rand(25 SECONDS, 35 SECONDS), TRUE, TRUE) @@ -317,7 +317,7 @@ foodtypes = VEGETABLES | NUTS /obj/item/food/rootdoughslice/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/spaghetti/nizaya, 1, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/spaghetti/nizaya, 1, 30, table_required = TRUE) /obj/item/food/rootdoughslice/MakeBakeable() AddComponent(/datum/component/bakeable, /obj/item/food/rootroll, rand(30 SECONDS, 45 SECONDS), TRUE, TRUE) @@ -362,7 +362,7 @@ AddComponent(/datum/component/customizable_reagent_holder, /obj/item/food/bread/empty, CUSTOM_INGREDIENT_ICON_FILL, max_ingredients = 8) /obj/item/food/bread/root/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/root, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/breadslice/root, 5, 30, table_required = TRUE) /obj/item/food/breadslice/root name = "rootbread slice" @@ -514,7 +514,7 @@ foodtypes = NUTS | SUGAR /obj/item/food/cake/korta_brittle/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/korta_brittle, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cakeslice/korta_brittle, 5, 30, table_required = TRUE) /obj/item/food/cakeslice/korta_brittle name = "korta brittle slice" diff --git a/code/game/objects/items/food/meat.dm b/code/game/objects/items/food/meat.dm index 591edb8ff3d..69a0e148ea0 100644 --- a/code/game/objects/items/food/meat.dm +++ b/code/game/objects/items/food/meat.dm @@ -164,7 +164,8 @@ AddComponent(/datum/component/grillable, meatball_type, rand(30 SECONDS, 40 SECONDS), TRUE) /obj/item/food/raw_meatball/MakeProcessable() - AddElement(/datum/element/processable, TOOL_ROLLINGPIN, patty_type, 1, 20) + AddElement(/datum/element/processable, TOOL_ROLLINGPIN, patty_type, 1, 20, table_required = TRUE) + /obj/item/food/raw_meatball/human name = "strange raw meatball" meatball_type = /obj/item/food/meatball/human @@ -316,8 +317,8 @@ venue_value = FOOD_PRICE_CHEAP /obj/item/food/sausage/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/salami, 6, 30) - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/sausage/american, 1, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/salami, 6, 30, table_required = TRUE) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/sausage/american, 1, 30, table_required = TRUE) /obj/item/food/sausage/american name = "american sausage" @@ -485,7 +486,7 @@ icon_state = "sashimi" food_reagents = list(/datum/reagent/consumable/nutriment/protein = 10, /datum/reagent/consumable/capsaicin = 9, /datum/reagent/consumable/nutriment/vitamin = 4) tastes = list("fish" = 1, "hot peppers" = 1) - foodtypes = SEAFOOD + foodtypes = SEAFOOD w_class = WEIGHT_CLASS_TINY //total price of this dish is 20 and a small amount more for soy sauce, all of which are available at the orders console venue_value = FOOD_PRICE_CHEAP @@ -637,7 +638,7 @@ AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/plain, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe? /obj/item/food/meat/slab/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/plain, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/plain, 3, 30, table_required = TRUE) ///////////////////////////////////// HUMAN MEATS ////////////////////////////////////////////////////// @@ -651,7 +652,7 @@ AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/plain/human, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe? /obj/item/food/meat/slab/human/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/plain/human, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/plain/human, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/human/mutant/slime icon_state = "slimemeat" @@ -806,7 +807,7 @@ AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/killertomato, rand(70 SECONDS, 85 SECONDS), TRUE, TRUE) /obj/item/food/meat/slab/killertomato/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/killertomato, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/killertomato, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/bear name = "bear meat" @@ -817,7 +818,7 @@ foodtypes = RAW | MEAT /obj/item/food/meat/slab/bear/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/bear, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/bear, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/bear/MakeGrillable() AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/bear, rand(40 SECONDS, 70 SECONDS), TRUE, TRUE) @@ -836,7 +837,7 @@ foodtypes = RAW | MEAT /obj/item/food/meat/slab/xeno/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/xeno, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/xeno, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/xeno/MakeGrillable() AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/xeno, rand(40 SECONDS, 70 SECONDS), TRUE, TRUE) @@ -850,7 +851,7 @@ foodtypes = RAW | MEAT | TOXIC /obj/item/food/meat/slab/spider/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/spider, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/spider, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/spider/MakeGrillable() AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/spider, rand(40 SECONDS, 70 SECONDS), TRUE, TRUE) @@ -911,7 +912,7 @@ foodtypes = RAW | MEAT /obj/item/food/meat/slab/gondola/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/gondola, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/gondola, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/gondola/MakeGrillable() AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/gondola, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe? @@ -926,7 +927,7 @@ /obj/item/food/meat/slab/penguin/MakeProcessable() . = ..() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/penguin, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/penguin, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/penguin/MakeGrillable() AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/penguin, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe? @@ -960,7 +961,7 @@ tastes = list("chicken" = 1) /obj/item/food/meat/slab/chicken/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/chicken, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/chicken, 3, 30, table_required = TRUE) /obj/item/food/meat/slab/chicken/MakeGrillable() AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/chicken, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe? (no this is chicken) @@ -1277,7 +1278,7 @@ venue_value = FOOD_PRICE_EXOTIC /obj/item/food/beef_wellington/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/beef_wellington_slice, 3, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/beef_wellington_slice, 3, 30, table_required = TRUE) /obj/item/food/beef_wellington_slice name = "beef wellington slice" diff --git a/code/game/objects/items/food/misc.dm b/code/game/objects/items/food/misc.dm index f4eefd5872a..2ec14fe9586 100644 --- a/code/game/objects/items/food/misc.dm +++ b/code/game/objects/items/food/misc.dm @@ -35,7 +35,7 @@ AddComponent(/datum/component/food_storage) /obj/item/food/cheese/wheel/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cheese/wedge, 5, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/cheese/wedge, 5, 30, table_required = TRUE) /obj/item/food/cheese/wheel/MakeBakeable() AddComponent(/datum/component/bakeable, /obj/item/food/baked_cheese, rand(20 SECONDS, 25 SECONDS), TRUE, TRUE) diff --git a/code/game/objects/items/food/moth.dm b/code/game/objects/items/food/moth.dm index c5d8b48dbae..10a728c00db 100644 --- a/code/game/objects/items/food/moth.dm +++ b/code/game/objects/items/food/moth.dm @@ -141,7 +141,7 @@ burns_in_oven = TRUE /obj/item/food/green_lasagne/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/green_lasagne_slice, 6, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/green_lasagne_slice, 6, 30, table_required = TRUE) /obj/item/food/green_lasagne_slice name = "green lasagne al forno slice" @@ -178,7 +178,7 @@ burns_in_oven = TRUE /obj/item/food/big_baked_rice/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/lil_baked_rice, 6, 30) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/lil_baked_rice, 6, 30, table_required = TRUE) /obj/item/food/lil_baked_rice name = "lil baked rice" diff --git a/code/game/objects/items/food/pie.dm b/code/game/objects/items/food/pie.dm index ee91bdd56ca..844e7a29b03 100644 --- a/code/game/objects/items/food/pie.dm +++ b/code/game/objects/items/food/pie.dm @@ -154,7 +154,7 @@ foodtypes = GRAIN | VEGETABLES | SUGAR /obj/item/food/pie/pumpkinpie/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/pumpkin, 5, 20) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/pumpkin, 5, 20, table_required = TRUE) /obj/item/food/pieslice/pumpkin name = "pumpkin pie slice" @@ -213,7 +213,7 @@ foodtypes = GRAIN | VEGETABLES /obj/item/food/pie/blumpkinpie/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/blumpkin, 5, 20) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/blumpkin, 5, 20, table_required = TRUE) /obj/item/food/pieslice/blumpkin name = "blumpkin pie slice" @@ -233,7 +233,7 @@ venue_value = FOOD_PRICE_EXOTIC /obj/item/food/pie/dulcedebatata/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/dulcedebatata, 5, 20) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/dulcedebatata, 5, 20, table_required = TRUE) /obj/item/food/pieslice/dulcedebatata name = "dulce de batata slice" @@ -260,7 +260,7 @@ foodtypes = NUTS | SUGAR /obj/item/food/pie/baklava/MakeProcessable() - AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/baklava, 6, 20) + AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/pieslice/baklava, 6, 20, table_required = TRUE) /obj/item/food/pieslice/baklava name = "baklava dish" diff --git a/code/game/objects/items/food/pizza.dm b/code/game/objects/items/food/pizza.dm index e5173cdf7b3..f091eae97ff 100644 --- a/code/game/objects/items/food/pizza.dm +++ b/code/game/objects/items/food/pizza.dm @@ -23,9 +23,9 @@ /obj/item/food/pizza/MakeProcessable() if (slice_type) - AddElement(/datum/element/processable, TOOL_KNIFE, slice_type, 6, 30) - AddElement(/datum/element/processable, TOOL_SAW, slice_type, 6, 45) - AddElement(/datum/element/processable, TOOL_SCALPEL, slice_type, 6, 60) + AddElement(/datum/element/processable, TOOL_KNIFE, slice_type, 6, 30, table_required = TRUE) + AddElement(/datum/element/processable, TOOL_SAW, slice_type, 6, 45, table_required = TRUE) + AddElement(/datum/element/processable, TOOL_SCALPEL, slice_type, 6, 60, table_required = TRUE) // Pizza Slice /obj/item/food/pizzaslice @@ -36,7 +36,7 @@ decomp_type = /obj/item/food/pizzaslice/moldy /obj/item/food/pizzaslice/MakeProcessable() - AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/stack/sheet/pizza, 1, 10) + AddElement(/datum/element/processable, TOOL_ROLLINGPIN, /obj/item/stack/sheet/pizza, 1, 10, table_required = TRUE) /obj/item/food/pizza/margherita