When something overlap “apple” — check if is motioncontroller- mouth ---- if yes: eat the item (change mesh) —wait 1 sec, … change mesh again… — ( outiside graph)
“when i let go the apple”
What happen? maybe your collision are too big, and you still collide with the mouth even if you dont have it in hand ?
You should be able to eat the apple only if you have it in your hand? (otherwise you could eat apples just going near them with mouth)
You should be able to do add a check or a variable,
When you pick up an apple, you can make her selected or active or eatable, with a variable.
Than if is in hand, the apple check the mouth and get eaten.
Another thing,
you should add a variable that block the Begin overlap to be casted again and again,
right now you can move quicly the apple near mouth, to trigger multiple time the Begin-overlap,
before and after the delay of 1 sec, messing around with your meshes and timing.
you could add a simple bool, named “ActionAtWork” that just after starting “eating item” get set to 1.
And just before that, check if the variable is 0, if yes, continue, otherwise do nothing.
if you trigger the eating only 1 time until you reset the ActionAtWork.
Preventing the mess