Ejemplo n.º 1
0
        private void AnimateX3CoinsButton()
        {
            Transform getEnergyTransform = m_TakeX3CoinsButton.transform;

            m_X3CoinsButtonScaleTween = Tween.Value(1f).From(1f).To(1.3f).OnUpdate((v) =>
            {
                getEnergyTransform.localScale = Vector3.one * v;
            }).OnFinal(() =>
            {
                getEnergyTransform.localScale = Vector3.one;
            }).PingPong.Start();
        }
Ejemplo n.º 2
0
 public static void Stop <T>(Tween.Base tween, object target)
 {
     if (target != null)
     {
         for (int i = 0; i < count; i++)
         {
             Base t = tweens[i];
             if (!t.stop && t.GetType() == typeof(T) && t != tween && t.target == target)
             {
                 t.Stop();
             }
         }
     }
 }
Ejemplo n.º 3
0
 void OnEnable()
 {
     if (startOnAwake)
     {
         if (wait == 0)
         {
             Play();
         }
         else
         {
             tween = Tween.Delay(wait, () => Play());
             tween.Start();
         }
     }
 }
Ejemplo n.º 4
0
 public void Stop()
 {
     foreach (Node node in nodes)
     {
         if (node.transform != null)
         {
             Tween.Stop(node.transform);
         }
     }
     Tween.Stop(this);
     if (tween != null)
     {
         tween.Stop();
     }
     tween     = null;
     isPlaying = false;
 }
Ejemplo n.º 5
0
    void Next()
    {
        if (!isPlaying)
        {
            return;
        }
        if (index >= nodes.Length)
        {
            playedCount++;

            // finished
            index = 0;
            if (playCount > 0 && playCount <= playedCount)
            {
                isPlaying = false;
                if (onComplete != null)
                {
                    onComplete();
                }
                return;
            }
        }

        Node      node = nodes[index++];
        Transform t    = node.transform == null ? transform : node.transform;

        tween = null;

        switch (node.action)
        {
        case Action.Activate:
            t.gameObject.SetActive(node.active);
            break;

        case Action.Wait:
            tween = Tween.Delay(node.time + node.delay, null).Target(this);
            break;

        case Action.Run:
            if (t != null)
            {
                TweenPath[] pathes = t.GetComponents <TweenPath>();
                foreach (TweenPath tp in pathes)
                {
                    if (tp.pathName == node.runName)
                    {
                        tp.Play();
                        break;
                    }
                }
            }
            break;

        case Action.Move:
            if (node.time == 0 && node.delay == 0)
            {
                t.localPosition = node.position;
            }
            else
            {
                tween = Tween.Move(t, node.time, node.delay).To(node.position);
                ((Tween.TweenMove)tween).SetSnap(snap);
            }
            break;

        case Action.Rotate:
            if (node.time == 0 && node.delay == 0)
            {
                t.localEulerAngles = node.position;
            }
            else
            {
                tween = Tween.Rotate(t, node.time, node.delay).To(node.position);
            }
            break;

        case Action.Scale:
            if (node.time == 0 && node.delay == 0)
            {
                t.localScale = node.position;
            }
            else
            {
                tween = Tween.Scale(t, node.time, node.delay).To(node.position);
            }
            break;
        }

        if (tween != null)
        {
            tween.Ease(node.easeType);
            if (tweenTag != null)
            {
                tween.Tags(tweenTag);
            }
            if (node.waitForEnd)
            {
                tween.OnComplete(Next);
            }
            tween.Start();
        }
        if (tween == null || !node.waitForEnd)
        {
            Next();
        }
    }