From 333fae2309e280fc48d05b5cc7d25952f0dab3ce Mon Sep 17 00:00:00 2001 From: terric Date: Tue, 28 Nov 2023 02:19:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Resources/Animation/Nod.anim | 2 +- .../UI/Component/GudieAnimationManager.cs | 23 ++++--------------- 2 files changed, 6 insertions(+), 19 deletions(-) diff --git a/Assets/Resources/Animation/Nod.anim b/Assets/Resources/Animation/Nod.anim index f4b5199..5c6daec 100644 --- a/Assets/Resources/Animation/Nod.anim +++ b/Assets/Resources/Animation/Nod.anim @@ -130163,7 +130163,7 @@ AnimationClip: data: objectReferenceParameter: {fileID: 0} floatParameter: 0 - intParameter: 2 + intParameter: 3 messageOptions: 0 - time: 49.9 functionName: StartSampling diff --git a/Assets/Scripts/UI/Component/GudieAnimationManager.cs b/Assets/Scripts/UI/Component/GudieAnimationManager.cs index 6d7957c..4958e9c 100644 --- a/Assets/Scripts/UI/Component/GudieAnimationManager.cs +++ b/Assets/Scripts/UI/Component/GudieAnimationManager.cs @@ -8,7 +8,6 @@ public class GudieAnimationManager : MonoBehaviour { private Animator _animator; private string _currName; - private bool _isAnimationStartPlay; private List _actionList = new List(); private List _actionNameList = new List(); @@ -23,7 +22,7 @@ public class GudieAnimationManager : MonoBehaviour AnimationClip[] clips = Animator.runtimeAnimatorController.animationClips; foreach (AnimationClip clip in clips) { - if (_actionNameList.Contains(clip.name)) + if (ActionNameList.Contains(clip.name)) { _animationLength += clip.length; } @@ -51,9 +50,9 @@ public class GudieAnimationManager : MonoBehaviour { if (_actionNameList.Count == 0) { - foreach (var item in Enum.GetNames(typeof(AvatarAction))) + foreach (var item in _actionList) { - _actionNameList.Add(item); + _actionNameList.Add(item.ToString()); } } return _actionNameList; @@ -64,7 +63,6 @@ public class GudieAnimationManager : MonoBehaviour private void Awake() { _animator = transform.GetComponentInChildren(); - _isAnimationStartPlay = false; } @@ -77,7 +75,6 @@ public class GudieAnimationManager : MonoBehaviour public void PlayCurrentActionList(List actionList) { - _isAnimationStartPlay = true; _actionList = actionList; AnimationClip[] clips = Animator.runtimeAnimatorController.animationClips; @@ -96,21 +93,11 @@ public class GudieAnimationManager : MonoBehaviour private void Update() { - if (string.IsNullOrEmpty(_currName)) + if (string.IsNullOrEmpty(_currName) || _actionList.Count == 0) return; - if (!_isAnimationStartPlay) - return; - - var currName = GetCurrentAnimationName(); - if (!ActionNameList.Contains(currName)) - { - Play(ActionNameList[YogaManager.Instance.ActionIndex]); - return; - } - //当未达到指标且动画播放完毕时,重新播放 - if (Animator.GetCurrentAnimatorStateInfo(0).normalizedTime >= 1.0f && GetCurrentAnimationName().Equals(Enum.GetName(typeof(AvatarAction), _actionList[YogaManager.Instance.ActionIndex]))) + if (Animator.GetCurrentAnimatorStateInfo(0).normalizedTime >= 1.0f) { //如果列表动画index小于列表长度,播放下一个动画 YogaManager.Instance.ActionIndex++;