mirror of
https://github.com/photonstorm/phaser
synced 2024-11-23 21:24:09 +00:00
Fixed Fullscreen example and State preloading.
This commit is contained in:
parent
1646157c0c
commit
be27442139
5 changed files with 104 additions and 82 deletions
|
@ -3,22 +3,25 @@ var game = new Phaser.Game(800, 600, Phaser.CANVAS, 'phaser-example', { preload:
|
||||||
|
|
||||||
function preload() {
|
function preload() {
|
||||||
|
|
||||||
game.load.image('atari1', 'assets/sprites/atari130xe.png');
|
game.load.image('dragon', 'assets/pics/cougar_dragonsun.png');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function create() {
|
function create() {
|
||||||
|
|
||||||
var sprite = game.add.sprite(0, 0, 'atari1');
|
var sprite = game.add.sprite(game.world.centerX, game.world.centerY, 'dragon');
|
||||||
|
sprite.anchor.set(0.5);
|
||||||
|
|
||||||
game.stage.backgroundColor = '#e3ed49';
|
game.stage.backgroundColor = '#000';
|
||||||
|
|
||||||
// Stretch to fill
|
// Stretch to fill
|
||||||
// game.stage.fullScreenScaleMode = Phaser.StageScaleMode.EXACT_FIT;
|
game.scale.fullScreenScaleMode = Phaser.ScaleManager.EXACT_FIT;
|
||||||
|
|
||||||
// Keep original size
|
// Keep original size
|
||||||
// game.stage.fullScreenScaleMode = Phaser.StageScaleMode.NO_SCALE;
|
// game.scale.fullScreenScaleMode = Phaser.ScaleManager.NO_SCALE;
|
||||||
|
|
||||||
// Maintain aspect ratio
|
// Maintain aspect ratio
|
||||||
game.stage.fullScreenScaleMode = Phaser.StageScaleMode.SHOW_ALL;
|
// game.scale.fullScreenScaleMode = Phaser.ScaleManager.SHOW_ALL;
|
||||||
|
|
||||||
game.input.onDown.add(gofull, this);
|
game.input.onDown.add(gofull, this);
|
||||||
|
|
||||||
|
@ -32,16 +35,10 @@ function gofull() {
|
||||||
|
|
||||||
function update() {
|
function update() {
|
||||||
|
|
||||||
if (document.getElementsByTagName('body')[0].scrollTop > 1000)
|
|
||||||
{
|
|
||||||
game.stage.backgroundColor = '#87ff55';
|
|
||||||
window.scrollTo(0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function render () {
|
function render () {
|
||||||
|
|
||||||
game.debug.renderText('Tap to go fullscreen', 32, 150);
|
game.debug.renderText('Click / Tap to go fullscreen', 270, 16);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
44
examples/wip/fullscreen.js
Normal file
44
examples/wip/fullscreen.js
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
|
||||||
|
var game = new Phaser.Game(800, 600, Phaser.CANVAS, 'phaser-example', { preload: preload, create: create, update: update, render: render });
|
||||||
|
|
||||||
|
function preload() {
|
||||||
|
|
||||||
|
game.load.image('dragon', 'assets/pics/cougar_dragonsun.png');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function create() {
|
||||||
|
|
||||||
|
var sprite = game.add.sprite(game.world.centerX, game.world.centerY, 'dragon');
|
||||||
|
sprite.anchor.set(0.5);
|
||||||
|
|
||||||
|
game.stage.backgroundColor = '#000';
|
||||||
|
|
||||||
|
// Stretch to fill
|
||||||
|
game.scale.fullScreenScaleMode = Phaser.ScaleManager.EXACT_FIT;
|
||||||
|
|
||||||
|
// Keep original size
|
||||||
|
// game.scale.fullScreenScaleMode = Phaser.ScaleManager.NO_SCALE;
|
||||||
|
|
||||||
|
// Maintain aspect ratio
|
||||||
|
// game.scale.fullScreenScaleMode = Phaser.ScaleManager.SHOW_ALL;
|
||||||
|
|
||||||
|
game.input.onDown.add(gofull, this);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function gofull() {
|
||||||
|
|
||||||
|
game.scale.startFullScreen();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function update() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function render () {
|
||||||
|
|
||||||
|
game.debug.renderText('Click / Tap to go fullscreen', 270, 16);
|
||||||
|
|
||||||
|
}
|
|
@ -246,13 +246,6 @@ Phaser.Game = function (width, height, renderer, parent, state, transparent, ant
|
||||||
*/
|
*/
|
||||||
this._codePaused = false;
|
this._codePaused = false;
|
||||||
|
|
||||||
/**
|
|
||||||
* @property {boolean} _loadComplete - Whether load complete loading or not.
|
|
||||||
* @private
|
|
||||||
* @default
|
|
||||||
*/
|
|
||||||
this._loadComplete = false;
|
|
||||||
|
|
||||||
// Parse the configuration object (if any)
|
// Parse the configuration object (if any)
|
||||||
if (arguments.length === 1 && typeof arguments[0] === 'object')
|
if (arguments.length === 1 && typeof arguments[0] === 'object')
|
||||||
{
|
{
|
||||||
|
@ -328,12 +321,12 @@ Phaser.Game.prototype = {
|
||||||
|
|
||||||
if (config['width'])
|
if (config['width'])
|
||||||
{
|
{
|
||||||
this.width = this.parseDimension(config['width'], 0);
|
this.width = Phaser.Utils.parseDimension(config['width'], 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config['height'])
|
if (config['height'])
|
||||||
{
|
{
|
||||||
this.height = this.parseDimension(config['height'], 1);
|
this.height = Phaser.Utils.parseDimension(config['height'], 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config['renderer'])
|
if (config['renderer'])
|
||||||
|
@ -373,46 +366,6 @@ Phaser.Game.prototype = {
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
|
||||||
* Get dimension.
|
|
||||||
*
|
|
||||||
* @method Phaser.Game#parseDimension
|
|
||||||
* @protected
|
|
||||||
*/
|
|
||||||
parseDimension: function (size, dimension) {
|
|
||||||
|
|
||||||
var f = 0;
|
|
||||||
var px = 0;
|
|
||||||
|
|
||||||
if (typeof size === 'string')
|
|
||||||
{
|
|
||||||
// %?
|
|
||||||
if (size.substr(-1) === '%')
|
|
||||||
{
|
|
||||||
f = parseInt(size, 10) / 100;
|
|
||||||
|
|
||||||
if (dimension === 0)
|
|
||||||
{
|
|
||||||
px = window.innerWidth * f;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
px = window.innerHeight * f;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
px = parseInt(size, 10);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
px = size;
|
|
||||||
}
|
|
||||||
|
|
||||||
return px;
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize engine sub modules and start the game.
|
* Initialize engine sub modules and start the game.
|
||||||
|
@ -472,12 +425,9 @@ Phaser.Game.prototype = {
|
||||||
this.sound.boot();
|
this.sound.boot();
|
||||||
this.state.boot();
|
this.state.boot();
|
||||||
|
|
||||||
this.load.onLoadComplete.add(this.loadComplete, this);
|
|
||||||
|
|
||||||
this.showDebugHeader();
|
this.showDebugHeader();
|
||||||
|
|
||||||
this.isRunning = true;
|
this.isRunning = true;
|
||||||
this._loadComplete = false;
|
|
||||||
|
|
||||||
if (this.config && this.config['forceSetTimeOut'])
|
if (this.config && this.config['forceSetTimeOut'])
|
||||||
{
|
{
|
||||||
|
@ -589,20 +539,6 @@ Phaser.Game.prototype = {
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
|
||||||
* Called when the load has finished, after preload was run.
|
|
||||||
*
|
|
||||||
* @method Phaser.Game#loadComplete
|
|
||||||
* @protected
|
|
||||||
*/
|
|
||||||
loadComplete: function () {
|
|
||||||
|
|
||||||
this._loadComplete = true;
|
|
||||||
|
|
||||||
this.state.loadComplete();
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The core game loop.
|
* The core game loop.
|
||||||
*
|
*
|
||||||
|
|
|
@ -121,7 +121,6 @@ Phaser.StateManager = function (game, pendingState) {
|
||||||
*/
|
*/
|
||||||
this.onShutDownCallback = null;
|
this.onShutDownCallback = null;
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Phaser.StateManager.prototype = {
|
Phaser.StateManager.prototype = {
|
||||||
|
@ -135,6 +134,7 @@ Phaser.StateManager.prototype = {
|
||||||
|
|
||||||
this.game.onPause.add(this.pause, this);
|
this.game.onPause.add(this.pause, this);
|
||||||
this.game.onResume.add(this.resume, this);
|
this.game.onResume.add(this.resume, this);
|
||||||
|
this.game.load.onLoadComplete.add(this.loadComplete, this);
|
||||||
|
|
||||||
if (this._pendingState !== null)
|
if (this._pendingState !== null)
|
||||||
{
|
{
|
||||||
|
@ -306,7 +306,8 @@ Phaser.StateManager.prototype = {
|
||||||
// Is the loader empty?
|
// Is the loader empty?
|
||||||
if (this.game.load.totalQueuedFiles() === 0)
|
if (this.game.load.totalQueuedFiles() === 0)
|
||||||
{
|
{
|
||||||
this.game.loadComplete();
|
this.loadComplete();
|
||||||
|
// this.game.loadComplete();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -317,7 +318,8 @@ Phaser.StateManager.prototype = {
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// No init? Then there was nothing to load either
|
// No init? Then there was nothing to load either
|
||||||
this.game.loadComplete();
|
this.loadComplete();
|
||||||
|
// this.game.loadComplete();
|
||||||
}
|
}
|
||||||
|
|
||||||
this._pendingState = null;
|
this._pendingState = null;
|
||||||
|
|
|
@ -12,6 +12,49 @@
|
||||||
*/
|
*/
|
||||||
Phaser.Utils = {
|
Phaser.Utils = {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a unit dimension from a string.
|
||||||
|
*
|
||||||
|
* @method Phaser.Utils.parseDimension
|
||||||
|
* @param {string|number} size - The size to parse.
|
||||||
|
* @param {number} dimension - The window dimension to check.
|
||||||
|
* @return {number} The parsed dimension.
|
||||||
|
*/
|
||||||
|
parseDimension: function (size, dimension) {
|
||||||
|
|
||||||
|
var f = 0;
|
||||||
|
var px = 0;
|
||||||
|
|
||||||
|
if (typeof size === 'string')
|
||||||
|
{
|
||||||
|
// %?
|
||||||
|
if (size.substr(-1) === '%')
|
||||||
|
{
|
||||||
|
f = parseInt(size, 10) / 100;
|
||||||
|
|
||||||
|
if (dimension === 0)
|
||||||
|
{
|
||||||
|
px = window.innerWidth * f;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
px = window.innerHeight * f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
px = parseInt(size, 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
px = size;
|
||||||
|
}
|
||||||
|
|
||||||
|
return px;
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A standard Fisher-Yates Array shuffle implementation.
|
* A standard Fisher-Yates Array shuffle implementation.
|
||||||
* @method Phaser.Utils.shuffle
|
* @method Phaser.Utils.shuffle
|
||||||
|
|
Loading…
Reference in a new issue