mirror of
https://github.com/wassname/phaser.git
synced 2026-09-09 11:28:47 +08:00
Preparing for new release
This commit is contained in:
+115
-107
@@ -1,129 +1,137 @@
|
||||
/// <reference path="Game.ts" />
|
||||
|
||||
class Time {
|
||||
/**
|
||||
* Phaser
|
||||
*/
|
||||
|
||||
constructor(game: Game) {
|
||||
module Phaser {
|
||||
|
||||
this._started = Date.now();
|
||||
this._timeLastSecond = this._started;
|
||||
this.time = this._started;
|
||||
export class Time {
|
||||
|
||||
}
|
||||
constructor(game: Game) {
|
||||
|
||||
private _game: Game;
|
||||
private _started: number;
|
||||
this._started = Date.now();
|
||||
this._timeLastSecond = this._started;
|
||||
this.time = this._started;
|
||||
|
||||
|
||||
public timeScale: number = 1.0;
|
||||
public elapsed: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @property time
|
||||
* @type Number
|
||||
*/
|
||||
public time: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @property now
|
||||
* @type Number
|
||||
*/
|
||||
public now: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @property delta
|
||||
* @type Number
|
||||
*/
|
||||
public delta: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @method totalElapsedSeconds
|
||||
* @return {Number}
|
||||
*/
|
||||
public get totalElapsedSeconds(): number {
|
||||
|
||||
return (this.now - this._started) * 0.001;
|
||||
|
||||
}
|
||||
|
||||
public fps: number = 0;
|
||||
public fpsMin: number = 1000;
|
||||
public fpsMax: number = 0;
|
||||
public msMin: number = 1000;
|
||||
public msMax: number = 0;
|
||||
public frames: number = 0;
|
||||
|
||||
private _timeLastSecond: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @method update
|
||||
*/
|
||||
public update() {
|
||||
|
||||
// Can we use performance.now() ?
|
||||
this.now = Date.now(); // mark
|
||||
this.delta = this.now - this.time; // elapsedMS
|
||||
|
||||
this.msMin = Math.min(this.msMin, this.delta);
|
||||
this.msMax = Math.max(this.msMax, this.delta);
|
||||
|
||||
this.frames++;
|
||||
|
||||
if (this.now > this._timeLastSecond + 1000)
|
||||
{
|
||||
this.fps = Math.round((this.frames * 1000) / (this.now - this._timeLastSecond));
|
||||
this.fpsMin = Math.min(this.fpsMin, this.fps);
|
||||
this.fpsMax = Math.max(this.fpsMax, this.fps);
|
||||
|
||||
this._timeLastSecond = this.now;
|
||||
this.frames = 0;
|
||||
}
|
||||
|
||||
this.time = this.now; // _total
|
||||
private _game: Game;
|
||||
private _started: number;
|
||||
|
||||
//// Lock the delta at 0.1 to minimise fps tunneling
|
||||
//if (this.delta > 0.1)
|
||||
//{
|
||||
// this.delta = 0.1;
|
||||
//}
|
||||
|
||||
}
|
||||
public timeScale: number = 1.0;
|
||||
public elapsed: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @method elapsedSince
|
||||
* @param {Number} since
|
||||
* @return {Number}
|
||||
*/
|
||||
public elapsedSince(since: number): number {
|
||||
/**
|
||||
*
|
||||
* @property time
|
||||
* @type Number
|
||||
*/
|
||||
public time: number = 0;
|
||||
|
||||
return this.now - since;
|
||||
/**
|
||||
*
|
||||
* @property now
|
||||
* @type Number
|
||||
*/
|
||||
public now: number = 0;
|
||||
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @property delta
|
||||
* @type Number
|
||||
*/
|
||||
public delta: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @method elapsedSecondsSince
|
||||
* @param {Number} since
|
||||
* @return {Number}
|
||||
*/
|
||||
public elapsedSecondsSince(since: number): number {
|
||||
/**
|
||||
*
|
||||
* @method totalElapsedSeconds
|
||||
* @return {Number}
|
||||
*/
|
||||
public get totalElapsedSeconds(): number {
|
||||
|
||||
return (this.now - since) * 0.001;
|
||||
return (this.now - this._started) * 0.001;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @method reset
|
||||
*/
|
||||
public reset() {
|
||||
public fps: number = 0;
|
||||
public fpsMin: number = 1000;
|
||||
public fpsMax: number = 0;
|
||||
public msMin: number = 1000;
|
||||
public msMax: number = 0;
|
||||
public frames: number = 0;
|
||||
|
||||
this._started = this.now;
|
||||
private _timeLastSecond: number = 0;
|
||||
|
||||
/**
|
||||
*
|
||||
* @method update
|
||||
*/
|
||||
public update() {
|
||||
|
||||
// Can we use performance.now() ?
|
||||
this.now = Date.now(); // mark
|
||||
this.delta = this.now - this.time; // elapsedMS
|
||||
|
||||
this.msMin = Math.min(this.msMin, this.delta);
|
||||
this.msMax = Math.max(this.msMax, this.delta);
|
||||
|
||||
this.frames++;
|
||||
|
||||
if (this.now > this._timeLastSecond + 1000)
|
||||
{
|
||||
this.fps = Math.round((this.frames * 1000) / (this.now - this._timeLastSecond));
|
||||
this.fpsMin = Math.min(this.fpsMin, this.fps);
|
||||
this.fpsMax = Math.max(this.fpsMax, this.fps);
|
||||
|
||||
this._timeLastSecond = this.now;
|
||||
this.frames = 0;
|
||||
}
|
||||
|
||||
this.time = this.now; // _total
|
||||
|
||||
//// Lock the delta at 0.1 to minimise fps tunneling
|
||||
//if (this.delta > 0.1)
|
||||
//{
|
||||
// this.delta = 0.1;
|
||||
//}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @method elapsedSince
|
||||
* @param {Number} since
|
||||
* @return {Number}
|
||||
*/
|
||||
public elapsedSince(since: number): number {
|
||||
|
||||
return this.now - since;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @method elapsedSecondsSince
|
||||
* @param {Number} since
|
||||
* @return {Number}
|
||||
*/
|
||||
public elapsedSecondsSince(since: number): number {
|
||||
|
||||
return (this.now - since) * 0.001;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @method reset
|
||||
*/
|
||||
public reset() {
|
||||
|
||||
this._started = this.now;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user