Files
Bubberstation/code/game/objects/items/food/burgers.dm
Ghom 1f3894e793 Crafting refactor, implementing materials (#89465)
My original plan was to just implement materials into crafting so that
items would inherit the materials of their components, allowing for some
interesting stuff if the material flags of the item allow it. However to
my dismay crafting is a pile of old tech debt, starting from the old
`del_reqs` and `CheckParts` which still contain lines about old janky
bandaids that are no longer in use nor reachable, up to the
`customizable_reagent_holder` component which has some harddel issues
when your custom food is sliced, and items used in food recipes not
being deleted and instead stored inside the result with no purpose as
well as other inconsistencies like stack recipes that transfer materials
having counterparts in the UI that don't do that.

EDIT: Several things have come up while working on this, so I apologise
that it ended up changing over 100+ files. I managed to atomize some of
the changes, but it's a bit tedious.

EDIT: TLDR because I was told this section is too vague and there's too
much going on. This PR:
- Improves the dated crafting code (not the UI).
- replaced `atom/CheckParts` and `crafting_recipe/on_craft_completion`
with `atom/on_craft_completion`.
- Reqs used in food recipes are now deleted by default and not stored
inside the result (they did nothing).
- Renames the customizable_reagent_holder comp and improves it (No
harddels/ref issues).
- Adds a unit test that tries to craft all recipes to see what's wrong
(it skips some of the much more specific reqs for now).
- In the unit test is also the code to make sure materials of the
crafted item and a non-crafted item of the same type are roughly the
same, so far only applied to food.
- Some mild material/food refactoring around the fact that food item
code has been changed to support materials.

Improving the backbone of the crafting system. Also materials and food
code.

🆑
refactor: Refactored crafting backend. Report possible pesky bugs.
balance: the MEAT backpack (from the MEAT cargo pack) may be a smidge
different because of code standardization.
/🆑
2025-06-05 20:05:13 -04:00

721 lines
25 KiB
Plaintext

/obj/item/food/burger
icon = 'icons/obj/food/burgerbread.dmi'
icon_state = "hburger"
inhand_icon_state = "burger"
bite_consumption = 3
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 1,
)
tastes = list("bun" = 2, "beef patty" = 4)
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 = "plain burger"
desc = "The cornerstone of every nutritious breakfast."
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 1,
)
foodtypes = GRAIN | MEAT
custom_price = PAYCHECK_CREW * 0.8
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/plain/Initialize(mapload)
. = ..()
if(!prob(1))
return
new/obj/effect/particle_effect/fluid/smoke(get_turf(src))
playsound(src, 'sound/effects/smoke.ogg', 50, TRUE)
visible_message(span_warning("Oh, ye gods! [src] is ruined! But what if...?"))
name = "steamed ham"
desc = pick("Ahh, Head of Personnel, welcome. I hope you're prepared for an unforgettable luncheon!",
"And you call these steamed hams despite the fact that they are obviously microwaved?",
"Aurora Station 13? At this time of shift, in this time of year, in this sector of space, localized entirely within your freezer?",
"You know, these hamburgers taste quite similar to the ones they have at the Maltese Falcon.")
/obj/item/food/burger/human
name = "human burger"
desc = "A bloody burger."
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 5,
)
tastes = list("bun" = 2, "long pig" = 4)
foodtypes = MEAT | GRAIN
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/human/on_craft_completion(list/components, datum/crafting_recipe/current_recipe, atom/crafter)
. = ..()
for(var/datum/material/meat/mob_meat/mob_meat_material in custom_materials)
if(mob_meat_material.subjectname)
name = "[mob_meat_material.subjectname] burger"
else if(mob_meat_material.subjectjob)
name = "[mob_meat_material.subjectjob] burger"
/obj/item/food/burger/corgi
name = "corgi burger"
desc = "You monster."
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("bun" = 4, "corgi meat" = 2)
foodtypes = GRAIN | MEAT
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/appendix
name = "appendix burger"
desc = "Tastes like appendicitis."
icon_state = "appendixburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("bun" = 4, "grass" = 2)
foodtypes = GRAIN | MEAT | GORE
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/fish
name = "fillet -o- carp sandwich"
desc = "Almost like a carp is yelling somewhere... Give me back that fillet -o- carp, give me that carp."
icon_state = "fishburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("bun" = 4, "fish" = 4)
foodtypes = GRAIN | SEAFOOD | DAIRY
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_3
/obj/item/food/burger/tofu
name = "tofu burger"
desc = "What.. is that meat?"
icon_state = "tofuburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 3,
)
tastes = list("bun" = 4, "tofu" = 4)
foodtypes = GRAIN | VEGETABLES
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/roburger
name = "roburger"
desc = "The lettuce is the only organic component. Beep."
icon_state = "roburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 8,
/datum/reagent/cyborg_mutation_nanomachines = 6,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("bun" = 4, "lettuce" = 2, "sludge" = 1)
foodtypes = GRAIN | TOXIC
venue_value = FOOD_PRICE_EXOTIC
/obj/item/food/burger/roburger/big
desc = "This massive patty looks like poison. Beep."
max_volume = 120
food_reagents = list(
/datum/reagent/consumable/nutriment = 11,
/datum/reagent/cyborg_mutation_nanomachines = 80,
/datum/reagent/consumable/nutriment/vitamin = 15,
)
/obj/item/food/burger/xeno
name = "xenoburger"
desc = "Smells caustic. Tastes like heresy."
icon_state = "xburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 5,
)
tastes = list("bun" = 4, "acid" = 4)
foodtypes = GRAIN | MEAT
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/bearger
name = "bearger"
desc = "Best served rawr."
icon_state = "bearger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 5,
)
tastes = list("bun" = 2, "meat" = 2, "salmon" = 2)
foodtypes = GRAIN | MEAT
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/clown
name = "clown burger"
desc = "This tastes funny..."
icon_state = "clownburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("bun" = 2, "a bad joke" = 4)
foodtypes = GRAIN
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/mime
name = "mime burger"
desc = "Its taste defies language."
icon_state = "mimeburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 6,
/datum/reagent/consumable/nutriment/protein = 9,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/consumable/nothing = 6,
)
foodtypes = GRAIN
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/brain
name = "brainburger"
desc = "A strange looking burger. It looks almost sentient."
icon_state = "brainburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 6,
/datum/reagent/medicine/mannitol = 6,
/datum/reagent/consumable/nutriment/vitamin = 5,
/datum/reagent/consumable/nutriment/protein = 6,
)
tastes = list("bun" = 4, "brains" = 2)
foodtypes = GRAIN | MEAT | GORE
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/ghost
name = "ghost burger"
desc = "Too Spooky!"
icon_state = "ghostburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 5,
/datum/reagent/consumable/nutriment/protein = 4,
/datum/reagent/consumable/nutriment/vitamin = 12,
/datum/reagent/consumable/salt = 5,
)
tastes = list("bun" = 2, "ectoplasm" = 4)
foodtypes = GRAIN
alpha = 170
verb_say = "moans"
verb_yell = "wails"
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_3
preserved_food = TRUE // It's made of ghosts
/obj/item/food/burger/ghost/Initialize(mapload, starting_reagent_purity, no_base_reagents)
. = ..()
START_PROCESSING(SSobj, src)
AddComponent(/datum/component/ghost_edible, bite_consumption = bite_consumption)
/obj/item/food/burger/ghost/make_germ_sensitive()
return // This burger moves itself so it shouldn't pick up germs from walking onto the floor
/obj/item/food/burger/ghost/process()
if(!isturf(loc)) //no floating out of bags
return
var/paranormal_activity = rand(100)
switch(paranormal_activity)
if(97 to 100)
audible_message("[src] rattles a length of chain.")
playsound(loc, 'sound/misc/chain_rattling.ogg', 300, TRUE)
if(91 to 96)
say(pick("OoOoOoo.", "OoooOOooOoo!!"))
if(84 to 90)
dir = pick(NORTH, SOUTH, EAST, WEST, NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST)
step(src, dir)
if(71 to 83)
step(src, dir)
if(65 to 70)
var/obj/machinery/light/light = locate(/obj/machinery/light) in view(4, src)
light?.flicker()
if(62 to 64)
playsound(loc, SFX_HALLUCINATION_I_SEE_YOU, 50, TRUE, ignore_walls = FALSE)
if(61)
visible_message("[src] spews out a glob of ectoplasm!")
new /obj/effect/decal/cleanable/greenglow/ecto(loc)
playsound(loc, 'sound/effects/splat.ogg', 200, TRUE)
/obj/item/food/burger/ghost/Destroy()
STOP_PROCESSING(SSobj, src)
. = ..()
/obj/item/food/burger/red
name = "red burger"
desc = "Perfect for hiding the fact that it's burnt to a crisp."
icon_state = "cburger"
color = COLOR_RED
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/red = 10,
)
tastes = list("bun" = 2, "red" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/orange
name = "orange burger"
desc = "Contains 0% juice."
icon_state = "cburger"
color = COLOR_ORANGE
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/orange = 10,
)
tastes = list("bun" = 2, "orange" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/yellow
name = "yellow burger"
desc = "Bright to the last bite."
icon_state = "cburger"
color = COLOR_YELLOW
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/yellow = 10,
)
tastes = list("bun" = 2, "yellow" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/green
name = "green burger"
desc = "It's not tainted meat, it's painted meat!"
icon_state = "cburger"
color = COLOR_GREEN
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/green = 10,
)
tastes = list("bun" = 2, "green" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/blue
name = "blue burger"
desc = "Is this blue rare?"
icon_state = "cburger"
color = COLOR_BLUE
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/blue = 10,
)
tastes = list("bun" = 2, "blue" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/purple
name = "purple burger"
desc = "Regal and low class at the same time."
icon_state = "cburger"
color = COLOR_PURPLE
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/purple = 10,
)
tastes = list("bun" = 2, "purple" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/black
name = "black burger"
desc = "This is overcooked."
icon_state = "cburger"
color = COLOR_ALMOST_BLACK
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/black = 10,
)
tastes = list("bun" = 2, "black" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/white
name = "white burger"
desc = "Delicous titanium!"
icon_state = "cburger"
color = COLOR_WHITE
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/colorful_reagent/powder/white = 10,
)
tastes = list("bun" = 2, "white" = 2)
foodtypes = GRAIN | MEAT
crafting_complexity = FOOD_COMPLEXITY_2
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/spell
name = "spell burger"
desc = "This is absolutely Ei Nath."
icon_state = "spellburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 6,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 10,
)
tastes = list("bun" = 4, "magic" = 2)
foodtypes = GRAIN
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/bigbite
name = "big bite burger"
desc = "Forget the Big Mac. THIS is the future!"
icon_state = "bigbiteburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
/datum/reagent/consumable/nutriment/protein = 10,
/datum/reagent/consumable/nutriment/vitamin = 5,
)
tastes = list("bun" = 2, "meat" = 10)
w_class = WEIGHT_CLASS_NORMAL
foodtypes = GRAIN | MEAT | DAIRY
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT)
/obj/item/food/burger/jelly
name = "jelly burger"
desc = "Culinary delight..?"
icon_state = "jellyburger"
tastes = list("bun" = 4, "jelly" = 2)
foodtypes = GRAIN | MEAT
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/jelly/slime
food_reagents = list(
/datum/reagent/consumable/nutriment = 6,
/datum/reagent/toxin/slimejelly = 6,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
foodtypes = GRAIN | TOXIC
/obj/item/food/burger/jelly/cherry
food_reagents = list(
/datum/reagent/consumable/nutriment = 6,
/datum/reagent/consumable/cherryjelly = 6,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
foodtypes = GRAIN | FRUIT
/obj/item/food/burger/superbite
name = "super bite burger"
desc = "This is a mountain of a burger. FOOD!"
icon_state = "superbiteburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 26,
/datum/reagent/consumable/nutriment/protein = 40,
/datum/reagent/consumable/nutriment/vitamin = 13,
)
w_class = WEIGHT_CLASS_NORMAL
bite_consumption = 7
max_volume = 100
tastes = list("bun" = 4, "type two diabetes" = 10)
foodtypes = GRAIN | MEAT | DAIRY | VEGETABLES
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_5
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT * 2)
/obj/item/food/burger/superbite/suicide_act(mob/living/user)
user.visible_message(span_suicide("[user] starts to eat [src] in one bite, it looks like [user.p_theyre()] trying to commit suicide!"))
var/datum/component/edible/component = GetComponent(/datum/component/edible)
component?.TakeBite(user, user)
return OXYLOSS
/obj/item/food/burger/fivealarm
name = "five alarm burger"
desc = "HOT! HOT!"
icon_state = "fivealarmburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/capsaicin = 5,
/datum/reagent/consumable/condensedcapsaicin = 5,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("extreme heat" = 4, "bun" = 2)
foodtypes = GRAIN | MEAT | VEGETABLES
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/rat
name = "rat burger"
desc = "Pretty much what you'd expect..."
icon_state = "ratburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 2,
)
tastes = list("dead rat" = 4, "bun" = 2)
foodtypes = GRAIN | MEAT | GORE | RAW
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/baseball
name = "home run baseball burger"
desc = "It's still warm. The steam coming off of it looks like baseball."
icon_state = "baseball"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 2,
)
tastes = list("bun" = 2, "a home run" = 4)
foodtypes = GRAIN | GROSS
custom_price = PAYCHECK_CREW * 0.8
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = /obj/item/melee/baseball_bat::custom_materials
/obj/item/food/burger/baconburger
name = "bacon burger"
desc = "The perfect combination of all things American."
icon_state = "baconburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 2,
)
tastes = list("bacon" = 4, "bun" = 2)
foodtypes = GRAIN | MEAT
custom_premium_price = PAYCHECK_CREW * 1.6
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT)
/obj/item/food/burger/empoweredburger
name = "empowered burger"
desc = "It's shockingly good, if you live off of electricity that is."
icon_state = "empoweredburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 5,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 1,
/datum/reagent/consumable/liquidelectricity/enriched = 6,
)
tastes = list("bun" = 2, "pure electricity" = 4)
foodtypes = GRAIN | TOXIC
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_2
/obj/item/food/burger/catburger
name = "catburger"
desc = "Finally those cats and catpeople are worth something!"
icon_state = "catburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 6,
/datum/reagent/consumable/nutriment/protein = 3,
/datum/reagent/consumable/nutriment/vitamin = 2,
)
tastes = list("bun" = 4, "meat" = 2, "cat" = 2)
foodtypes = GRAIN | MEAT | GORE
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/crab
name = "crab burger"
desc = "A delicious patty of the crabby kind, slapped in between a bun."
icon_state = "crabburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
/datum/reagent/consumable/nutriment/protein = 5,
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("bun" = 2, "crab meat" = 4)
foodtypes = GRAIN | SEAFOOD
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT * 2)
/obj/item/food/burger/soylent
name = "soylent burger"
desc = "An eco-friendly burger made using upcycled low value biomass."
icon_state = "soylentburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 4,
)
tastes = list("bun" = 2, "assistant" = 4)
foodtypes = GRAIN | MEAT | DAIRY
venue_value = FOOD_PRICE_EXOTIC
crafting_complexity = FOOD_COMPLEXITY_4
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT * 2)
/obj/item/food/burger/rib
name = "mcrib"
desc = "An elusive rib shaped burger with limited availability across the galaxy. Not as good as you remember it."
icon_state = "mcrib"
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/nutriment/protein = 7,
/datum/reagent/consumable/nutriment/vitamin = 4,
/datum/reagent/consumable/bbqsauce = 1,
)
tastes = list("bun" = 2, "pork patty" = 4)
foodtypes = GRAIN | MEAT | SUGAR | VEGETABLES
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT * 2)
/obj/item/food/burger/mcguffin
name = "mcguffin"
desc = "A cheap and greasy imitation of an eggs benedict."
icon_state = "mcguffin"
food_reagents = list(
/datum/reagent/consumable/nutriment = 2,
/datum/reagent/consumable/eggyolk = 3,
/datum/reagent/consumable/nutriment/protein = 7,
/datum/reagent/consumable/nutriment/vitamin = 1,
)
tastes = list("muffin" = 2, "bacon" = 3)
foodtypes = GRAIN | MEAT | BREAKFAST | FRIED
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2)
/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.
desc = "A delicious chicken sandwich, it is said the proceeds from this treat helps criminalize disarming people on the space frontier."
icon_state = "chickenburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/mayonnaise = 3,
/datum/reagent/consumable/nutriment/protein = 7,
/datum/reagent/consumable/nutriment/vitamin = 1,
/datum/reagent/consumable/nutriment/fat/oil = 2,
)
tastes = list("bun" = 2, "chicken" = 4, "God's covenant" = 1)
foodtypes = GRAIN | MEAT
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/cheese
name = "cheese burger"
desc = "This noble burger stands proudly clad in golden cheese."
icon_state = "cheeseburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/protein = 7,
/datum/reagent/consumable/nutriment/vitamin = 2,
)
tastes = list("bun" = 2, "beef patty" = 4, "cheese" = 3)
foodtypes = GRAIN | MEAT | DAIRY
venue_value = FOOD_PRICE_CHEAP
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
/obj/item/food/burger/cheese/Initialize(mapload)
. = ..()
if(prob(33))
icon_state = "cheeseburgeralt"
/obj/item/food/burger/crazy
name = "crazy hamburger"
desc = "This looks like the sort of food that a demented clown in a trenchcoat would make."
icon_state = "crazyburger"
food_reagents = list(
/datum/reagent/consumable/nutriment = 4,
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/capsaicin = 3,
/datum/reagent/consumable/condensedcapsaicin = 3,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("bun" = 2, "beef patty" = 4, "cheese" = 2, "beef soaked in chili" = 3, "a smoking flare" = 2)
foodtypes = GRAIN | MEAT | DAIRY | VEGETABLES
crafting_complexity = FOOD_COMPLEXITY_4
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2, /datum/material/plastic= SMALL_MATERIAL_AMOUNT * 0.5)
/obj/item/food/burger/crazy/Initialize(mapload)
. = ..()
START_PROCESSING(SSobj, src)
/obj/item/food/burger/crazy/process(seconds_per_tick) // DIT EES HORRIBLE
if(SPT_PROB(2.5, seconds_per_tick))
var/datum/effect_system/fluid_spread/smoke/bad/green/smoke = new
smoke.set_up(0, holder = src, location = src)
smoke.start()
// empty burger you can customize
/obj/item/food/burger/empty
name = "burger"
desc = "A crazy, custom burger made by a mad cook."
icon_state = "custburg"
tastes = list("bun")
foodtypes = GRAIN
/obj/item/food/burger/sloppy_moe
name = "sloppy moe"
desc = "Ground meat mixed with onions and barbecue sauce, sloppily plopped onto a burger bun. Delicious, but guaranteed to get your hands dirty."
icon_state = "sloppy_moe"
food_reagents = list(
/datum/reagent/consumable/nutriment = 10,
/datum/reagent/consumable/nutriment/protein = 8,
/datum/reagent/consumable/nutriment/vitamin = 6,
)
tastes = list("juicy meat" = 4, "BBQ sauce" = 3, "onions" = 2, "bun" = 2)
foodtypes = MEAT|VEGETABLES|GRAIN
venue_value = FOOD_PRICE_NORMAL
crafting_complexity = FOOD_COMPLEXITY_3
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2)