Let's the chef cook up some new ideas: Chef fridge starts with 3 plants and 2 condiments. (#26887)

* LETS GO GAMBLING

* double accepted

* conflicts my hated

* more requested changes

* oops

* Apply suggestions from code review

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>

* comma comma comma comma chamelion

---------

Signed-off-by: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
This commit is contained in:
Qwertytoforty
2024-10-03 18:03:18 +00:00
committed by GitHub
co-authored by Burzah
parent 44b8f92659
commit 9f2b019f03
6 changed files with 211 additions and 129 deletions
@@ -434,7 +434,10 @@
. = ..()
accepted_items_typecache = typecacheof(list(
/obj/item/kitchen,
/obj/item/food))
/obj/item/food,
/obj/item/seeds,
/obj/item/grown,
/obj/item/reagent_containers/condiment))
// Syndicate Druglab Ruin
/obj/machinery/smartfridge/food/syndicate_druglab
@@ -447,6 +450,88 @@
/obj/item/reagent_containers/drinks/bottle/kahlua = 1,
/obj/item/reagent_containers/drinks/bottle/orangejuice = 2)
///The Chefs smartfridge. This smartfridge will spawn with a random condiment, then 3 stacks of 3 plants (or fish meat) to give chef some extra starting variety, or new ideas on what to cook!
/obj/machinery/smartfridge/food/chef
/obj/machinery/smartfridge/food/chef/Initialize(mapload)
starting_items = generate_starting_items()
. = ..()
/obj/machinery/smartfridge/food/chef/proc/generate_starting_items()
// These plants are blocked for being inedable, downright toxic, RND plants, botany plants, or wheat.
var/list/static/forbidden_plants = list(
/obj/item/food/grown/wheat,
/obj/item/food/grown/meatwheat,
/obj/item/food/grown/shell/gatfruit,
/obj/item/food/grown/apple/poisoned,
/obj/item/food/grown/cherry_bomb,
/obj/item/food/grown/firelemon,
/obj/item/food/grown/ambrosia/gaia,
/obj/item/food/grown/mushroom/glowshroom,
/obj/item/food/grown/mushroom/glowshroom/glowcap,
/obj/item/food/grown/mushroom/glowshroom/shadowshroom,
/obj/item/food/grown/cannabis, // I don't care about weed pizza, sorry.
/obj/item/food/grown/cannabis/rainbow,
/obj/item/food/grown/cannabis/death,
/obj/item/food/grown/cannabis/white,
/obj/item/food/grown/cannabis/ultimate,
/obj/item/food/grown/tobacco,
/obj/item/food/grown/pumpkin/blumpkin,
/obj/item/food/grown/berries/poison,
/obj/item/food/grown/berries/death,
/obj/item/food/grown/berries/glow,
/obj/item/food/grown/comfrey,
/obj/item/food/grown/aloe,
/obj/item/food/grown/kudzupod,
/obj/item/food/grown/holymelon, // Lets not out vampires or cult by accident thanks
/obj/item/food/grown/mushroom/reishi, // I would block out Amanita but it has 2 recipies, might be funny.
/obj/item/food/grown/mushroom/angel,
/obj/item/food/grown/random,
/obj/item/food/grown/tea,
/obj/item/food/grown/tea/astra,
/obj/item/food/grown/coffee,
/obj/item/food/grown/coffee/robusta,
/obj/item/food/grown/grass,
/obj/item/food/grown/grass/carpet,
/obj/item/food/grown/harebell,
/obj/item/food/grown/poppy,
/obj/item/food/grown/lily,
/obj/item/food/grown/geranium,
/obj/item/food/grown/moonflower,
/obj/item/food/grown/ash_flora/shavings,
/obj/item/food/grown/ash_flora/mushroom_leaf,
/obj/item/food/grown/ash_flora/mushroom_cap,
/obj/item/food/grown/ash_flora/mushroom_stem,
/obj/item/food/grown/ash_flora/cactus_fruit,
/obj/item/food/grown/shell,
/obj/item/food/grown/mushroom/fungus,
/obj/item/food/grown/mushroom,
/obj/item/food/grown/ash_flora,
)
var/list/output = list()
for(var/I in 1 to 3)
var/obj/item/food/chosen
if(prob(95))
chosen = pick(subtypesof(/obj/item/food/grown) - forbidden_plants)
else // Fish / sushi stuff, or xenomeat rarely as a treat
chosen = pick(/obj/item/food/catfishmeat, /obj/item/food/carpmeat, /obj/item/food/salmonmeat, /obj/item/food/shrimp, /obj/item/food/monstermeat/xenomeat)
output[chosen] += 3
// Adds 2 condiment bottles as bonus. No hotsauce or ketchup, as the chef starts with that
for(var/G in 1 to 2)
output += pick(
/obj/item/reagent_containers/condiment/bbqsauce,
/obj/item/reagent_containers/condiment/soysauce,
/obj/item/reagent_containers/condiment/mayonnaise,
/obj/item/reagent_containers/condiment/cherryjelly,
/obj/item/reagent_containers/condiment/peanutbutter,
/obj/item/reagent_containers/condiment/honey,
/obj/item/reagent_containers/condiment/oliveoil,
/obj/item/reagent_containers/condiment/frostoil,
/obj/item/reagent_containers/condiment/wasabi,
/obj/item/reagent_containers/condiment/vinegar,
)
return output
/**
* # Seed Storage
*