private void Start() { _tweenSetOne = JTweenControl.Instance.NewSet(); _tweenSetTwo = JTweenControl.Instance.NewSet(); _tweenSequence = JTweenControl.Instance.NewSequence(); var currentAngle = 0f; for (var i = 0; i < _transforms.Length; i++) { var innerRadiusPosition = GetCirclePos(_center, currentAngle, _innerRadius); ITweenHandle tweenHandle; _transforms[i].Move( innerRadiusPosition, _setOneDuration, out tweenHandle, _setOneEaseType); _tweenSetOne.Add(tweenHandle); _transforms[i].RotateY( 360f, _setTwoDuration, out tweenHandle, _sequenceThreeEaseType); _tweenSetTwo.Add(tweenHandle); _transforms[i].Move( innerRadiusPosition, _transforms[i].position, _sequenceThreeDuration, out tweenHandle, _sequenceThreeEaseType); _tweenSequence.Add(tweenHandle); currentAngle += _angle; } _tweenSetOne.AddOnComplete(_tweenSetTwo.Rewind); _tweenSetOne.AddOnComplete(_tweenSetTwo.Play); _tweenSetTwo.AddOnComplete(_tweenSequence.Rewind); _tweenSetTwo.AddOnComplete(_tweenSequence.Play); _tweenSequence.AddOnComplete(_tweenSetOne.Rewind); _tweenSequence.AddOnComplete(_tweenSetOne.Play); _tweenSetOne.Play(); }
/// <summary> /// Clears the contents of the <see cref="ITweenSet"/> <paramref name="tweenSet"/> and returns it to /// the pool. /// </summary> /// <param name="tweenSet">The <see cref="ITweenSet"/> instance to be recycled; any local reference to /// this should be cleared after it has been recycled.</param> public void RecycleSet(ITweenSet tweenSet) { tweenSet.Clear(); _tweenSets.AddLast((TweenSet)tweenSet); }