using Cysharp.Threading.Tasks; using Stary.Evo; using UnityEngine; namespace Main { /// /// 鼓掌状态 /// public class KKReactState: AbstractFSMIState { private string aniName = "anim_ip_react_encourage"; public KKReactState(IFsmSystem system) : base(system) { } public override async UniTask OnEnterAsync() { KKFsmSystem kkFsmSystem = FsmSystem as KKFsmSystem; if (kkFsmSystem.animator != null) { kkFsmSystem.animator.CrossFade(aniName,0.2f, 0, 0f); float animProgress = 0; while (animProgress <= 0.99f) { Debug.Log(animProgress); animProgress=kkFsmSystem.GetAnimationProgress(0); await UniTask.Yield(); } FsmSystem.SetCurState(nameof(KKIdleState),(object)KKIdleStateParam.NotVoice); } else { Debug.LogError("UnityEvo:KKFsmSystem: animator is null"); } } public override UniTask OnExitAsync() { return UniTask.CompletedTask; } } }