diff --git a/code/modules/food_and_drinks/kitchen_machinery/cooker.dm b/code/modules/food_and_drinks/kitchen_machinery/cooker.dm
index db54faf3631..071d0e79984 100644
--- a/code/modules/food_and_drinks/kitchen_machinery/cooker.dm
+++ b/code/modules/food_and_drinks/kitchen_machinery/cooker.dm
@@ -110,8 +110,6 @@
if(on)
to_chat(user, "[src] is still active!")
return FALSE
- if(istype(check, /obj/item/grab))
- return can_grab_attack(check, user, TRUE) // tell the user here
if(has_specials && checkSpecials(check))
return TRUE
if(istype(check, /obj/item/reagent_containers/food/snacks) || emagged)
@@ -191,6 +189,8 @@
if(panel_open)
to_chat(user, "Close the panel first!")
return
+ if(istype(I, /obj/item/grab))
+ return special_attack_grab(I, user)
if(!checkValid(I, user))
return
if(!burns)
@@ -207,8 +207,7 @@
else
L.death()
break
- if(istype(I, /obj/item/grab))
- return special_attack_grab(I, user)
+
addtimer(CALLBACK(src, PROC_REF(finish_cook), I, user), cooktime)
/obj/machinery/cooker/proc/finish_cook(obj/item/I, mob/user, params)