diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm
index cb9b969aadd..7a0daebe5f1 100644
--- a/code/modules/food/food/snacks.dm
+++ b/code/modules/food/food/snacks.dm
@@ -39,22 +39,25 @@
if(nutriment_amt)
reagents.add_reagent("nutriment",(nutriment_amt*2),nutriment_desc) //VOREStation Edit: Undoes global nutrition nerf
- //Placeholder for effect that trigger on eating that aren't tied to reagents.
-/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/M)
- if(!usr)
+//Placeholder for effect that trigger on eating that aren't tied to reagents.
+/obj/item/weapon/reagent_containers/food/snacks/proc/On_Consume(var/mob/living/M)
+ if(!usr) // what
usr = M
if(!reagents.total_volume)
M.visible_message("[M] finishes eating \the [src].","You finish eating \the [src].")
- usr.drop_from_inventory(src) //so icons update :[
+ // Embedded-in-food smol vore
+ for(var/obj/item/weapon/holder/holder in src)
+ if(holder.held_mob?.devourable)
+ holder.held_mob.forceMove(M.vore_selected)
+ holder.held_mob = null
+ qdel(holder)
+
+ usr.drop_from_inventory(src) // Drop food from inventory so it doesn't end up staying on the hud after qdel, and so inhands go away
if(trash)
- if(ispath(trash,/obj/item))
- var/obj/item/TrashItem = new trash(usr)
- usr.put_in_hands(TrashItem)
- else if(istype(trash,/obj/item))
- usr.put_in_hands(trash)
+ var/obj/item/TrashItem = new trash(usr)
+ usr.put_in_hands(TrashItem)
qdel(src)
- return
/obj/item/weapon/reagent_containers/food/snacks/attack_self(mob/user as mob)
if(package && !user.incapacitated())
@@ -4258,7 +4261,7 @@
if (!feeder)
feeder = eater
- feeder.drop_from_inventory(src) //so icons update :[ //what the fuck is this????
+ feeder.drop_from_inventory(src) // Drop food from inventory so it doesn't end up staying on the hud after qdel, and so inhands go away
if(trash)
if(ispath(trash,/obj/item))