| | |
| | | |
| | | #region 组件引用 |
| | | |
| | | protected SkeletonGraphic skeletonGraphic; |
| | | protected SkeletonAnimation skeletonAnimation; |
| | | protected Spine.AnimationState spineAnimationState; |
| | | protected Spine.Skeleton skeleton; |
| | | |
| | |
| | | /// 初始化动画组件 |
| | | /// </summary> |
| | | /// <param name="skeletonGraphic">骨骼动画组件</param> |
| | | public virtual void Init(SkeletonGraphic skeletonGraphic) |
| | | public virtual void Init(SkeletonAnimation _skeletonAnimation) |
| | | { |
| | | this.skeletonGraphic = skeletonGraphic; |
| | | this.skeletonAnimation = _skeletonAnimation; |
| | | |
| | | if (skeletonGraphic != null) |
| | | if (skeletonAnimation != null) |
| | | { |
| | | spineAnimationState = skeletonGraphic.AnimationState; |
| | | spineAnimationState = skeletonAnimation.AnimationState; |
| | | spineAnimationState.TimeScale = MotionTimeScale; |
| | | skeletonGraphic.timeScale = MotionTimeScale; |
| | | skeletonAnimation.timeScale = MotionTimeScale; |
| | | |
| | | skeleton = skeletonGraphic.Skeleton; |
| | | skeleton = skeletonAnimation.Skeleton; |
| | | |
| | | // 设置动画混合时间 |
| | | if (spineAnimationState != null) |
| | |
| | | spineAnimationState = null; |
| | | } |
| | | |
| | | skeletonGraphic = null; |
| | | skeletonAnimation = null; |
| | | skeleton = null; |
| | | currentTrackEntry = null; |
| | | } |
| | |
| | | public virtual void Pause() |
| | | { |
| | | spineAnimationState.TimeScale = 0f; |
| | | skeletonGraphic.timeScale = 0f; |
| | | skeletonAnimation.timeScale = 0f; |
| | | } |
| | | |
| | | public virtual void Resume() |
| | | { |
| | | spineAnimationState.TimeScale = MotionTimeScale; |
| | | skeletonGraphic.timeScale = MotionTimeScale; |
| | | skeletonAnimation.timeScale = MotionTimeScale; |
| | | } |
| | | |
| | | public void HaveRest() |
| | |
| | | { |
| | | MotionTimeScale = ratio; |
| | | spineAnimationState.TimeScale = ratio; |
| | | skeletonGraphic.timeScale = ratio; |
| | | skeletonAnimation.timeScale = ratio; |
| | | } |
| | | |
| | | #endregion |