Esempio n. 1
0
 public static void KillTweenFloat(int __tweenID)
 {
     for (int i = _tfdList.Count - 1; i >= 0; i--)
     {
         TweenFloatData data = _tfdList[i];
         if (data.tweenID == __tweenID)
         {
             _tfdList.RemoveAt(i);
             break;
         }
     }
 }
Esempio n. 2
0
        public static int StartTweenFloat(float __from, float __to, float __duration, Action <float> __onUpdate = null, Action __onComplete = null, float __interval = 0f)
        {
            TweenFloatData item = new TweenFloatData {
                from       = __from,
                to         = __to,
                duration   = __duration,
                onUpdate   = __onUpdate,
                onComplete = __onComplete,
                interval   = __interval,
                startTime  = realTime,
                lastValue  = __from,
                curValue   = __from
            };

            _tfdList.Add(item);
            return(item.tweenID);
        }
Esempio n. 3
0
        public static void Update()
        {
            int num;

            _realDeltaTime        = Time.realtimeSinceStartup - _realtimeSinceStartup;
            _realtimeSinceStartup = Time.realtimeSinceStartup;
            if (_updateList.Count > 0)
            {
                Action[] actionArray = _updateList.ToArray();
                for (num = 0; num < actionArray.Length; num++)
                {
                    Action action = actionArray[num];
                    action();
                }
                actionArray = null;
            }
            if (_cbdList.Count > 0)
            {
                CallBackData[] dataArray = _cbdList.ToArray();
                for (num = 0; num < dataArray.Length; num++)
                {
                    CallBackData item = dataArray[num];
                    if ((item.interval == 0f) || ((realTime - item.lastTime) >= item.interval))
                    {
                        item.curRepeat++;
                        if ((item.repeat != 0) && (item.curRepeat >= item.repeat))
                        {
                            _cbdList.Remove(item);
                        }
                        else
                        {
                            item.lastTime = realTime;
                        }
                        item.fun();
                    }
                }
                dataArray = null;
            }
            if (_tfdList.Count > 0)
            {
                TweenFloatData[] dataArray2 = _tfdList.ToArray();
                for (num = 0; num < dataArray2.Length; num++)
                {
                    TweenFloatData data2 = dataArray2[num];
                    if ((realTime - data2.startTime) >= data2.duration)
                    {
                        if (data2.onUpdate != null)
                        {
                            data2.onUpdate(data2.to);
                        }
                        if (data2.onComplete != null)
                        {
                            data2.onComplete();
                        }
                        _tfdList.Remove(data2);
                    }
                    else
                    {
                        data2.curValue = data2.from + (((realTime - data2.startTime) / data2.duration) * (data2.to - data2.from));
                        if ((data2.interval == 0f) || ((data2.curValue - data2.lastValue) >= data2.interval))
                        {
                            data2.lastTime  = realTime;
                            data2.lastValue = data2.curValue;
                            if (data2.onUpdate != null)
                            {
                                data2.onUpdate(data2.curValue);
                            }
                        }
                    }
                }
                dataArray2 = null;
            }
        }