public void SetOverrideBehaviours(AnimatorState state, StateMachineBehaviour[] behaviours) { if (m_Behaviours == null) { m_Behaviours = new StateBehavioursPair[] {} } ; for (int i = 0; i < m_Behaviours.Length; ++i) { if (m_Behaviours[i].m_State == state) { m_Behaviours[i].m_Behaviours = behaviours; return; } } StateBehavioursPair newPair; newPair.m_State = state; newPair.m_Behaviours = behaviours; ArrayUtility.Add(ref m_Behaviours, newPair); } string m_Name; AnimatorStateMachine m_StateMachine; AvatarMask m_AvatarMask; StateMotionPair[] m_Motions; StateBehavioursPair[] m_Behaviours; AnimatorLayerBlendingMode m_BlendingMode; int m_SyncedLayerIndex = -1; bool m_IKPass; float m_DefaultWeight; bool m_SyncedLayerAffectsTiming; }
public StateMachineBehaviour[] GetOverrideBehaviours(AnimatorState state) { if (this.m_Behaviours != null) { StateBehavioursPair[] behaviours = this.m_Behaviours; for (int i = 0; i < behaviours.Length; i++) { StateBehavioursPair stateBehavioursPair = behaviours[i]; if (stateBehavioursPair.m_State == state) { return(stateBehavioursPair.m_Behaviours); } } } return(new StateMachineBehaviour[0]); }