mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-28 23:58:07 +01:00
## About The Pull Request https://github.com/user-attachments/assets/f35be993-66b2-448f-953b-4b2ec9a7b8f6 ## Changelog 🆑 sound: added more sounds for knives sound: added more sounds for pots sound: added more sounds for trays sound: added more sounds for cutlery sound: added more sounds for rolling pins /🆑
805 lines
28 KiB
Plaintext
805 lines
28 KiB
Plaintext
/obj/item/food/meat
|
|
custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT)
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
icon = 'icons/obj/food/meat.dmi'
|
|
abstract_type = /obj/item/food/meat
|
|
var/subjectname = ""
|
|
var/subjectjob = null
|
|
var/blood_decal_type = /obj/effect/decal/cleanable/blood
|
|
|
|
/obj/item/food/meat/Initialize(mapload, blood_dna_list = list("meaty DNA" = get_blood_type(BLOOD_TYPE_MEAT)))
|
|
. = ..()
|
|
|
|
if(!blood_decal_type || !length(custom_materials))
|
|
return
|
|
|
|
AddComponent(
|
|
/datum/component/blood_walk,\
|
|
blood_type = blood_decal_type,\
|
|
blood_spawn_chance = 45,\
|
|
transfer_blood_dna = TRUE,\
|
|
max_blood = custom_materials[custom_materials[1]] / SHEET_MATERIAL_AMOUNT,\
|
|
blood_dna_info = blood_dna_list,\
|
|
)
|
|
|
|
AddComponent(
|
|
/datum/component/bloody_spreader,\
|
|
blood_left = custom_materials[custom_materials[1]] / SHEET_MATERIAL_AMOUNT,\
|
|
blood_dna = blood_dna_list,\
|
|
)
|
|
|
|
/obj/item/food/meat/slab
|
|
name = "meat"
|
|
desc = "A slab of meat."
|
|
icon_state = "meat"
|
|
bite_consumption = 3
|
|
food_reagents = list(
|
|
/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
|
|
///Legacy code, handles the coloring of the overlay of the cutlets made from this.
|
|
var/slab_color = COLOR_RED
|
|
|
|
|
|
/obj/item/food/meat/slab/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy)
|
|
|
|
/obj/item/food/meat/slab/make_grillable()
|
|
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/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/plain, MEATSLAB_PROCESSED_AMOUNT, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
///////////////////////////////////// HUMAN MEATS //////////////////////////////////////////////////////
|
|
|
|
/obj/item/food/meat/slab/human
|
|
name = "meat"
|
|
tastes = list("tender meat" = 1)
|
|
foodtypes = MEAT | RAW | GORE
|
|
venue_value = FOOD_MEAT_HUMAN
|
|
|
|
/obj/item/food/meat/slab/human/make_grillable()
|
|
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/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/plain/human, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/human/mutant
|
|
abstract_type = /obj/item/food/meat/slab/human/mutant
|
|
|
|
/obj/item/food/meat/slab/human/mutant/slime
|
|
icon_state = "slimemeat"
|
|
desc = "Because jello wasn't offensive enough to vegans."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 4,
|
|
/datum/reagent/toxin/slimejelly = 3,
|
|
)
|
|
tastes = list("slime" = 1, "jelly" = 1)
|
|
foodtypes = MEAT | RAW | TOXIC
|
|
venue_value = FOOD_MEAT_MUTANT_RARE
|
|
blood_decal_type = null
|
|
|
|
/obj/item/food/meat/slab/human/mutant/golem
|
|
icon_state = "golemmeat"
|
|
desc = "Edible rocks, welcome to the future."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment = 3,
|
|
/datum/reagent/iron = 3,
|
|
)
|
|
tastes = list("rock" = 1)
|
|
foodtypes = MEAT | RAW | GROSS
|
|
venue_value = FOOD_MEAT_MUTANT_RARE
|
|
blood_decal_type = null
|
|
|
|
/obj/item/food/meat/slab/human/mutant/golem/adamantine
|
|
icon_state = "agolemmeat"
|
|
desc = "From the slime pen to the rune to the kitchen, science."
|
|
foodtypes = MEAT | RAW | GROSS
|
|
|
|
/obj/item/food/meat/slab/human/mutant/lizard
|
|
icon_state = "lizardmeat"
|
|
desc = "Delicious dino damage."
|
|
tastes = list("meat" = 4, "scales" = 1)
|
|
foodtypes = MEAT | RAW | GORE
|
|
venue_value = FOOD_MEAT_MUTANT
|
|
starting_reagent_purity = 0.4 // Take a look at their diet
|
|
|
|
/obj/item/food/meat/slab/human/mutant/lizard/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/plain/human/lizard, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/human/mutant/plant
|
|
icon_state = "plantmeat"
|
|
desc = "All the joys of healthy eating with all the fun of cannibalism."
|
|
tastes = list("salad" = 1, "wood" = 1)
|
|
foodtypes = VEGETABLES
|
|
venue_value = FOOD_MEAT_MUTANT_RARE
|
|
blood_decal_type = /obj/effect/decal/cleanable/food/plant_smudge
|
|
|
|
/obj/item/food/meat/slab/human/mutant/shadow
|
|
icon_state = "shadowmeat"
|
|
desc = "Ow, the edge."
|
|
tastes = list("darkness" = 1, "meat" = 1)
|
|
foodtypes = MEAT | RAW | GORE
|
|
venue_value = FOOD_MEAT_MUTANT_RARE
|
|
|
|
/obj/item/food/meat/slab/human/mutant/fly
|
|
icon_state = "flymeat"
|
|
desc = "Nothing says tasty like maggot filled radioactive mutant flesh."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 4,
|
|
/datum/reagent/uranium = 3,
|
|
)
|
|
tastes = list("maggots" = 1, "the inside of a reactor" = 1)
|
|
foodtypes = MEAT | RAW | GROSS | BUGS | GORE
|
|
venue_value = FOOD_MEAT_MUTANT
|
|
blood_decal_type = /obj/effect/decal/cleanable/insectguts
|
|
|
|
/obj/item/food/meat/slab/human/mutant/moth
|
|
icon_state = "mothmeat"
|
|
desc = "Unpleasantly powdery and dry. Kind of pretty, though."
|
|
tastes = list("dust" = 1, "powder" = 1, "meat" = 2)
|
|
foodtypes = MEAT | RAW | BUGS | GORE
|
|
venue_value = FOOD_MEAT_MUTANT
|
|
|
|
/obj/item/food/meat/slab/human/mutant/skeleton
|
|
name = "bone"
|
|
icon_state = "skeletonmeat"
|
|
desc = "There's a point where this needs to stop, and clearly we have passed it."
|
|
tastes = list("bone" = 1)
|
|
foodtypes = GROSS | GORE
|
|
venue_value = FOOD_MEAT_MUTANT_RARE
|
|
blood_decal_type = null
|
|
|
|
/obj/item/food/meat/slab/human/mutant/skeleton/make_processable()
|
|
return //skeletons don't have cutlets
|
|
|
|
/obj/item/food/meat/slab/human/mutant/skeleton/make_grillable()
|
|
return
|
|
|
|
/obj/item/food/meat/slab/human/mutant/zombie
|
|
name = "meat (rotten)"
|
|
icon_state = "rottenmeat"
|
|
desc = "Halfway to becoming fertilizer for your garden."
|
|
tastes = list("brains" = 1, "meat" = 1)
|
|
foodtypes = RAW | MEAT | TOXIC | GORE | GROSS
|
|
|
|
/obj/item/food/meat/slab/human/mutant/ethereal
|
|
icon_state = "etherealmeat"
|
|
desc = "So shiny you feel like ingesting it might make you shine too"
|
|
food_reagents = list(/datum/reagent/consumable/liquidelectricity/enriched = 10)
|
|
tastes = list("pure electricity" = 2, "meat" = 1)
|
|
foodtypes = RAW | MEAT | TOXIC | GORE
|
|
venue_value = FOOD_MEAT_MUTANT
|
|
blood_decal_type = null
|
|
|
|
////////////////////////////////////// OTHER MEATS ////////////////////////////////////////////////////////
|
|
|
|
/obj/item/food/meat/slab/synthmeat
|
|
name = "synthmeat"
|
|
icon_state = "meat_old"
|
|
desc = "A synthetic slab of meat."
|
|
foodtypes = RAW | MEAT //hurr durr chemicals were harmed in the production of this meat thus its non-vegan.
|
|
venue_value = FOOD_PRICE_WORTHLESS
|
|
starting_reagent_purity = 0.3
|
|
|
|
/obj/item/food/meat/slab/synthmeat/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/plain/synth, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/meatproduct
|
|
name = "meat product"
|
|
icon_state = "meatproduct"
|
|
desc = "A slab of station reclaimed and chemically processed meat product."
|
|
tastes = list("meat flavoring" = 2, "modified starches" = 2, "natural & artificial dyes" = 1, "butyric acid" = 1)
|
|
foodtypes = RAW | MEAT
|
|
starting_reagent_purity = 0.3
|
|
|
|
/obj/item/food/meat/slab/meatproduct/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/meatproduct, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/monkey
|
|
name = "monkey meat"
|
|
foodtypes = RAW | MEAT
|
|
starting_reagent_purity = 0.3 // Monkeys are considered synthetic life
|
|
|
|
/obj/item/food/meat/slab/bugmeat
|
|
name = "bug meat"
|
|
icon_state = "spidermeat"
|
|
foodtypes = RAW | MEAT | BUGS
|
|
blood_decal_type = /obj/effect/decal/cleanable/insectguts
|
|
|
|
/obj/item/food/meat/slab/mouse
|
|
name = "mouse meat"
|
|
desc = "A slab of mouse meat. Best not eat it raw."
|
|
foodtypes = RAW | MEAT | GORE
|
|
|
|
/obj/item/food/meat/slab/mouse/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_MOUSE, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
/obj/item/food/meat/slab/corgi
|
|
name = "corgi meat"
|
|
desc = "Tastes like... well you know..."
|
|
tastes = list("meat" = 4, "a fondness for wearing hats" = 1)
|
|
foodtypes = RAW | MEAT | GORE
|
|
|
|
/obj/item/food/meat/slab/corgi/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_CORGI, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
/obj/item/food/meat/slab/mothroach
|
|
name = "mothroach meat"
|
|
desc = "A light slab of meat."
|
|
foodtypes = RAW | MEAT | GROSS
|
|
|
|
/obj/item/food/meat/slab/mothroach/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
/obj/item/food/meat/slab/pug
|
|
name = "pug meat"
|
|
desc = "Tastes like... well you know..."
|
|
foodtypes = RAW | MEAT | GORE
|
|
|
|
/obj/item/food/meat/slab/pug/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_PUG, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
/obj/item/food/meat/slab/killertomato
|
|
name = "killer tomato meat"
|
|
desc = "A slice from a huge tomato."
|
|
icon_state = "tomatomeat"
|
|
food_reagents = list(/datum/reagent/consumable/nutriment = 2)
|
|
custom_materials = null
|
|
tastes = list("tomato" = 1)
|
|
foodtypes = FRUIT
|
|
blood_decal_type = /obj/effect/decal/cleanable/food/tomato_smudge
|
|
|
|
/obj/item/food/meat/slab/killertomato/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/killertomato, rand(70 SECONDS, 85 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/killertomato/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/killertomato, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/bear
|
|
name = "bear meat"
|
|
desc = "A very manly slab of meat."
|
|
icon_state = "bearmeat"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 16,
|
|
/datum/reagent/medicine/morphine = 5,
|
|
/datum/reagent/consumable/nutriment/vitamin = 2,
|
|
/datum/reagent/consumable/nutriment/fat = 6,
|
|
)
|
|
tastes = list("meat" = 1, "salmon" = 1)
|
|
foodtypes = RAW | MEAT
|
|
|
|
/obj/item/food/meat/slab/bear/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/bear, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/bear/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/bear, rand(40 SECONDS, 70 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/bear/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_BEAR, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
/obj/item/food/meat/slab/xeno
|
|
name = "xeno meat"
|
|
desc = "A slab of meat."
|
|
icon_state = "xenomeat"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 8,
|
|
/datum/reagent/consumable/nutriment/vitamin = 3,
|
|
)
|
|
bite_consumption = 4
|
|
tastes = list("meat" = 1, "acid" = 1)
|
|
foodtypes = RAW | MEAT
|
|
blood_decal_type = /obj/effect/decal/cleanable/blood/xeno
|
|
|
|
/obj/item/food/meat/slab/xeno/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/xeno, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/xeno/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/xeno, rand(40 SECONDS, 70 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/spider
|
|
name = "spider meat"
|
|
desc = "A slab of spider meat. That is so Kafkaesque."
|
|
icon_state = "spidermeat"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 5,
|
|
/datum/reagent/toxin = 3,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
)
|
|
tastes = list("cobwebs" = 1)
|
|
foodtypes = RAW | MEAT | TOXIC
|
|
blood_decal_type = /obj/effect/decal/cleanable/insectguts
|
|
|
|
/obj/item/food/meat/slab/spider/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/spider, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/spider/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/spider, rand(40 SECONDS, 70 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/goliath
|
|
name = "goliath meat"
|
|
desc = "A slab of goliath meat. It's not very edible now, but it cooks great in lava."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 5,
|
|
/datum/reagent/toxin = 5,
|
|
/datum/reagent/consumable/nutriment/fat = 3,
|
|
)
|
|
icon_state = "goliathmeat"
|
|
tastes = list("meat" = 1)
|
|
foodtypes = RAW | MEAT | TOXIC
|
|
|
|
/obj/item/food/meat/slab/goliath/burn()
|
|
visible_message(span_notice("[src] finishes cooking!"))
|
|
new /obj/item/food/meat/steak/goliath(loc)
|
|
qdel(src)
|
|
|
|
/obj/item/food/meat/slab/meatwheat
|
|
name = "meatwheat clump"
|
|
desc = "This doesn't look like meat, but your standards aren't <i>that</i> high to begin with."
|
|
food_reagents = list(/datum/reagent/consumable/nutriment/protein = 4, /datum/reagent/consumable/nutriment/vitamin = 2, /datum/reagent/blood = 5, /datum/reagent/consumable/nutriment/fat = 1)
|
|
icon_state = "meatwheat_clump"
|
|
bite_consumption = 4
|
|
tastes = list("meat" = 1, "wheat" = 1)
|
|
|
|
/obj/item/food/meat/slab/gorilla
|
|
name = "gorilla meat"
|
|
desc = "Much meatier than monkey meat."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 7,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
/datum/reagent/consumable/nutriment/fat = 5, //Plenty of fat!
|
|
)
|
|
|
|
/obj/item/food/meat/rawbacon
|
|
name = "raw piece of bacon"
|
|
desc = "A raw piece of bacon."
|
|
icon_state = "bacon"
|
|
bite_consumption = 2
|
|
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 2,
|
|
/datum/reagent/consumable/nutriment/fat = 3,
|
|
)
|
|
tastes = list("bacon" = 1)
|
|
foodtypes = RAW | MEAT
|
|
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)
|
|
|
|
/obj/item/food/meat/bacon
|
|
name = "piece of bacon"
|
|
desc = "A delicious piece of bacon."
|
|
icon_state = "baconcooked"
|
|
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 2,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
/datum/reagent/consumable/nutriment/fat = 2,
|
|
)
|
|
tastes = list("bacon" = 1)
|
|
foodtypes = MEAT | BREAKFAST
|
|
crafting_complexity = FOOD_COMPLEXITY_1
|
|
blood_decal_type = null
|
|
|
|
/obj/item/food/meat/slab/gondola
|
|
name = "gondola meat"
|
|
desc = "According to legends of old, consuming raw gondola flesh grants one inner peace."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 4,
|
|
/datum/reagent/gondola_mutation_toxin = 5,
|
|
/datum/reagent/consumable/nutriment/fat = 3,
|
|
)
|
|
tastes = list("meat" = 4, "tranquility" = 1)
|
|
foodtypes = RAW | MEAT | GORE
|
|
|
|
/obj/item/food/meat/slab/gondola/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/gondola, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/gondola/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/gondola, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe?
|
|
|
|
/obj/item/food/meat/slab/penguin
|
|
name = "penguin meat"
|
|
icon_state = "birdmeat"
|
|
desc = "A slab of penguin meat."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 4,
|
|
/datum/reagent/consumable/nutriment/fat = 3,
|
|
)
|
|
tastes = list("beef" = 1, "cod fish" = 1)
|
|
|
|
/obj/item/food/meat/slab/penguin/make_processable()
|
|
. = ..()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/penguin, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/penguin/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/penguin, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe?
|
|
|
|
/obj/item/food/meat/slab/rawcrab
|
|
name = "raw crab meat"
|
|
desc = "A pile of raw crab meat."
|
|
icon_state = "crabmeatraw"
|
|
bite_consumption = 3
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 3,
|
|
/datum/reagent/consumable/nutriment/fat = 3,
|
|
)
|
|
tastes = list("raw crab" = 1)
|
|
foodtypes = RAW | MEAT
|
|
|
|
/obj/item/food/meat/slab/rawcrab/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/crab, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE) //Add medium rare later maybe?
|
|
|
|
/obj/item/food/meat/crab
|
|
name = "crab meat"
|
|
desc = "Some deliciously cooked crab meat."
|
|
icon_state = "crabmeat"
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment = 2,
|
|
/datum/reagent/consumable/nutriment/vitamin = 2,
|
|
/datum/reagent/consumable/nutriment/fat = 2,
|
|
)
|
|
tastes = list("crab" = 1)
|
|
foodtypes = SEAFOOD
|
|
crafting_complexity = FOOD_COMPLEXITY_1
|
|
blood_decal_type = null
|
|
|
|
/obj/item/food/meat/slab/chicken
|
|
name = "chicken meat"
|
|
icon_state = "birdmeat"
|
|
desc = "A slab of raw chicken. Remember to wash your hands!"
|
|
food_reagents = list(/datum/reagent/consumable/nutriment/protein = 6) //low fat
|
|
tastes = list("chicken" = 1)
|
|
starting_reagent_purity = 1
|
|
|
|
/obj/item/food/meat/slab/chicken/make_processable()
|
|
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/chicken, 3, 3 SECONDS, table_required = TRUE, screentip_verb = "Cut", sound_to_play = SFX_KNIFE_SLICE)
|
|
|
|
/obj/item/food/meat/slab/chicken/make_grillable()
|
|
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)
|
|
|
|
/obj/item/food/meat/slab/chicken/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_CHICKEN, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
/obj/item/food/meat/slab/pig
|
|
name = "raw pork"
|
|
desc = "A slab of raw pork. This little piggy went to the butcher's."
|
|
icon_state = "pig_meat"
|
|
tastes = list("pig" = 1)
|
|
foodtypes = RAW | MEAT | GORE
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 2,
|
|
/datum/reagent/consumable/nutriment/fat = 5,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
) // Fatty piece
|
|
starting_reagent_purity = 1
|
|
|
|
/obj/item/food/meat/slab/pig/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/plain/pig, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/slab/grassfed
|
|
name = "eco meat"
|
|
desc = "A slab of 100% grass fed award-winning farm meat."
|
|
food_reagents = list(
|
|
/datum/reagent/consumable/nutriment/protein = 3,
|
|
/datum/reagent/consumable/nutriment/fat = 4,
|
|
/datum/reagent/consumable/nutriment/vitamin = 1,
|
|
) // Marble
|
|
starting_reagent_purity = 1
|
|
|
|
////////////////////////////////////// MEAT STEAKS ///////////////////////////////////////////////////////////
|
|
/obj/item/food/meat/steak
|
|
name = "steak"
|
|
desc = "A piece of hot spicy meat."
|
|
icon_state = "meatsteak"
|
|
food_reagents = list(
|
|
/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
|
|
blood_decal_type = null
|
|
|
|
/obj/item/food/meat/steak/Initialize(mapload)
|
|
. = ..()
|
|
RegisterSignal(src, COMSIG_ITEM_MICROWAVE_COOKED, PROC_REF(on_microwave_cooked))
|
|
|
|
/obj/item/food/meat/steak/proc/on_microwave_cooked(datum/source, atom/source_item, cooking_efficiency = 1)
|
|
SIGNAL_HANDLER
|
|
|
|
name = "[source_item.name] steak"
|
|
|
|
/obj/item/food/meat/steak/plain
|
|
|
|
/obj/item/food/meat/steak/plain/human
|
|
tastes = list("tender meat" = 1)
|
|
foodtypes = MEAT | GORE
|
|
|
|
///Make sure the steak has the correct name
|
|
/obj/item/food/meat/steak/plain/human/on_microwave_cooked(datum/source, atom/source_item, cooking_efficiency = 1)
|
|
. = ..()
|
|
if(!istype(source_item, /obj/item/food/meat))
|
|
return
|
|
|
|
var/obj/item/food/meat/origin_meat = source_item
|
|
subjectname = origin_meat.subjectname
|
|
subjectjob = origin_meat.subjectjob
|
|
if(subjectname)
|
|
name = "[origin_meat.subjectname] meatsteak"
|
|
else if(subjectjob)
|
|
name = "[origin_meat.subjectjob] meatsteak"
|
|
|
|
|
|
/obj/item/food/meat/steak/killertomato
|
|
name = "killer tomato steak"
|
|
tastes = list("tomato" = 1)
|
|
foodtypes = FRUIT
|
|
|
|
/obj/item/food/meat/steak/bear
|
|
name = "bear steak"
|
|
tastes = list("meat" = 1, "salmon" = 1)
|
|
|
|
/obj/item/food/meat/steak/xeno
|
|
name = "xeno steak"
|
|
tastes = list("meat" = 1, "acid" = 1)
|
|
|
|
/obj/item/food/meat/steak/spider
|
|
name = "spider steak"
|
|
tastes = list("cobwebs" = 1)
|
|
foodtypes = parent_type::foodtypes | TOXIC
|
|
|
|
/obj/item/food/meat/steak/goliath
|
|
name = "goliath steak"
|
|
desc = "A delicious, lava cooked steak."
|
|
resistance_flags = LAVA_PROOF | FIRE_PROOF
|
|
icon_state = "goliathsteak"
|
|
trash_type = null
|
|
tastes = list("meat" = 1, "rock" = 1)
|
|
|
|
/obj/item/food/meat/steak/gondola
|
|
name = "gondola steak"
|
|
tastes = list("meat" = 1, "tranquility" = 1)
|
|
|
|
/obj/item/food/meat/steak/penguin
|
|
name = "penguin steak"
|
|
icon_state = "birdsteak"
|
|
tastes = list("beef" = 1, "cod fish" = 1)
|
|
|
|
/obj/item/food/meat/steak/chicken
|
|
name = "chicken steak" //Can you have chicken steaks? Maybe this should be renamed once it gets new sprites.
|
|
icon_state = "birdsteak"
|
|
tastes = list("chicken" = 1)
|
|
|
|
/obj/item/food/meat/steak/plain/human/lizard
|
|
name = "lizard steak"
|
|
icon_state = "birdsteak"
|
|
tastes = list("juicy chicken" = 3, "scales" = 1)
|
|
foodtypes = MEAT | GORE
|
|
|
|
/obj/item/food/meat/steak/meatproduct
|
|
name = "thermally processed meat product"
|
|
icon_state = "meatproductsteak"
|
|
tastes = list("enhanced char" = 2, "suspicious tenderness" = 2, "natural & artificial dyes" = 2, "emulsifying agents" = 1)
|
|
|
|
/obj/item/food/meat/steak/plain/synth
|
|
name = "synthsteak"
|
|
desc = "A synthetic meat steak. It doesn't look quite right, now does it?"
|
|
icon_state = "meatsteak_old"
|
|
tastes = list("meat" = 4, "cryoxandone" = 1)
|
|
|
|
/obj/item/food/meat/steak/plain/pig
|
|
name = "pork chops"
|
|
desc = "A pork chop. Quit bustin' my chops!"
|
|
icon_state = "pigsteak"
|
|
tastes = list("pig" = 1)
|
|
foodtypes = MEAT
|
|
|
|
//////////////////////////////// MEAT CUTLETS ///////////////////////////////////////////////////////
|
|
|
|
//Raw cutlets
|
|
|
|
/obj/item/food/meat/rawcutlet
|
|
name = "raw cutlet"
|
|
desc = "A raw meat cutlet."
|
|
icon_state = "rawcutlet"
|
|
bite_consumption = 2
|
|
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
|
|
food_reagents = list(/datum/reagent/consumable/nutriment/protein = 2)
|
|
tastes = list("meat" = 1)
|
|
foodtypes = MEAT | RAW
|
|
var/meat_type = "meat"
|
|
|
|
/obj/item/food/meat/rawcutlet/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/food_storage)
|
|
|
|
/obj/item/food/meat/rawcutlet/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/plain, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/OnCreatedFromProcessing(mob/living/user, obj/item/work_tool, list/chosen_option, atom/original_atom)
|
|
. = ..()
|
|
if(!istype(original_atom, /obj/item/food/meat/slab))
|
|
return
|
|
var/obj/item/food/meat/slab/original_slab = original_atom
|
|
var/mutable_appearance/filling = mutable_appearance(icon, "rawcutlet_coloration")
|
|
filling.color = original_slab.slab_color
|
|
add_overlay(filling)
|
|
name = "raw [original_atom.name] cutlet"
|
|
meat_type = original_atom.name
|
|
|
|
/obj/item/food/meat/rawcutlet/plain
|
|
foodtypes = MEAT
|
|
|
|
/obj/item/food/meat/rawcutlet/plain/human
|
|
tastes = list("tender meat" = 1)
|
|
foodtypes = MEAT | RAW | GORE
|
|
|
|
/obj/item/food/meat/rawcutlet/plain/human/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/plain/human, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/plain/human/OnCreatedFromProcessing(mob/living/user, obj/item/item, list/chosen_option, atom/original_atom)
|
|
. = ..()
|
|
if(!istype(original_atom, /obj/item/food/meat))
|
|
return
|
|
var/obj/item/food/meat/origin_meat = original_atom
|
|
subjectname = origin_meat.subjectname
|
|
subjectjob = origin_meat.subjectjob
|
|
if(subjectname)
|
|
name = "raw [origin_meat.subjectname] cutlet"
|
|
else if(subjectjob)
|
|
name = "raw [origin_meat.subjectjob] cutlet"
|
|
|
|
/obj/item/food/meat/rawcutlet/killertomato
|
|
name = "raw killer tomato cutlet"
|
|
tastes = list("tomato" = 1)
|
|
foodtypes = FRUIT
|
|
blood_decal_type = /obj/effect/decal/cleanable/food/tomato_smudge
|
|
|
|
/obj/item/food/meat/rawcutlet/killertomato/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/killertomato, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/bear
|
|
name = "raw bear cutlet"
|
|
tastes = list("meat" = 1, "salmon" = 1)
|
|
|
|
/obj/item/food/meat/rawcutlet/bear/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_BEAR, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
/obj/item/food/meat/rawcutlet/bear/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/bear, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/xeno
|
|
name = "raw xeno cutlet"
|
|
tastes = list("meat" = 1, "acid" = 1)
|
|
blood_decal_type = /obj/effect/decal/cleanable/blood/xeno
|
|
|
|
/obj/item/food/meat/rawcutlet/xeno/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/xeno, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/spider
|
|
name = "raw spider cutlet"
|
|
tastes = list("cobwebs" = 1)
|
|
blood_decal_type = /obj/effect/decal/cleanable/insectguts
|
|
foodtypes = parent_type::foodtypes | TOXIC
|
|
|
|
/obj/item/food/meat/rawcutlet/spider/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/spider, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/gondola
|
|
name = "raw gondola cutlet"
|
|
tastes = list("meat" = 1, "tranquility" = 1)
|
|
|
|
/obj/item/food/meat/rawcutlet/gondola/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/gondola, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/penguin
|
|
name = "raw penguin cutlet"
|
|
tastes = list("beef" = 1, "cod fish" = 1)
|
|
|
|
/obj/item/food/meat/rawcutlet/penguin/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/penguin, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/chicken
|
|
name = "raw chicken cutlet"
|
|
tastes = list("chicken" = 1)
|
|
|
|
/obj/item/food/meat/rawcutlet/chicken/make_grillable()
|
|
AddComponent(/datum/component/grillable, /obj/item/food/meat/cutlet/chicken, rand(35 SECONDS, 50 SECONDS), TRUE, TRUE)
|
|
|
|
/obj/item/food/meat/rawcutlet/chicken/Initialize(mapload)
|
|
. = ..()
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_CHICKEN, CELL_VIRUS_TABLE_GENERIC_MOB)
|
|
|
|
//Cooked cutlets
|
|
|
|
/obj/item/food/meat/cutlet
|
|
name = "cutlet"
|
|
desc = "A cooked meat cutlet."
|
|
icon_state = "cutlet"
|
|
bite_consumption = 2
|
|
custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT)
|
|
food_reagents = list(/datum/reagent/consumable/nutriment/protein = 2)
|
|
tastes = list("meat" = 1)
|
|
foodtypes = MEAT
|
|
crafting_complexity = FOOD_COMPLEXITY_1
|
|
blood_decal_type = null
|
|
|
|
/obj/item/food/meat/cutlet/Initialize(mapload)
|
|
. = ..()
|
|
RegisterSignal(src, COMSIG_ITEM_MICROWAVE_COOKED, PROC_REF(on_microwave_cooked))
|
|
|
|
/obj/item/food/meat/cutlet/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/food_storage)
|
|
|
|
///This proc handles setting up the correct meat name for the cutlet, this should definitely be changed with the food rework.
|
|
/obj/item/food/meat/cutlet/proc/on_microwave_cooked(datum/source, atom/source_item, cooking_efficiency)
|
|
SIGNAL_HANDLER
|
|
|
|
if(!istype(source_item, /obj/item/food/meat/rawcutlet))
|
|
return
|
|
|
|
var/obj/item/food/meat/rawcutlet/original_cutlet = source_item
|
|
name = "[original_cutlet.meat_type] cutlet"
|
|
|
|
/obj/item/food/meat/cutlet/plain
|
|
|
|
/obj/item/food/meat/cutlet/plain/human
|
|
tastes = list("tender meat" = 1)
|
|
foodtypes = MEAT | GORE
|
|
|
|
/obj/item/food/meat/cutlet/plain/human/on_microwave_cooked(datum/source, atom/source_item, cooking_efficiency)
|
|
. = ..()
|
|
if(!istype(source_item, /obj/item/food/meat))
|
|
return
|
|
|
|
var/obj/item/food/meat/origin_meat = source_item
|
|
if(subjectname)
|
|
name = "[origin_meat.subjectname] [initial(name)]"
|
|
else if(subjectjob)
|
|
name = "[origin_meat.subjectjob] [initial(name)]"
|
|
|
|
/obj/item/food/meat/cutlet/killertomato
|
|
name = "killer tomato cutlet"
|
|
tastes = list("tomato" = 1)
|
|
foodtypes = FRUIT
|
|
|
|
/obj/item/food/meat/cutlet/bear
|
|
name = "bear cutlet"
|
|
tastes = list("meat" = 1, "salmon" = 1)
|
|
|
|
/obj/item/food/meat/cutlet/xeno
|
|
name = "xeno cutlet"
|
|
tastes = list("meat" = 1, "acid" = 1)
|
|
|
|
/obj/item/food/meat/cutlet/spider
|
|
name = "spider cutlet"
|
|
tastes = list("cobwebs" = 1)
|
|
foodtypes = parent_type::foodtypes | TOXIC
|
|
|
|
/obj/item/food/meat/cutlet/gondola
|
|
name = "gondola cutlet"
|
|
tastes = list("meat" = 1, "tranquility" = 1)
|
|
|
|
/obj/item/food/meat/cutlet/penguin
|
|
name = "penguin cutlet"
|
|
tastes = list("beef" = 1, "cod fish" = 1)
|
|
|
|
/obj/item/food/meat/cutlet/chicken
|
|
name = "chicken cutlet"
|
|
tastes = list("chicken" = 1)
|