Skip to content

Commit

Permalink
Readds drying meat, rebalances meat producs (#12136)
Browse files Browse the repository at this point in the history
* dryables

* juicable organs

* Forgot this little bug

* CI borked
  • Loading branch information
St0rmC4st3r authored Jan 10, 2025
1 parent d3dea52 commit 47fcffd
Show file tree
Hide file tree
Showing 8 changed files with 225 additions and 1 deletion.
75 changes: 75 additions & 0 deletions code/game/objects/items/food/meatslab.dm
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,19 @@
///Legacy code, handles the coloring of the overlay of the cutlets made from this.
var/slab_color = "#FF0000"

/obj/item/food/meat/slab/Initialize(mapload)
. = ..()
make_dryable()

/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, 3, 30)

/obj/item/food/meat/slab/proc/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy)

///////////////////////////////////// HUMAN MEATS //////////////////////////////////////////////////////

/obj/item/food/meat/slab/human
Expand All @@ -40,6 +47,9 @@
/obj/item/food/meat/slab/human/make_processable()
AddElement(/datum/element/processable, TOOL_KNIFE, /obj/item/food/meat/rawcutlet/plain/human, 3, 30)

/obj/item/food/meat/slab/human/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/lean)

/obj/item/food/meat/slab/human/mutant/slime
icon_state = "slimemeat"
desc = "Because jello wasn't offensive enough to vegans."
Expand All @@ -50,6 +60,9 @@
tastes = list("slime" = 1, "jelly" = 1)
foodtypes = MEAT | RAW | TOXIC

/obj/item/food/meat/slab/human/mutant/slime/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/jelly)

/obj/item/food/meat/slab/human/mutant/golem
icon_state = "golemmeat"
desc = "Edible rocks, welcome to the future."
Expand All @@ -60,6 +73,9 @@
tastes = list("rock" = 1)
foodtypes = MEAT | RAW | GROSS

/obj/item/food/meat/slab/human/mutant/golem/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/rock_candy)

/obj/item/food/meat/slab/human/mutant/golem/adamantine
icon_state = "agolemmeat"
desc = "From the slime pen to the rune to the kitchen, science."
Expand All @@ -74,13 +90,22 @@
/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/lizard/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/lizard)

/obj/item/food/meat/slab/human/mutant/diona
name = "diona meat"
icon_state = "plantmeat"
desc = "All the joys of healthy eating with all the fun of cannibalism."
tastes = list("salad" = 1, "wood" = 1, "bitterness" = 1)
foodtypes = VEGETABLES

/obj/item/food/meat/slab/human/mutant/diona/make_grillable()
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/plain/human/diona, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE)

/obj/item/food/meat/slab/human/mutant/diona/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/diona)

/obj/item/food/meat/slab/human/mutant/shadow
icon_state = "shadowmeat"
desc = "Ow, the edge."
Expand All @@ -97,12 +122,18 @@
tastes = list("maggots" = 1, "the inside of a reactor" = 1)
foodtypes = MEAT | RAW | GROSS | GORE

/obj/item/food/meat/slab/human/mutant/fly/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/bugs)

/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 | GORE

/obj/item/food/meat/slab/human/mutant/moth/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/bugs)

/obj/item/food/meat/slab/human/mutant/skeleton
name = "bone"
icon_state = "skeletonmeat"
Expand All @@ -113,6 +144,9 @@
/obj/item/food/meat/slab/human/mutant/skeleton/make_processable()
return //skeletons dont have cutlets. Its a bone, Genius.

/obj/item/food/meat/slab/human/mutant/skeleton/make_dryable()
return //I agree. It's a bone, Genius.

/obj/item/food/meat/slab/human/mutant/zombie
name = " meat (rotten)"
icon_state = "rottenmeat"
Expand All @@ -127,12 +161,18 @@
tastes = list("pure electricity" = 2, "meat" = 1)
foodtypes = RAW | MEAT | TOXIC | GORE

/obj/item/food/meat/slab/human/mutant/ethereal/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/ethereal)

/obj/item/food/meat/slab/human/mutant/apid
icon_state = "apidmeat"
desc = "Smells like flowers, hopefully doesn't taste like one."
tastes = list("honey" = 1, "flowers" = 1, "meat" = 2)
foodtypes = MEAT | RAW | GORE

/obj/item/food/meat/slab/human/mutant/apid/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/bees)

/obj/item/food/meat/slab/human/mutant/psyphoza
icon_state = "psyphoza_meat"
desc = "Psychically awaiting consumption, spooky."
Expand All @@ -141,6 +181,12 @@
foodtypes = VEGETABLES | RAW | GORE
microwaved_type = /obj/item/food/meat/steak/plain/human/psyphoza

/obj/item/food/meat/slab/human/mutant/psyphoza/make_grillable()
AddComponent(/datum/component/grillable, /obj/item/food/meat/steak/plain/human/psyphoza, rand(30 SECONDS, 90 SECONDS), TRUE, TRUE)

/obj/item/food/meat/slab/human/mutant/psyphoza/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/mushroom)

////////////////////////////////////// OTHER MEATS ////////////////////////////////////////////////////////


Expand All @@ -152,22 +198,34 @@
/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/synthmeat/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/synthmeat)

/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) // its supposed to be various processed chemicals seen in very processed food. Butyric acid is a reference to how a certain North American Candymaker puts a chemical commonly seen in vomit into chocolate
foodtypes = RAW | MEAT

/obj/item/food/meat/slab/meatproduct/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/pemmican)

/obj/item/food/meat/slab/monkey
name = "monkey meat"
foodtypes = RAW | MEAT

/obj/item/food/meat/slab/monkey/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/monkey)

/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/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/mouse)

/obj/item/food/meat/slab/corgi
name = "corgi meat"
desc = "Tastes like... well you know..."
Expand Down Expand Up @@ -254,6 +312,9 @@
/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/spider/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/bugs)

/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."
Expand Down Expand Up @@ -294,6 +355,9 @@
/datum/reagent/consumable/nutriment/fat = 5 //Plenty of fat!
)

/obj/item/food/meat/slab/gorilla/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/monkey)

/obj/item/food/meat/rawbacon
name = "raw piece of bacon"
desc = "A raw piece of bacon."
Expand Down Expand Up @@ -395,6 +459,9 @@
) //low fat
tastes = list("chicken" = 1)

/obj/item/food/meat/slab/chicken/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/lean)

/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)

Expand All @@ -408,6 +475,9 @@
tastes = list("gross" = 1)
foodtypes = RAW | MEAT | GORE

/obj/item/food/meat/slab/mothroach/make_dryable()
AddElement(/datum/element/dryable, /obj/item/food/sosjerky/healthy/bugs)

/obj/item/food/meat/slab/dolphinmeat
name = "uncooked dolphin fillet"
desc = "A fillet of spess dolphin meat."
Expand Down Expand Up @@ -519,6 +589,11 @@
tastes = list("dirt" = 3, "wood" = 1)
foodtypes = VEGETABLES

/obj/item/food/meat/steak/plain/human/diona
name = "diona steak"
tastes = list("salad" = 3, "plant fibre" = 1)
foodtypes = VEGETABLES

/obj/item/food/meat/steak/meatproduct
name = "thermally processed meat product"
//icon_state = "meatproductsteak"
Expand Down
121 changes: 121 additions & 0 deletions code/game/objects/items/food/snacks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,133 @@
/obj/item/food/sosjerky/healthy
name = "homemade beef jerky"
desc = "Homemade beef jerky made from the finest space cows."
icon_state = "sosjerky_homemade"
food_reagents = list(
/datum/reagent/consumable/nutriment/protein = 6,
/datum/reagent/consumable/nutriment/vitamin = 1
)
crafting_complexity = FOOD_COMPLEXITY_2
junkiness = 0

/obj/item/food/sosjerky/healthy/lean
name = "lean beef jerky"
desc = "Homemade beef jerky made from the finest space cows. Special lean cuts edition!"
icon_state = "sosjerky_lowfat"
tastes = list("dried meat" = 3, "chicken" = 1) //is it really chicken, or something else?....

/obj/item/food/sosjerky/healthy/lizard
name = "dinosaur jerky"
desc = "Homemade jerky made from the finest dinosaurs of Sauria. Natural dinosaur flavour!"
icon_state = "sosjerky_dinosaur"
tastes = list("dried meat" = 1, "scales" = 1)

/obj/item/food/sosjerky/healthy/pig
name = "pork jerky"
desc = "Homemade jerky made from the cleanliest pigs in the sector."
icon_state = "sosjerky_pig"
tastes = list("dried meat" = 1, "acorns" = 1)
food_reagents = list(
/datum/reagent/consumable/nutriment/protein = 3,
/datum/reagent/consumable/nutriment/fat = 2,
/datum/reagent/consumable/nutriment/vitamin = 1
)

/obj/item/food/sosjerky/healthy/mouse
name = "lizard treats"
desc = "Homemade jerky made from the locally-sourced space mice. \n20% of all proceeds go to pest control efforts of underfunded space stations. \n100% of meat goes to your pet lizard's happiness!"
icon_state = "sosjerky_lizard_treats"
tastes = list("dried meat" = 1, "pests" = 1)
foodtypes = JUNKFOOD | MEAT | GORE

/obj/item/food/sosjerky/pemmican
name = "\improper Space Pemmican(tm) ration pack"
desc = "Meat product processed chemically, dehydrated, preserved.\nMay contain Azodicarbonamide, Propylparaben, Erythrosine.\nConsists of more than 35% connective tissue. \nSpace Pemmican(tm) is deemed unfit for human consumption in Jupiter II Europan Outer Solar System Economic Zone."
icon_state = "sosjerky_synth_pemmican"
tastes = list("meat flavoring" = 2, "bloodmeal" = 2, "natural & artificial dyes" = 1, "gastronomical anxiety" = 1)
foodtypes = JUNKFOOD | MEAT | GROSS
food_reagents = list(
/datum/reagent/consumable/nutriment = 3,
/datum/reagent/consumable/nutriment/fat = 2
)
junkiness = 45 //At least Scaredy's Private Reserve is made from real meat! What the hell is this?! Is this even food at this point?!

/obj/item/food/sosjerky/healthy/bugs
name = "bug snacks"
desc = "Homemade high-protein snacks made from an assortment of insects. Thank you for supporting the path towards sustainable foods!"
icon_state = "sosjerky_bugs"
tastes = list("crispy tissue" = 4, "progressiveness" = 1)

/obj/item/food/sosjerky/healthy/bees
name = "bee snacks"
desc = "Homemade high-protein snacks made from 100% bees."
icon_state = "sosjerky_bees"
tastes = list("crispy tenderness" = 4, "pollen" = 1)

/obj/item/food/sosjerky/healthy/synthmeat
name = "cruelty-free jerky"
desc = "Homemade jerky made from synthetic meat. Not a single animal suffered during the creation of this product."
icon_state = "sosjerky_synth"
tastes = list("dried meat" = 3, "blue" = 1)

/obj/item/food/sosjerky/healthy/monkey
name = "ape jerky"
desc = "Homemade jerky made from ape meat. \nNaturally contains banana flavour. \nHIV vaccine-free."
icon_state = "sosjerky_monkey"
tastes = list("dried meat" = 1, "bananas" = 1)

/obj/item/food/sosjerky/healthy/diona
name = "vegetable jerky"
desc = "Homemade meat-imitating vegetable jerky. \nThis product has NOT been approved by the ethics commitee. \nMay be offensive to some plant-based crewmembers."
icon_state = "sosjerky_vegan"
tastes = list("dried beets" = 3, "fermented tomatoes" = 2, "lettuce" = 2, "vegetarian guilt" = 1)
foodtypes = JUNKFOOD | VEGETABLES
food_reagents = list(
/datum/reagent/consumable/nutriment/vitamin = 6 //very healthy! go butcher your diona coworker!
)

/obj/item/food/sosjerky/healthy/mushroom
name = "dried mushrooms"
desc = "An assortment of dried mushroom slices. Should not be poisonous."
icon_state = "sosjerky_mushroom"
tastes = list("dried mushrooms" = 3, "earth" = 1)
foodtypes = JUNKFOOD | VEGETABLES
food_reagents = list(
/datum/reagent/consumable/nutriment/protein = 3, //fungi are heterotrophs
/datum/reagent/consumable/nutriment/vitamin = 3, //still healthy
/datum/reagent/drug/mushroomhallucinogen = 3
)

/obj/item/food/sosjerky/healthy/mushroom/Initialize(mapload)
. = ..()
if(rand(1, 100) == 1)
for(var/datum/reagent/R in reagents.reagent_list)
var/amount = R.volume
reagents.remove_reagent(R.type, amount)
reagents.add_reagent(/datum/reagent/toxin/amanitin, 10) //don't trust random mushrooms! (this is about 90 tox)
reagents.add_reagent(/datum/reagent/drug/mushroomhallucinogen, 3)

/obj/item/food/sosjerky/healthy/jelly
name = "dried jelly strips"
desc = "Homemade dried jelly strips. \nMay be toxic to most lifeforms."
icon_state = "sosjerky_jelly"
tastes = list("jelly" = 2, "jello" = 2, "sourness" = 1)
foodtypes = JUNKFOOD | TOXIC | SUGAR
food_reagents = list(
/datum/reagent/toxin/slimejelly = 3,
/datum/reagent/consumable/sugar = 3,
/datum/reagent/consumable/nutriment = 3
)

/obj/item/food/sosjerky/healthy/ethereal
name = "dried static charge"
desc = "This is what's left when you dry out electricity itself. \nMay cause static shocks."
icon_state = "sosjerky_electric"
tastes = list("static charge" = 2, "electrodynamics" = 2, "surging regret" = 1)
foodtypes = JUNKFOOD
food_reagents = list(
/datum/reagent/consumable/liquidelectricity = 6
)

/obj/item/food/chips
name = "chips"
desc = "Commander Riker's What-The-Crisps."
Expand Down
15 changes: 15 additions & 0 deletions code/game/objects/items/food/sweets.dm
Original file line number Diff line number Diff line change
Expand Up @@ -298,3 +298,18 @@
foodtypes = JUNKFOOD | SUGAR
food_flags = FOOD_FINGER_FOOD
crafting_complexity = FOOD_COMPLEXITY_1

/obj/item/food/rock_candy
name = "Rock candy"
desc = "A bunch of sweet crystals on a stick. Good for your blood!\n Warning for California residents: This product may contain lead, which is known to the State of California to cause cancer, birth defects, or other reproductive harm."
icon_state = "rock_candy"
food_reagents = list(
/datum/reagent/iron = 10,
/datum/reagent/mercury/lead_acetate = 5, //One couldn't hurt, am I right?
/datum/reagent/consumable/sugar = 5,
/datum/reagent/medicine/omnizine = 2
)
tastes = list("dreams of California beaches" = 1, "adamantine" = 2)
foodtypes = JUNKFOOD | SUGAR
food_flags = FOOD_FINGER_FOOD
crafting_complexity = FOOD_COMPLEXITY_1
1 change: 1 addition & 0 deletions code/modules/mob/living/brain/brain_item.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
var/damage_delta = 0

var/list/datum/brain_trauma/traumas = list()
juice_results = null //the moment the brains become juicable, people will find a way to cheese round removal. So NO.

investigate_flags = ADMIN_INVESTIGATE_TARGET

Expand Down
8 changes: 8 additions & 0 deletions code/modules/reagents/chemistry/reagents/other_reagents.dm
Original file line number Diff line number Diff line change
Expand Up @@ -851,6 +851,14 @@
chem_flags = CHEMICAL_BASIC_ELEMENT | CHEMICAL_RNG_GENERAL | CHEMICAL_RNG_FUN // because brain damage is fun
taste_mult = 0 // apparently tasteless.

/datum/reagent/mercury/lead_acetate
name = "Lead Acetate"
description = "A sweet neurotoxic chemical. The secret of Roman sweet wine."
color = "#AAAAAA"
chem_flags = CHEMICAL_RNG_GENERAL | CHEMICAL_RNG_FUN // because brain damage is fun
taste_description = "sweetness"
taste_mult = 3

/datum/reagent/mercury/on_mob_life(mob/living/carbon/M)
if(!HAS_TRAIT(src, TRAIT_IMMOBILIZED) && !isspaceturf(M.loc))
step(M, pick(GLOB.cardinals))
Expand Down
Loading

0 comments on commit 47fcffd

Please sign in to comment.