Time
Class: Phaser.Time
Constructor
new Time(game)
This is the core internal game clock.
It manages the elapsed time and calculation of elapsed values, used for game object motion and tweens,
and also handles the standard Timer pool.
To create a general timed event, use the master Phaser.Timer accessible through events.
There are different types of time in Phaser:
-
Game time always runs at the speed of time in real life.
Unlike wall-clock time, game time stops when Phaser is paused.
Game time is used for timer events.
-
Physics time represents the amount of time given to physics calculations.
When slowMotion is in effect physics time runs slower than game time.
Like game time, physics time stops when Phaser is paused.Physics time is used for physics calculations and tweens.
-
Wall-clock time represents the duration between two events in real life time.
This time is independent of Phaser and always progresses, regardless of if Phaser is paused.
Parameters
Name | Type | Description |
---|---|---|
game | Phaser.Game | A reference to the currently running game. |
- Source code: time/Time.js (Line 38)
Public Properties
- Source code: time/Time.js (Line 165)
- Source code: time/Time.js (Line 596)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 126)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 86)
- See
-
- Phaser.Time.time
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 99)
- Source code: time/Time.js (Line 245)
- Source code: time/Time.js (Line 183)
- Source code: time/Time.js (Line 201)
- Source code: time/Time.js (Line 192)
- Source code: time/Time.js (Line 174)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 44)
- Source code: time/Time.js (Line 220)
- Default Value
- 1000
- Source code: time/Time.js (Line 211)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 72)
- Source code: time/Time.js (Line 227)
- Source code: time/Time.js (Line 112)
- Source code: time/Time.js (Line 119)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 58)
- 1.0 = normal speed
- 2.0 = half speed
- Default Value
- 1
- Source code: time/Time.js (Line 158)
- Source code: time/Time.js (Line 149)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 51)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 239)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 233)
advancedTiming : boolean
If true then advanced profiling, including the fps rate, fps min/max, suggestedFps and msMin/msMax are updated.
desiredFps : integer
The desired frame rate of the game.
This is used is used to calculate the physic / logic multiplier and how to apply catch-up logic updates. The desired frame rate of the game. Defaults to 60.
<internal> desiredFpsMult : integer
The desiredFps multiplier as used by Game.update.
<internal> elapsed : number
Elapsed time since the last time update, in milliseconds, based on now
.
This value may include time that the game is paused/inactive.
Note: This is updated only once per game loop - even if multiple logic update steps are done.
Use physicsTime as a basis of game/logic calculations instead.
<internal> elapsedMS : integer
The time in ms since the last time update, in milliseconds, based on time
.
This value is corrected for game pauses and will be "about zero" after a game is resumed.
Note: This is updated once per game loop - even if multiple logic update steps are done.
Use physicsTime as a basis of game/logic calculations instead.
events : Phaser.Timer
A Phaser.Timer object bound to the master clock (this Time object) which events can be added to.
[readonly] fps : number
Advanced timing result: Frames per second.
Only calculated if advancedTiming is enabled.
fpsMax : number
Advanced timing result: The highest rate the fps has reached (usually no higher than 60fps).
Only calculated if advancedTiming is enabled.
This value can be manually reset.
fpsMin : number
Advanced timing result: The lowest rate the fps has dropped to.
Only calculated if advancedTiming is enabled.
This value can be manually reset.
[readonly] frames : integer
Advanced timing result: The number of render frames record in the last second.
Only calculated if advancedTiming is enabled.
<internal> game : Phaser.Game
Local reference to game.
msMax : number
Advanced timing result: The maximum amount of time the game has taken between consecutive frames.
Only calculated if advancedTiming is enabled.
This value can be manually reset.
msMin : number
Advanced timing result: The minimum amount of time the game has taken between consecutive frames.
Only calculated if advancedTiming is enabled.
This value can be manually reset.
<internal> now : number
An increasing value representing cumulative milliseconds since an undisclosed epoch.
While this value is in milliseconds and can be used to compute time deltas,
it must must not be used with Date.now()
as it may not use the same epoch / starting reference.
The source may either be from a high-res source (eg. if RAF is available) or the standard Date.now;
the value can only be relied upon within a particular game instance.
pauseDuration : number
Records how long the game was last paused, in milliseconds.
(This is not updated until the game is resumed.)
physicsElapsed : number
The physics update delta, in fractional seconds.
This should be used as an applicable multiplier by all logic update steps (eg. preUpdate/postUpdate/update
)
to ensure consistent game timing. Game/logic timing can drift from real-world time if the system
is unable to consistently maintain the desired FPS.
With fixed-step updates this is normally equivalent to 1.0 / desiredFps
.
physicsElapsedMS : number
The physics update delta, in milliseconds - equivalent to physicsElapsed * 1000
.
<internal> prevTime : number
The now
when the previous update occurred.
slowMotion : number
Scaling factor to make the game move smoothly in slow motion
suggestedFps : number
The suggested frame rate for your game, based on an averaged real frame rate.
This value is only populated if Time.advancedTiming
is enabled.
Note: This is not available until after a few frames have passed; until then
it's set to the same value as desiredFps.
<internal> time : integer
The Date.now()
value when the time was last updated.
<internal> timeExpected : number
The time when the next call is expected when using setTimer to control the update loop
<internal> timeToCall : number
The value that setTimeout needs to work out when to next update
Public Methods
- Source code: time/Time.js (Line 308)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 293)
- Source code: time/Time.js (Line 323)
- Source code: time/Time.js (Line 571)
- Source code: time/Time.js (Line 560)
- Source code: time/Time.js (Line 360)
- Source code: time/Time.js (Line 342)
- Source code: time/Time.js (Line 582)
- Source code: time/Time.js (Line 550)
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: time/Time.js (Line 378)
add(timer) → {Phaser.Timer}
Adds an existing Phaser.Timer object to the Timer pool.
Parameters
Name | Type | Description |
---|---|---|
timer | Phaser.Timer | An existing Phaser.Timer object. |
Returns
The given Phaser.Timer object.
<internal> boot()
Called automatically by Phaser.Game after boot. Should not be called directly.
create(autoDestroy) → {Phaser.Timer}
Creates a new stand-alone Phaser.Timer object.
Parameters
Name | Type | Argument | Default | Description |
---|---|---|---|---|
autoDestroy | boolean | <optional> | true | A Timer that is set to automatically destroy itself will do so after all of its events have been dispatched (assuming no looping events). |
Returns
The Timer object that was created.
elapsedSecondsSince(since) → {number}
How long has passed since the given time (in seconds).
Parameters
Name | Type | Description |
---|---|---|
since | number | The time you want to measure (in seconds). |
Returns
Duration between given time and now (in seconds).
elapsedSince(since) → {number}
How long has passed since the given time.
Parameters
Name | Type | Description |
---|---|---|
since | number | The time you want to measure against. |
Returns
The difference between the given time and now.
refresh()
Refreshes the Time.time and Time.elapsedMS properties from the system clock.
removeAll()
Remove all Timer objects, regardless of their state and clears all Timers from the events timer.
reset()
Resets the private _started value to now and removes all currently running Timers.
totalElapsedSeconds() → {number}
The number of seconds that have elapsed since the game was started.
Returns
The number of seconds that have elapsed since the game was started.
<internal> update(time)
Updates the game clock and if enabled the advanced timing data. This is called automatically by Phaser.Game.
Parameters
Name | Type | Description |
---|---|---|
time | number | The current relative timestamp; see now. |
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.Time.html