callback function on animation end unity
// 1. click on the animation state block in the animator and in the inspector
// 2. click Add Behavior button and edit that new script
// 3. find the OnStateExit function and un-comment it. Example below.
// OnStateExit is called when a transition ends and the state machine finishes evaluating this state
override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
{
GameObject self = animator.gameObject; //a reference to the gameobject being animated
MyScript script = self.GetComponent<MyScript>();
Debug.Log("Animation has finished!");
script.SendMessage("MyFunction"); //this is the name of the function to call
}