using System; using System.Reflection; using System.Collections; using System.Collections.Generic; using UnityEngine; // 角色状态机 [DisallowMultipleComponent] public class UnitState : UnitComponent { public virtual bool isAnimationReachEnd { get { return owner.unitAnimation.baseLayer.playbackNormalizedTime == 1; } } // 如果设置了endpoint属性,检查是否到了endpoint public virtual bool isAnimationReachEndPoint { get { var layer = owner.unitAnimation.baseLayer; if (!layer.animationData.HasProperty(EAnimationProperty.Endpoint)) return false; return layer.playbackNormalizedTime >= layer.animationData.GetProperty(EAnimationProperty.Endpoint); } } public virtual bool isComboOpen { get { return owner.unitAnimation.baseLayer.IsToggleOpen(EAnimationToogle.Combo); } } }