Returns all StateMachineBehaviour that match type T
or are derived from T
. Returns null if none are found.
using UnityEngine;
using System.Collections;
// An example StateMachineBehaviour.
public class BreathBehaviour : StateMachineBehaviour
{
public bool fastBreath;
// OnStateUpdate is called at each Update frame between OnStateEnter and OnStateExit callback
override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
{
animator.SetBool("FastBreath", fastBreath);
}
}
public class RunBehaviour : StateMachineBehaviour
{
// OnStateUpdate is called at each Update frame between OnStateEnter and OnStateExit callback
override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
{
BreathBehaviour[] breathBehaviours = animator.GetBehaviours<BreathBehaviour>();
for (int i = 0; i < breathBehaviours.Length; i++)
breathBehaviours[i].fastBreath = true;
}
}