예제 #1
0
 public virtual void PlayLoop()
 {
     if (PlayCallBack.OnStartMethod != null)
     {
         PlayCallBack.OnStartMethod();
     }
 }
예제 #2
0
 public override void Init()
 {
     base.Init();
     IsDirty = true;
     PlayCallBack.AddStepCompleteMethod(() => {
         transform.localScale = Vector3.zero;
     });
 }
예제 #3
0
 public override void PlayLoop()
 {
     base.PlayLoop();
     if (AnimationSequence.Count > 0)
     {
         AnimationSequence [0].Play();
     }
     else
     {
         PlayCallBack.OnCompleteMethod();
     }
 }
예제 #4
0
 public override void PlayNext(IAction skyAction)
 {
     if (AnimationSequence.Contains(skyAction))
     {
         int index = AnimationSequence.IndexOf(skyAction);
         if (index < AnimationSequence.Count - 1)
         {
             AnimationSequence [index + 1].Play();
         }
         else
         {
             PlayCallBack.OnCompleteMethod();
         }
     }
 }
예제 #5
0
 public override void PlayLoop()
 {
     base.PlayLoop();
     if (AnimationSequence.Count > 0)
     {
         foreach (IAction skyAction in AnimationSequence)
         {
             skyAction.Play();
         }
         DelayTimeAction(PlayTime, PlayCallBack);
     }
     else
     {
         PlayCallBack.OnCompleteMethod();
     }
 }
예제 #6
0
    IEnumerator Tweening()
    {
        if (PlayCallBack != null && PlayCallBack.OnStartMethod != null)
        {
            PlayCallBack.OnStartMethod();
        }
        float t = Time.time;

        while (Time.time - t < skyBezierCurve.timeDuration)
        {
            yield return(0);

            UpdateAnimation(Time.time - t);
        }
        if (PlayCallBack != null && PlayCallBack.OnCompleteMethod != null)
        {
            PlayCallBack.OnCompleteMethod();
        }
    }