mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 12:07:27 +01:00
Kitchen rework part 1: machines and recipes. (#28277)
* Kitchen rework part 1: machines and recipes. * update oldstation * update updatepaths script number * fix blank icon test * remove old deep fryer completely * fix duped recipes and recipe datum names * add chef PDA cart to chefdrobe * nerf grill wood consumption rate * multiply food for cooking machine rating * fix runtime * add cookware to syndie base and oldstation * remove dupe burger recipe, update syndie/oldstation setups * nerf potency quality award * buff burn/ignite times, remove pointless on_fire flag * more grill woodburn nerf * meh * try and unfuck timing issues * more fixes and icon updates * more fixes * more review changes * fix linter * disable pcwj debug * fix grill and deep fryer overlays * fix timers with no containers * attempt to fix reagent adding issues * more cleanups * allow rped usage * grammar, null checks, reagent display * PDA updates, map updates * fix mats values * new panel sprites * recipe fixes, add prep bowl * revert unused icon file changes * move this to mesh with smith TM * remove food quality for now * New sprites, autochef. * fix examine text * reduce oven cook times * lots of fixes * fix autochef recipes that start with reagents * prevent shenanigans * megapatch 1 * block ingredients behind oven door * PDA app improvements * remove unused proc * fixes for cookbook, descontructions, completed steps * allow empty containers with a tracker to be claimed * allow reclaiming * autochef reliability fixes * autochef reliability fixes * fix quality product count * update updatepaths script * better stack handling * more fixes for stacks and reagents * timers no longer turn off burners automatically * autochef turn offs and make sure we can see output storage * add microwave recipe for roundremoving player brains * Apply suggestions from code review Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: warriorstar-orion <orion@snowfrost.garden> * burza review 1 * Apply suggestions from code review Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: warriorstar-orion <orion@snowfrost.garden> * fix berry muffin name while i'm here * grill -> microwave in new tests * grill -> microwave in new tests, but actually for realsies * i definitely know what i'm doing * redundant attack chain setting * add examine text about clearing buffer * remove unused vars and start improving docs --------- Signed-off-by: warriorstar-orion <orion@snowfrost.garden> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
This commit is contained in:
co-authored by
Burzah
parent
9a3ce4e549
commit
f9ade844c9
@@ -48,7 +48,6 @@
|
||||
/obj/item/book/manual/ripley_build_and_repair,
|
||||
/obj/item/book/manual/supermatter_engine,
|
||||
/obj/item/book/manual/wiki/botanist,
|
||||
/obj/item/book/manual/wiki/chef_recipes,
|
||||
/obj/item/book/manual/wiki/engineering_construction,
|
||||
/obj/item/book/manual/wiki/engineering_guide,
|
||||
/obj/item/book/manual/wiki/faxes,
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
RESTRICT_TYPE(/obj/item/autochef_remote)
|
||||
|
||||
/obj/item/autochef_remote
|
||||
name = "autochef remote"
|
||||
icon = 'icons/obj/cooking/misc.dmi'
|
||||
icon_state = "autochef_remote"
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
new_attack_chain = TRUE
|
||||
|
||||
var/list/linkable_machine_uids = list()
|
||||
VAR_PRIVATE/static/list/valid_machines = list(
|
||||
/obj/item/reagent_containers/cooking,
|
||||
/obj/machinery/cooking,
|
||||
/obj/machinery/smartfridge,
|
||||
)
|
||||
|
||||
/obj/item/autochef_remote/examine(mob/user)
|
||||
. = ..()
|
||||
. += "<span class='notice'>Use [src] on cooking utensils and machines to store them in the buffer.</span>"
|
||||
. += "<span class='notice'>Use [src] on an autochef to register all the stored utensils and machines to the autochef.</span>"
|
||||
. += "<span class='notice'>Register food and drink carts and smart fridges to give the autochef access to ingredients.</span>"
|
||||
. += "<span class='notice'>Use [src] in-hand to clear its buffer, which can then be used to unlink everything from autochefs.</span>"
|
||||
|
||||
/obj/item/autochef_remote/activate_self(mob/user)
|
||||
if(..())
|
||||
return FINISH_ATTACK
|
||||
|
||||
linkable_machine_uids.Cut()
|
||||
to_chat(user, "<span class='notice'>You clear all items stored in [src]'s buffer.</span>")
|
||||
|
||||
/obj/item/autochef_remote/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers)
|
||||
var/target_uid = interacting_with.UID()
|
||||
if(is_type_in_list(interacting_with, valid_machines))
|
||||
linkable_machine_uids |= target_uid
|
||||
else
|
||||
return
|
||||
|
||||
var/obj/machinery/cooking/cooking_machine = interacting_with
|
||||
if(istype(cooking_machine))
|
||||
for(var/datum/cooking_surface/surface in cooking_machine.surfaces)
|
||||
if(surface.container)
|
||||
interact_with_atom(surface.container, user)
|
||||
|
||||
to_chat(user, "<span class='notice'>You add [interacting_with] to [src]'s buffer.</span>")
|
||||
|
||||
return ITEM_INTERACT_COMPLETE
|
||||
@@ -1,171 +0,0 @@
|
||||
|
||||
/obj/item/mixing_bowl
|
||||
name = "mixing bowl"
|
||||
desc = "Mixing it up in the kitchen."
|
||||
container_type = OPENCONTAINER
|
||||
icon = 'icons/obj/kitchen.dmi'
|
||||
icon_state = "mixing_bowl"
|
||||
var/max_n_of_items = 25
|
||||
var/dirty = FALSE
|
||||
var/clean_icon = "mixing_bowl"
|
||||
var/dirty_icon = "mixing_bowl_dirty"
|
||||
|
||||
/obj/item/mixing_bowl/New()
|
||||
..()
|
||||
create_reagents(100)
|
||||
|
||||
/obj/item/mixing_bowl/attackby__legacy__attackchain(obj/item/I, mob/user, params)
|
||||
if(dirty)
|
||||
if(istype(I, /obj/item/soap))
|
||||
user.visible_message("<span class='notice'>[user] starts to scrub [src].</span>", "<span class='notice'>You start to scrub [src].</span>")
|
||||
if(do_after(user, 20 * I.toolspeed, target = src))
|
||||
clean()
|
||||
user.visible_message("<span class='notice'>[user] has scrubbed [src] clean.</span>", "<span class='notice'>You have scrubbed [src] clean.</span>")
|
||||
return 1
|
||||
else
|
||||
to_chat(user, "<span class='warning'>You should clean [src] before you use it for food prep.</span>")
|
||||
return 0
|
||||
if(is_type_in_list(I, GLOB.cooking_ingredients[RECIPE_MICROWAVE]) || is_type_in_list(I, GLOB.cooking_ingredients[RECIPE_GRILL]) || is_type_in_list(I, GLOB.cooking_ingredients[RECIPE_OVEN]) || is_type_in_list(I, GLOB.cooking_ingredients[RECIPE_CANDY]))
|
||||
if(length(contents)>=max_n_of_items)
|
||||
to_chat(user, "<span class='alert'>This [src] is full of ingredients, you cannot put more.</span>")
|
||||
return 1
|
||||
if(istype(I, /obj/item/stack))
|
||||
var/obj/item/stack/S = I
|
||||
if(S.get_amount() > 1)
|
||||
var/obj/item/stack/to_add = S.split(user, 1)
|
||||
to_add.forceMove(src)
|
||||
user.visible_message("<span class='notice'>[user] adds one of [S] to [src].</span>", "<span class='notice'>You add one of [S] to [src].</span>")
|
||||
else
|
||||
return add_item(S, user)
|
||||
else
|
||||
return add_item(I, user)
|
||||
else if(is_type_in_list(I, list(/obj/item/reagent_containers/glass, /obj/item/reagent_containers/drinks, /obj/item/reagent_containers/condiment)))
|
||||
if(!I.reagents)
|
||||
return 1
|
||||
for(var/datum/reagent/R in I.reagents.reagent_list)
|
||||
if(!(R.id in GLOB.cooking_reagents[RECIPE_MICROWAVE]) && !(R.id in GLOB.cooking_reagents[RECIPE_GRILL]) && !(R.id in GLOB.cooking_reagents[RECIPE_OVEN]) && !(R.id in GLOB.cooking_reagents[RECIPE_CANDY]))
|
||||
to_chat(user, "<span class='alert'>Your [I] contains components unsuitable for cookery.</span>")
|
||||
return 1
|
||||
else
|
||||
to_chat(user, "<span class='alert'>You have no idea what you can cook with [I].</span>")
|
||||
return 1
|
||||
|
||||
/obj/item/mixing_bowl/proc/add_item(obj/item/I, mob/user)
|
||||
if(!user.drop_item())
|
||||
to_chat(user, "<span class='notice'>\The [I] is stuck to your hand, you cannot put it in [src]</span>")
|
||||
//return 0
|
||||
else
|
||||
I.forceMove(src)
|
||||
user.visible_message("<span class='notice'>[user] adds [I] to [src].</span>", "<span class='notice'>You add [I] to [src].</span>")
|
||||
|
||||
/obj/item/mixing_bowl/attack_self__legacy__attackchain(mob/user)
|
||||
var/dat = ""
|
||||
if(dirty)
|
||||
dat = {"<code>This [src] is dirty!<BR>Please clean it before use!</code>"}
|
||||
else
|
||||
var/list/items_counts = list()
|
||||
var/list/items_measures = list()
|
||||
var/list/items_measures_p = list()
|
||||
for(var/obj/O in contents)
|
||||
var/display_name = O.name
|
||||
if(istype(O,/obj/item/food/egg))
|
||||
items_measures[display_name] = "egg"
|
||||
items_measures_p[display_name] = "eggs"
|
||||
if(istype(O,/obj/item/food/tofu))
|
||||
items_measures[display_name] = "tofu chunk"
|
||||
items_measures_p[display_name] = "tofu chunks"
|
||||
if(istype(O,/obj/item/food/meat)) //any meat
|
||||
items_measures[display_name] = "slab of meat"
|
||||
items_measures_p[display_name] = "slabs of meat"
|
||||
if(istype(O,/obj/item/food/donkpocket))
|
||||
display_name = "Turnovers"
|
||||
items_measures[display_name] = "turnover"
|
||||
items_measures_p[display_name] = "turnovers"
|
||||
if(istype(O,/obj/item/food/carpmeat))
|
||||
items_measures[display_name] = "fillet of meat"
|
||||
items_measures_p[display_name] = "fillets of meat"
|
||||
items_counts[display_name]++
|
||||
for(var/O in items_counts)
|
||||
var/N = items_counts[O]
|
||||
if(!(O in items_measures))
|
||||
dat += {"<B>[capitalize(O)]:</B> [N] [lowertext(O)]\s<BR>"}
|
||||
else
|
||||
if(N==1)
|
||||
dat += {"<B>[capitalize(O)]:</B> [N] [items_measures[O]]<BR>"}
|
||||
else
|
||||
dat += {"<B>[capitalize(O)]:</B> [N] [items_measures_p[O]]<BR>"}
|
||||
|
||||
for(var/datum/reagent/R in reagents.reagent_list)
|
||||
var/display_name = R.name
|
||||
if(R.id == "capsaicin")
|
||||
display_name = "Hotsauce"
|
||||
if(R.id == "frostoil")
|
||||
display_name = "Coldsauce"
|
||||
dat += {"<B>[display_name]:</B> [R.volume] unit\s<BR>"}
|
||||
|
||||
if(length(items_counts)==0 && length(reagents.reagent_list)==0)
|
||||
dat = {"<B>[src] is empty</B><BR>"}
|
||||
else
|
||||
dat = {"<b>Ingredients:</b><br>[dat]"}
|
||||
dat += {"<hr><br> <a href='byond://?src=[UID()];action=dispose'>Dispose ingredients!</a><br>"}
|
||||
|
||||
var/datum/browser/popup = new(user, name, name, 400, 400)
|
||||
popup.set_content(dat)
|
||||
popup.open(0)
|
||||
onclose(user, "[name]")
|
||||
return
|
||||
|
||||
/obj/item/mixing_bowl/Topic(href, href_list)
|
||||
if(..())
|
||||
return
|
||||
switch(href_list["action"])
|
||||
if("dispose")
|
||||
dispose()
|
||||
return
|
||||
|
||||
/obj/item/mixing_bowl/proc/dispose()
|
||||
for(var/obj/O in contents)
|
||||
O.forceMove(loc)
|
||||
if(reagents.total_volume)
|
||||
make_dirty(5)
|
||||
reagents.clear_reagents()
|
||||
to_chat(usr, "<span class='notice'>You dispose of [src]'s contents.</span>")
|
||||
updateUsrDialog()
|
||||
|
||||
/obj/item/mixing_bowl/proc/make_dirty(chance)
|
||||
if(!chance)
|
||||
return
|
||||
if(prob(chance))
|
||||
dirty = TRUE
|
||||
container_type = null
|
||||
icon_state = dirty_icon
|
||||
|
||||
/obj/item/mixing_bowl/proc/clean()
|
||||
dirty = FALSE
|
||||
container_type = OPENCONTAINER
|
||||
icon_state = clean_icon
|
||||
|
||||
/obj/item/mixing_bowl/wash(mob/user, atom/source)
|
||||
if(..())
|
||||
clean()
|
||||
|
||||
/obj/item/mixing_bowl/proc/fail(obj/source)
|
||||
if(!source)
|
||||
source = src
|
||||
var/amount = 0
|
||||
for(var/obj/O in contents)
|
||||
amount++
|
||||
if(O.reagents)
|
||||
var/id = O.reagents.get_master_reagent_id()
|
||||
if(id)
|
||||
amount+=O.reagents.get_reagent_amount(id)
|
||||
qdel(O)
|
||||
if(reagents && reagents.total_volume)
|
||||
var/id = reagents.get_master_reagent_id()
|
||||
if(id)
|
||||
amount += reagents.get_reagent_amount(id)
|
||||
reagents.clear_reagents()
|
||||
var/obj/item/food/badrecipe/mysteryfood = new(get_turf(source))
|
||||
mysteryfood.reagents.add_reagent("carbon", amount)
|
||||
mysteryfood.reagents.add_reagent("????", amount / 10)
|
||||
make_dirty(75)
|
||||
@@ -727,14 +727,14 @@ GLOBAL_LIST_INIT(plastic_recipes, list(
|
||||
new /datum/stack_recipe("plastic knife", /obj/item/kitchen/knife/plastic, 1, on_floor = TRUE),
|
||||
)),
|
||||
new /datum/stack_recipe_list("plastic moulds", list(
|
||||
new /datum/stack_recipe("bear mould", /obj/item/kitchen/mould/bear, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("worm mould", /obj/item/kitchen/mould/worm, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("bean mould", /obj/item/kitchen/mould/bean, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("ball mould", /obj/item/kitchen/mould/ball, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("cane mould", /obj/item/kitchen/mould/cane, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("cash mould", /obj/item/kitchen/mould/cash, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("coin mould", /obj/item/kitchen/mould/coin, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("sucker mould", /obj/item/kitchen/mould/loli, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("bear mould", /obj/item/reagent_containers/cooking/mould/bear, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("worm mould", /obj/item/reagent_containers/cooking/mould/worm, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("bean mould", /obj/item/reagent_containers/cooking/mould/bean, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("ball mould", /obj/item/reagent_containers/cooking/mould/ball, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("cane mould", /obj/item/reagent_containers/cooking/mould/cane, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("cash mould", /obj/item/reagent_containers/cooking/mould/cash, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("coin mould", /obj/item/reagent_containers/cooking/mould/coin, 1, on_floor = TRUE),
|
||||
new /datum/stack_recipe("sucker mould", /obj/item/reagent_containers/cooking/mould/loli, 1, on_floor = TRUE),
|
||||
)),
|
||||
))
|
||||
|
||||
|
||||
@@ -252,9 +252,10 @@
|
||||
* Candy Moulds
|
||||
*/
|
||||
|
||||
/obj/item/kitchen/mould
|
||||
/obj/item/reagent_containers/cooking/mould
|
||||
name = "generic candy mould"
|
||||
desc = "You aren't sure what it's supposed to be."
|
||||
icon = 'icons/obj/kitchen.dmi'
|
||||
icon_state = "mould"
|
||||
force = 5
|
||||
throwforce = 5
|
||||
@@ -263,62 +264,52 @@
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "smashed")
|
||||
|
||||
/obj/item/kitchen/mould/bear
|
||||
/obj/item/reagent_containers/cooking/mould/make_mini()
|
||||
transform *= 0.5
|
||||
|
||||
/obj/item/reagent_containers/cooking/mould/unmake_mini()
|
||||
transform = null
|
||||
|
||||
/obj/item/reagent_containers/cooking/mould/bear
|
||||
name = "bear-shaped candy mould"
|
||||
desc = "It has the shape of a small bear imprinted into it."
|
||||
icon_state = "mould_bear"
|
||||
|
||||
/obj/item/kitchen/mould/worm
|
||||
/obj/item/reagent_containers/cooking/mould/worm
|
||||
name = "worm-shaped candy mould"
|
||||
desc = "It has the shape of a worm imprinted into it."
|
||||
icon_state = "mould_worm"
|
||||
|
||||
/obj/item/kitchen/mould/bean
|
||||
/obj/item/reagent_containers/cooking/mould/bean
|
||||
name = "bean-shaped candy mould"
|
||||
desc = "It has the shape of a bean imprinted into it."
|
||||
icon_state = "mould_bean"
|
||||
|
||||
/obj/item/kitchen/mould/ball
|
||||
/obj/item/reagent_containers/cooking/mould/ball
|
||||
name = "ball-shaped candy mould"
|
||||
desc = "It has a small sphere imprinted into it."
|
||||
icon_state = "mould_ball"
|
||||
|
||||
/obj/item/kitchen/mould/cane
|
||||
/obj/item/reagent_containers/cooking/mould/cane
|
||||
name = "cane-shaped candy mould"
|
||||
desc = "It has the shape of a cane imprinted into it."
|
||||
icon_state = "mould_cane"
|
||||
|
||||
/obj/item/kitchen/mould/cash
|
||||
/obj/item/reagent_containers/cooking/mould/cash
|
||||
name = "cash-shaped candy mould"
|
||||
desc = "It has the shape and design of fake money imprinted into it."
|
||||
icon_state = "mould_cash"
|
||||
|
||||
/obj/item/kitchen/mould/coin
|
||||
/obj/item/reagent_containers/cooking/mould/coin
|
||||
name = "coin-shaped candy mould"
|
||||
desc = "It has the shape of a coin imprinted into it."
|
||||
icon_state = "mould_coin"
|
||||
|
||||
/obj/item/kitchen/mould/loli
|
||||
/obj/item/reagent_containers/cooking/mould/loli
|
||||
name = "sucker mould"
|
||||
desc = "It has the shape of a sucker imprinted into it."
|
||||
icon_state = "mould_loli"
|
||||
|
||||
/*
|
||||
* Sushi Mat
|
||||
*/
|
||||
/obj/item/kitchen/sushimat
|
||||
name = "Sushi Mat"
|
||||
desc = "A wooden mat used for efficient sushi crafting."
|
||||
icon_state = "sushi_mat"
|
||||
force = 5
|
||||
throwforce = 5
|
||||
throw_speed = 3
|
||||
throw_range = 3
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
attack_verb = list("rolled", "cracked", "battered", "thrashed")
|
||||
|
||||
|
||||
|
||||
/// circular cutter by Ume
|
||||
|
||||
/obj/item/kitchen/cutter
|
||||
|
||||
@@ -881,15 +881,6 @@
|
||||
title = "Cyborgs for Dummies"
|
||||
wiki_article_title = "Guide_to_Robotics"
|
||||
|
||||
/obj/item/book/manual/wiki/chef_recipes
|
||||
name = "Chef Recipes"
|
||||
desc = "Knives, Ovens, and You: A guide to cooking."
|
||||
summary = "A comprehensive guide to the production of all manner of foods and drinks."
|
||||
icon_state = "cook_book"
|
||||
author = "Nanotrasen"
|
||||
title = "Chef Recipes"
|
||||
wiki_article_title = "Guide_to_Food_and_Drinks#Food"
|
||||
|
||||
/obj/item/book/manual/wiki/engineering_construction
|
||||
name = "Station Repairs and Construction"
|
||||
desc = "A guide on how to fix things without duct tape."
|
||||
|
||||
@@ -1065,8 +1065,8 @@
|
||||
/obj/item/kitchen/utensil,
|
||||
/obj/item/kitchen/knife,
|
||||
/obj/item/kitchen/rollingpin,
|
||||
/obj/item/kitchen/mould,
|
||||
/obj/item/kitchen/sushimat,
|
||||
/obj/item/reagent_containers/cooking/mould,
|
||||
/obj/item/reagent_containers/cooking/sushimat,
|
||||
/obj/item/kitchen/cutter,
|
||||
/obj/item/assembly/mousetrap,
|
||||
/obj/item/reagent_containers/spray/pestspray,
|
||||
|
||||
@@ -1336,6 +1336,22 @@
|
||||
new /obj/item/clothing/under/plasmaman/tacticool(src)
|
||||
new /obj/item/clothing/head/helmet/space/plasmaman/tacticool(src)
|
||||
|
||||
/obj/item/storage/box/autochef
|
||||
name = "autochef starter kit"
|
||||
desc = "Contains everything you need to build and use an autochef."
|
||||
|
||||
/obj/item/storage/box/autochef/populate_contents()
|
||||
new /obj/item/circuitboard/autochef(src)
|
||||
new /obj/item/stack/sheet/metal(src, 5)
|
||||
new /obj/item/stack/cable_coil/five(src)
|
||||
new /obj/item/stock_parts/matter_bin(src)
|
||||
new /obj/item/stock_parts/matter_bin(src)
|
||||
new /obj/item/stock_parts/micro_laser(src)
|
||||
new /obj/item/stock_parts/manipulator(src)
|
||||
new /obj/item/autochef_remote(src)
|
||||
new /obj/item/screwdriver(src)
|
||||
new /obj/item/paper/autochef_quickstart(src)
|
||||
|
||||
#undef NODESIGN
|
||||
#undef NANOTRASEN
|
||||
#undef SYNDI
|
||||
|
||||
@@ -589,6 +589,34 @@
|
||||
if(prob(10))
|
||||
new /obj/item/bikehorn/rubberducky(src)
|
||||
|
||||
/obj/structure/closet/crate/cookware
|
||||
name = "cookware crate"
|
||||
icon_state = "cookware"
|
||||
icon_opened = "cookware_open"
|
||||
icon_closed = "cookware"
|
||||
|
||||
/obj/structure/closet/crate/cookware/populate_contents()
|
||||
// Ice cream mixer containers
|
||||
new /obj/item/reagent_containers/cooking/icecream_bowl(src)
|
||||
// Oven containers
|
||||
new /obj/item/reagent_containers/cooking/oven(src)
|
||||
// Stovetop containers
|
||||
new /obj/item/reagent_containers/cooking/pan(src)
|
||||
new /obj/item/reagent_containers/cooking/pan(src)
|
||||
new /obj/item/reagent_containers/cooking/pot(src)
|
||||
new /obj/item/reagent_containers/cooking/pot(src)
|
||||
// Deepfryer containers
|
||||
new /obj/item/reagent_containers/cooking/deep_basket(src)
|
||||
new /obj/item/reagent_containers/cooking/deep_basket(src)
|
||||
// Cutting board
|
||||
new /obj/item/reagent_containers/cooking/board(src)
|
||||
// Grill containers
|
||||
new /obj/item/reagent_containers/cooking/grill_grate(src)
|
||||
new /obj/item/reagent_containers/cooking/grill_grate(src)
|
||||
// Prep bowls
|
||||
new /obj/item/reagent_containers/cooking/bowl(src)
|
||||
new /obj/item/reagent_containers/cooking/bowl(src)
|
||||
|
||||
//crates of gear in the free golem ship
|
||||
/obj/structure/closet/crate/golemgear/populate_contents()
|
||||
new /obj/item/storage/backpack/industrial(src)
|
||||
|
||||
Reference in New Issue
Block a user