State handling done. Refactored the Game constructor a LOT. Now works from within closures, outside of them, with Phaser.State objects or normal Objects with the right functions inside. Also fixed some small bugs in PluginManager and various scope issues with RAF.

This commit is contained in:
Richard Davey
2013-08-29 07:06:16 +01:00
parent 3c8cd20b70
commit 4bbcc380c5
12 changed files with 558 additions and 475 deletions
+55
View File
@@ -0,0 +1,55 @@
<!DOCTYPE HTML>
<html>
<head>
<title>phaser.js - a new beginning</title>
<?php
require('js.php');
?>
</head>
<body>
<script type="text/javascript">
(function () {
var state = new Phaser.State();
state.preload = function() {
console.log('state preload called');
// When an instance of Phaser.State is added to Phaser.Game it becomes bound to that game
// which opens up lots of handy short-cuts to helpers and libs, such as this.math, this.load, this.cache, etc
this.load.image('cockpit', 'assets/pics/cockpit.png');
this.load.image('rememberMe', 'assets/pics/remember-me.jpg');
this.load.image('overdose', 'assets/pics/lance-overdose-loader_eye.png');
this.load.text('copyright', 'assets/warning - copyright.txt');
}
state.create = function() {
console.log('state create called');
// Let's try adding an image to the DOM
document.body.appendChild(this.cache.getImage('cockpit'));
// And some text
var para = document.createElement('pre');
para.innerHTML = this.cache.getText('copyright');
document.body.appendChild(para);
}
var megaBlasterGame = new Phaser.Game();
// In this approach we're using a Phaser.State object and switching to it
// This gives us the advantage that from within state functions you can access 'this' and most the properties of Phaser.Game
megaBlasterGame.switchState(state);
})();
</script>
</body>
</html>