Пример #1
0
        public void stopAll()
        {
            RFTweenerTask t = firstNode;

            while (t != null)
            {
                t.stop();
                t = t.next;
            }
        }
Пример #2
0
        public void stopTask(RFTweenerTask animationTask)
        {
            RFTweenerTask t = firstNode;

            while (t != null)
            {
                if (t == animationTask)
                {
                    animationTask.stop();
                }
                t = t.next;
            }
        }
Пример #3
0
        private void tick(float now)
        {
            if (this.paused)
            {
                return;
            }

            RFTweenerTask t = firstNode;
            RFTweenerTask n;

            while (t != null)
            {
                n = t.next;
                if (t.state == NodeActiveState.ToDoDelete)
                {
                    if (t.prev != null)
                    {
                        t.prev.next = t.next;
                    }
                    else
                    {
                        firstNode = t.next;
                    }

                    if (t.next != null)
                    {
                        t.next.prev = t.prev;
                    }
                    else
                    {
                        lastNode = t.prev;
                    }
                    t.prev = null;
                    t.next = null;
                }
                else
                {
                    t.tick(now);
                }
                t = n;
            }
        }
Пример #4
0
        public bool addTask(RFTweenerTask t, float delay = -1, EaseAction ease = null)
        {
            if (lastNode != null)
            {
                lastNode.next = t;
                t.prev        = lastNode;
                lastNode      = t;
            }
            else
            {
                firstNode = lastNode = t;
            }

            if (delay > 0)
            {
                t.delay = delay;
            }
            if (ease != null)
            {
                t.ease = ease;
            }
            t.reset();
            return(true);
        }
Пример #5
0
        public static void AddTween(this GameObject self, RFTweenerTask task)
        {
            TweenTaskMotor motor = self.GetOrAddComponent <TweenTaskMotor>();

            motor.addTask(task);
        }