示例#1
0
 /// <summary>
 /// 更新动画
 /// </summary>
 void updateAnimation(AnimationUtils.TempAnimation ani)
 {
     if (ani != null && ani.isPlayed())
     {
         onAnimationPlayed(ani);
     }
 }
示例#2
0
        /// <summary>
        /// RectTransform移动
        /// </summary>
        void rectTransformMoveTo(Vector2 target,
                                 AnimationUtils.TempAnimation ani, float duration)
        {
            var ori = rectTransform.anchoredPosition;

            ani.addCurve(typeof(RectTransform),
                         "m_AnchoredPosition.x", ori.x, target.x, duration);
            ani.addCurve(typeof(RectTransform),
                         "m_AnchoredPosition.y", ori.y, target.y, duration);
        }
示例#3
0
 /// <summary>
 /// 更新当前动画事件
 /// </summary>
 void updateCurrentEvent(AnimationUtils.TempAnimation ani)
 {
     if (ani != null && ani.isPlaying())
     {
         var name = ani.getName();
         if (updateEvents.ContainsKey(name))
         {
             updateEvents[name]?.Invoke();
         }
     }
 }
示例#4
0
        /// <summary>
        /// Transform移动
        /// </summary>
        void transformMoveTo(Vector3 target,
                             AnimationUtils.TempAnimation ani, float duration)
        {
            var ori = transform.localPosition;

            ani.addCurve(typeof(Transform),
                         "m_LocalPosition.x", ori.x, target.x, duration);
            ani.addCurve(typeof(Transform),
                         "m_LocalPosition.y", ori.y, target.y, duration);
            ani.addCurve(typeof(Transform),
                         "m_LocalPosition.z", ori.z, target.z, duration);
        }
示例#5
0
 /// <summary>
 /// 加入队列
 /// </summary>
 /// <param name="ani"></param>
 AnimationUtils.TempAnimation enqueueAnimation(AnimationUtils.TempAnimation ani)
 {
     foreach (var ani_ in animations)
     {
         if (ani_.isClipEquals(ani))
         {
             debugWarning("Adding animation: " + ani.getName() + " failed.");
             return(ani_);
         }
     }
     animations.AddLast(ani); return(ani);
 }
示例#6
0
        /// <summary>
        /// 动画播放完毕回调
        /// </summary>
        void onAnimationPlayed(AnimationUtils.TempAnimation ani)
        {
            //Debug.Log(this.name + " onAnimationPlayed");

            var name = ani.getName();

            if (updateEvents.ContainsKey(""))
            {
                updateEvents[""]?.Invoke();
            }
            else if (endEvents.ContainsKey(name))
            {
                endEvents[name]?.Invoke();
            }
            next(); onNextAnimationPlay(curAni());
        }
示例#7
0
        /// <summary>
        /// 下一动画播放开始回调
        /// </summary>
        void onNextAnimationPlay(AnimationUtils.TempAnimation ani)
        {
            if (ani == null)
            {
                return;
            }

            var name = ani.getName();

            if (updateEvents.ContainsKey(""))
            {
                updateEvents[""]?.Invoke();
            }
            else if (changeEvents.ContainsKey(name))
            {
                changeEvents[name]?.Invoke();
            }
        }
示例#8
0
 public AnimationUtils.TempAnimation addAnimation(
     AnimationUtils.TempAnimation ani)
 {
     debugLog("addAnimation: " + ani.getName());
     return(enqueueAnimation(ani));
 }