protected Tween (TweenDescriptor aDescriptor) { _descriptor = aDescriptor; _tweenID = Tweens.Count; _startValue = aDescriptor.fromValue; _endValue = aDescriptor.toValue; _range = GetRange (_startValue, _endValue); if (!aDescriptor.baseOnSpeed) { _duration = aDescriptor.time; } else { _duration = GetDuration (aDescriptor.speed, _startValue, _endValue); } _easer = GetEaser (aDescriptor.easeType); _progress = 0.0f; _delayTimeStamp = Time.timeSinceLevelLoad; _delay = aDescriptor.delay; _yoyo = aDescriptor.yoyo; _loopCount = 0; _loops = aDescriptor.loops; if (_yoyo && _loops == 0) //if its a yoyo effect, the loop will be atleast 1: _loops = 1; _reversing = false; if (aDescriptor.updateMethod != null) UpdateEvent += aDescriptor.updateMethod; if (aDescriptor.completeMethod != null) CompleteEvent += aDescriptor.completeMethod; Tweens.Add (this); TweenController.Singleton.UpdateEvent += Update; Play (); }
public static Tween toWithSpeed (object startValue, object endValue, float speed, Tween.EaseType easeType, TweenDelegate onUpdate = null, TweenDelegate onComplete = null, float delay = 0.0f, bool yoyo = false, int loops = 0) { TweenDescriptor descriptor = new TweenDescriptor (); descriptor.baseOnSpeed = true; descriptor.fromValue = startValue; descriptor.toValue = endValue; descriptor.easeType = easeType; descriptor.delay = delay; descriptor.speed = speed; descriptor.yoyo = yoyo; descriptor.loops = loops; descriptor.updateMethod = onUpdate; descriptor.completeMethod = onComplete; return to (descriptor); }
public static Tween to (TweenDescriptor descriptor) { Tween t = new Tween (descriptor); return t; }