// OnStateEnter is called when a transition starts and the state machine starts to evaluate this state //override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { // //} // OnStateUpdate is called on each Update frame between OnStateEnter and OnStateExit callbacks //override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { // //} // 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) { // //} // OnStateMove is called right after Animator.OnAnimatorMove(). Code that processes and affects root motion should be implemented here //override public void OnStateMove(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { // //} // OnStateIK is called right after Animator.OnAnimatorIK(). Code that sets up animation IK (inverse kinematics) should be implemented here. //override public void OnStateIK(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { // //} public void OnStateExit(UnityEngine.Animator animator, UnityEngine.AnimatorStateInfo stateInfo, int layerIndex) { animator.SetBool ("hit", false); }
public override void OnStateUpdate(UnityEngine.Animator animator, UnityEngine.AnimatorStateInfo stateInfo, int layerIndex) { foreach (KeyValuePair<string, float> t in _enityData.DictActionTime) { if (stateInfo.normalizedTime > t.Value) { if (_listNode.Contains(t.Key) == false) { _listNode.Add(t.Key); _enity.SetProperty("normalizedTime", t.Key); } } } if (stateInfo.normalizedTime >= 0.95f + transitionTime) { if (!_isEnd) { //GameInput.Log("state to the end " + stateInfo.normalizedTime); _isEnd = true; animator.SetBool("isAttack", false); animator.Play("idle01"); _enity.SetProperty("actinStateEnd", stateInfo); } } /* if (stateInfo.normalizedTime > 0.3f)//播放特效时间节点 { if (!_listNode.Contains("effectNode")) { _enity.SetProperty("normalizedTime", "effectNode"); _listNode.Add("effectNode"); } } if (stateInfo.normalizedTime > 0.6f)//播放受击动作时间节点 { if (!_listNode.Contains("beAtkNode")) { _enity.SetProperty("normalizedTime", "beAtkNode"); _listNode.Add("beAtkNode"); } }*/ }