In Unity you can do the following to find, for instance the end event for an animation.
[SerializeField]
private SkeletonAnimation mySpineAnim;
void Start()
{
mySpineAnim.state.End += AnimationEndHandler;
}
private void AnimationEndHandler(object sender, StartEndArgs args)
{
state.End -= AnimationEndHandler;
Spine.AnimationState state = (Spine.AnimationState)sender;
//Note: SourceAnimation does not currently exist on Unity runtime out of the box
state.SourceAnimation.gameObject.SetActive(false);
}
I've added a public member property SourceAnimation to the Spine.Animation class. I thought that this was missing, it's really useful to be able to tell which GameObject has just sent that event as the example above shows.
Maybe we could suggest that to Nate?