Abstract Clock is the base type of all Clocks
It has a few opinions
To implement your own clock, extend Clock and override start/stop to start and stop the clock, then call update() with whatever method is unique to your clock implementation.
Get the elapsed time for the last completed frame
Returns if the clock is currently running
Get the current time in milliseconds
Schedule a callback to fire given a timeout in milliseconds using the excalibur [[Clock]]
This is useful to use over the built in browser
setTimeout because callbacks will be tied to the
excalibur update clock, instead of browser time, this means that callbacks wont fire if the game is
stopped or paused.
callback to fire
Optionally specify a timeout in milliseconds from now, default is 0ms which means the next possible tick
Start the clock, it will then periodically call the tick(elapsedMilliseconds) since the last tick
Stop the clock, tick() is no longer called