Files
Paradise/code/game/objects/items/devices/autochef_remote.dm
T
f9ade844c9 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>
2025-03-23 04:59:08 +00:00

47 lines
1.7 KiB
Plaintext

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