// Constructor. public Timer(float seconds, FinishedHandler FinishedCallback = null, bool loop = true, bool clearOnRun = false, StartedHandler StartedCallback = null, StoppedHandler StoppedCallback = null, TickedHandler TickedCallback = null) { this.secondsTarget = seconds; this.Finished = FinishedCallback; this.loop = loop; this.clearOnRun = clearOnRun; this.Started = StartedCallback; this.Stopped = StoppedCallback; this.Ticked = TickedCallback; runner = new Runner(OnStarted, OnStopped); }
// Constructor. public Timer(float seconds, FinishedHandler FinishedCallback = null, bool loop = true, bool clearOnRun = false, StartedHandler StartedCallback = null, StoppedHandler StoppedCallback = null, TickedHandler TickedCallback = null) { if (seconds <= 0.0f) { Debug.LogError("Prevented instantiation of a timer that loops every " + seconds + " seconds. Make sure timers run for longer than 0 seconds. " + "The timer has been set to loop every second to prevent an infinite loop."); seconds = 1.0f; } this.secondsTarget = seconds; this.Finished = FinishedCallback; this.loop = loop; this.clearOnRun = clearOnRun; this.Started = StartedCallback; this.Stopped = StoppedCallback; this.Ticked = TickedCallback; runner = new Runner(OnStarted, OnStopped); }
// Change the timer's stopped callback function. public void SubscribeToStopped(StoppedHandler Callback) { Stopped = Callback; }
public void SetStoppedCallback(StoppedHandler Callback) { Stopped = Callback; }
public Runner(StartedHandler StartedCallback = null, StoppedHandler StoppedCallback = null) { Started = StartedCallback; Stopped = StoppedCallback; }