static bool phaseEqualsTweenTime(UnityPhase phase, TweenTime time) { switch (time) { case TweenTime.OnUpdate: case TweenTime.OnUpdateUnscaled: if (phase == UnityPhase.Update) { return(true); } break; case TweenTime.OnLateUpdate: case TweenTime.OnLateUpdateUnscaled: if (phase == UnityPhase.LateUpdate) { return(true); } break; case TweenTime.OnFixedUpdate: if (phase == UnityPhase.FixedUpdate) { return(true); } break; default: throw new ArgumentOutOfRangeException(); } return(false); }
public static TweenManager managed( this TweenTimelineElement timeline, TweenTime time = TweenTime.OnUpdate, float delay = 0, [CallerMemberName] string callerMemberName = "", [CallerFilePath] string callerFilePath = "", [CallerLineNumber] int callerLineNumber = 0 // ReSharper disable ExplicitCallerInfoArgument ) => timeline.managed(TweenManager.Loop.single, time, delay, callerMemberName, callerFilePath, callerLineNumber);
// TODO: implement me: loop(times, forever, yoyo) // notice: looping needs to take into account that some duration might have passed in the // new iteration public TweenManager(ITweenTimeline timeline, TweenTime time, Loop looping, string context, bool stopIfDestroyed = false) { this.timeline = timeline; this.time = time; this.looping = looping; this.context = context; this.stopIfDestroyed = stopIfDestroyed; }
public static TweenManager managed( this ITweenTimeline timeline, TweenTime time = TweenTime.OnUpdate, [CallerMemberName] string callerMemberName = "", [CallerFilePath] string callerFilePath = "", [CallerLineNumber] int callerLineNumber = 0 ) => new TweenManager( timeline, time, TweenManager.Loop.single, createContext(callerMemberName, callerFilePath, callerLineNumber) );
public static TweenManager managed( this TweenTimelineElement timeline, TweenManager.Loop looping, TweenTime time = TweenTime.OnUpdate, float delay = 0, [CallerMemberName] string callerMemberName = "", [CallerFilePath] string callerFilePath = "", [CallerLineNumber] int callerLineNumber = 0 ) => new TweenManager( TweenTimeline.single(timeline, delay), time, looping, createContext(callerMemberName, callerFilePath, callerLineNumber) );
public void Init(TweenTime timeProvider, TweenBuilder builder) { this.timeProvider = timeProvider; this.tweener = builder.Tweener; this.easeType = builder.EaseType; this.tweenType = builder.TweenType; this.easeFunction = builder.EaseFunction; this.duration = builder.Duration; this.delayTime = builder.Delay; this.handler = builder.Handler; this.startTime = 0; this.realTime = 0; this.pauseTime = 0; }
private CoolestTween2() { time = new UnityTweenTime(); unscaledTime = new UnityUnscaledTweenTime(); frameUpdater = new UnityFrameUpdater(); tweens = new LinkedList <Tween>(); cachedTweens = new Queue <Tween>(InitialCacheSize); for (int i = 0; i < InitialCacheSize; i++) { cachedTweens.Enqueue(new Tween()); } frameUpdater.SetFrameUpdateEvent(update); }
Tweens lookupSet(TweenTime time) { switch (time) { case TweenTime.OnUpdate: return(onUpdate); case TweenTime.OnUpdateUnscaled: return(onUpdateUnscaled); case TweenTime.OnLateUpdate: return(onLateUpdate); case TweenTime.OnLateUpdateUnscaled: return(onLateUpdateUnscaled); case TweenTime.OnFixedUpdate: return(onFixedUpdate); default: throw new ArgumentOutOfRangeException(nameof(time), time, null); } }
// TODO: implement me: loop(times, forever, yoyo) // notice: looping needs to take into account that some duration might have passed in the // new iteration public TweenManager(ITweenSequence sequence, TweenTime time, Loop looping) { this.sequence = sequence; this.time = time; this.looping = looping; }
public static TweenManager managed( this ITweenSequence sequence, TweenManager.Loop looping, TweenTime time = TweenTime.OnUpdate ) => new TweenManager(sequence, time, looping);
public static TweenManager managed( this TweenSequenceElement sequence, TweenManager.Loop looping, TweenTime time = TweenTime.OnUpdate, float delay = 0 ) => new TweenManager(TweenSequence.single(sequence, delay), time, looping);
public static TweenManager managed( this TweenSequenceElement sequence, TweenTime time = TweenTime.OnUpdate, float delay = 0 ) => sequence.managed(TweenManager.Loop.single, time, delay);
public Tween(TweenTime timeProvider, TweenBuilder builder) { Init(timeProvider, builder); }
// TODO: implement me: loop(times, forever, yoyo) // notice: looping needs to take into account that some duration might have passed in the // new iteration public TweenManager(ITweenTimeline timeline, TweenTime time, Loop looping) { this.timeline = timeline; this.time = time; this.looping = looping; }
public static TweenManager managed( this TweenTimelineElement timeline, TweenTime time = TweenTime.OnUpdate, float delay = 0 ) => timeline.managed(TweenManager.Loop.single, time, delay);
public static TweenManager managed( this ITweenTimeline timeline, TweenManager.Loop looping, TweenTime time = TweenTime.OnUpdate ) => new TweenManager(timeline, time, looping);