* Fixed a bug in the AnimationManager where useNumericIndex was always set to true

* Added in lots of Particle examples
* Added in the start of a Breakout game
* Added in the start of a Platformer game
This commit is contained in:
Richard Davey
2013-09-16 01:52:15 +01:00
parent e705509d29
commit e3869ff3ac
6 changed files with 102 additions and 4 deletions
+4 -1
View File
@@ -48,7 +48,10 @@ Version 1.0.2
* Added 'collideWorldBounds' to Emitter.makeParticles function.
* Added Emitter.angularDrag
* Changed Emitter.bounce from a number to a Point, so now set its x/y properties to control different amounts of bounce per axis.
* Fixed a bug in the AnimationManager where useNumericIndex was always set to true
* Added in lots of Particle examples
* Added in the start of a Breakout game
* Added in the start of a Platformer game
Version 1.0.1
+91
View File
@@ -0,0 +1,91 @@
<?php
$title = "Breakout";
require('../head.php');
?>
<script type="text/javascript">
(function () {
var game = new Phaser.Game(800, 600, Phaser.CANVAS, '', { preload: preload, create: create, update: update, render: render });
function preload() {
game.load.atlas('breakout', 'assets/sprites/breakout.png', 'assets/sprites/breakout.json');
}
var ball;
var paddle;
var bricks;
var ballOnPaddle = true;
function create() {
var brick;
bricks = game.add.group();
for (var y = 0; y < 4; y++)
{
for (var x = 0; x < 15; x++)
{
brick = bricks.create(120 + (x * 36), 100 + (y * 52), 'breakout', 'brick_' + (y+1) + '_1.png');
brick.body.bounce.setTo(1, 1);
brick.body.immovable = true;
}
}
ball = game.add.sprite(game.world.centerX, 534, 'breakout', 'ball_1.png');
ball.body.collideWorldBounds = true;
ball.body.bounce.setTo(1, 1);
ball.animations.add('spin', [ 'ball_1.png', 'ball_2.png', 'ball_3.png', 'ball_4.png', 'ball_5.png' ], 50, true, false);
paddle = game.add.sprite(game.world.centerX, 550, 'breakout', 'paddle_big.png');
paddle.body.collideWorldBounds = true;
paddle.body.bounce.setTo(1, 1);
paddle.body.immovable = true;
game.input.onDown.add(releaseBall, this);
}
function update () {
paddle.x = game.input.x;
if (ballOnPaddle)
{
ball.x = paddle.x + 16;
}
else
{
game.physics.collide(paddle, ball);
game.physics.collide(ball, bricks, ballHitBrick, null, this);
}
}
function releaseBall () {
ballOnPaddle = false;
ball.body.velocity.y = -300;
ball.body.velocity.x = -75;
ball.animations.play('spin');
}
function ballHitBrick (_ball, _brick) {
_brick.kill();
}
function render () {
}
})();
</script>
<?php
require('../foot.php');
?>
Binary file not shown.

After

Width:  |  Height:  |  Size: 176 KiB

+1 -1
View File
@@ -3,7 +3,7 @@
*/
var Phaser = Phaser || {
VERSION: '1.0.1',
VERSION: '1.0.2',
GAMES: [],
AUTO: 0,
CANVAS: 1,
+5 -2
View File
@@ -59,8 +59,9 @@ Phaser.AnimationManager.prototype = {
frames = frames || null;
frameRate = frameRate || 60;
loop = loop || false;
useNumericIndex = useNumericIndex || true;
if (typeof loop == 'undefined') { loop = false; }
if (typeof useNumericIndex == 'undefined') { useNumericIndex = true; }
if (this._frameData == null)
{
@@ -111,6 +112,8 @@ Phaser.AnimationManager.prototype = {
*/
validateFrames: function (frames, useNumericIndex) {
if (typeof useNumericIndex == 'undefined') { useNumericIndex = true; }
for (var i = 0; i < frames.length; i++)
{
if (useNumericIndex == true)
+1
View File
@@ -164,6 +164,7 @@ Phaser.Animation.Parser = {
for (var key in frames)
{
console.log(key);
var uuid = game.rnd.uuid();
newFrame = data.addFrame(new Phaser.Animation.Frame(