Adding in missing tests and fixing as we go

This commit is contained in:
Richard Davey
2013-05-31 19:28:16 +01:00
parent d510b785b1
commit 31c4d8cb14
30 changed files with 529 additions and 118 deletions
+14
View File
@@ -0,0 +1,14 @@
/// <reference path="../../Phaser/Game.ts" />
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create);
var emitter;
function init() {
game.loader.addImageFile('jet', 'assets/sprites/jets.png');
game.loader.load();
}
function create() {
emitter = game.add.emitter(game.stage.centerX, game.stage.centerY);
emitter.makeParticles('jet', 50, false, 0);
emitter.start(false, 10, 0.1);
}
})();
+25
View File
@@ -0,0 +1,25 @@
/// <reference path="../../Phaser/Game.ts" />
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create);
var emitter: Phaser.Emitter;
function init() {
game.loader.addImageFile('jet', 'assets/sprites/jets.png');
game.loader.load();
}
function create() {
emitter = game.add.emitter(game.stage.centerX, game.stage.centerY);
emitter.makeParticles('jet', 50, false, 0);
emitter.start(false, 10, 0.1);
}
})();
+49
View File
@@ -0,0 +1,49 @@
/// <reference path="../../Phaser/Game.ts" />
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create, update);
var emitter1;
var emitter2;
var emitter3;
var emitter4;
var emitter5;
var emitter6;
function init() {
game.loader.addImageFile('ball1', 'assets/sprites/aqua_ball.png');
game.loader.addImageFile('ball2', 'assets/sprites/yellow_ball.png');
game.loader.addImageFile('ball3', 'assets/sprites/red_ball.png');
game.loader.addImageFile('ball4', 'assets/sprites/purple_ball.png');
game.loader.addImageFile('ball5', 'assets/sprites/blue_ball.png');
game.loader.addImageFile('ball6', 'assets/sprites/green_ball.png');
game.loader.load();
}
function makeEmitter(emitter, x, y, graphic) {
emitter = game.add.emitter(x, y);
emitter.gravity = 100;
emitter.bounce = 0.5;
if(x == 0) {
emitter.setXSpeed(200, 250);
} else {
emitter.setXSpeed(-200, -250);
}
emitter.setYSpeed(-50, -10);
emitter.makeParticles(graphic, 250, false, 0);
return emitter;
}
function create() {
emitter1 = makeEmitter(emitter1, 0, 50, 'ball1');
emitter2 = makeEmitter(emitter2, 0, 250, 'ball2');
emitter3 = makeEmitter(emitter3, 0, 450, 'ball3');
emitter4 = makeEmitter(emitter4, game.stage.width, 50, 'ball4');
emitter5 = makeEmitter(emitter5, game.stage.width, 250, 'ball5');
emitter6 = makeEmitter(emitter6, game.stage.width, 450, 'ball6');
emitter1.start(false, 50, 0.05);
emitter2.start(false, 50, 0.05);
emitter3.start(false, 50, 0.05);
emitter4.start(false, 50, 0.05);
emitter5.start(false, 50, 0.05);
emitter6.start(false, 50, 0.05);
}
function update() {
//game.collide(leftEmitter, rightEmitter);
}
})();
+73
View File
@@ -0,0 +1,73 @@
/// <reference path="../../Phaser/Game.ts" />
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create, update);
var emitter1: Phaser.Emitter;
var emitter2: Phaser.Emitter;
var emitter3: Phaser.Emitter;
var emitter4: Phaser.Emitter;
var emitter5: Phaser.Emitter;
var emitter6: Phaser.Emitter;
function init() {
game.loader.addImageFile('ball1', 'assets/sprites/aqua_ball.png');
game.loader.addImageFile('ball2', 'assets/sprites/yellow_ball.png');
game.loader.addImageFile('ball3', 'assets/sprites/red_ball.png');
game.loader.addImageFile('ball4', 'assets/sprites/purple_ball.png');
game.loader.addImageFile('ball5', 'assets/sprites/blue_ball.png');
game.loader.addImageFile('ball6', 'assets/sprites/green_ball.png');
game.loader.load();
}
function makeEmitter(emitter, x, y, graphic) {
emitter = game.add.emitter(x, y);
emitter.gravity = 100;
emitter.bounce = 0.5;
if (x == 0)
{
emitter.setXSpeed(200, 250);
}
else
{
emitter.setXSpeed(-200, -250);
}
emitter.setYSpeed(-50, -10);
emitter.makeParticles(graphic, 250, false, 0);
return emitter;
}
function create() {
emitter1 = makeEmitter(emitter1, 0, 50, 'ball1');
emitter2 = makeEmitter(emitter2, 0, 250, 'ball2');
emitter3 = makeEmitter(emitter3, 0, 450, 'ball3');
emitter4 = makeEmitter(emitter4, game.stage.width, 50, 'ball4');
emitter5 = makeEmitter(emitter5, game.stage.width, 250, 'ball5');
emitter6 = makeEmitter(emitter6, game.stage.width, 450, 'ball6');
emitter1.start(false, 50, 0.05);
emitter2.start(false, 50, 0.05);
emitter3.start(false, 50, 0.05);
emitter4.start(false, 50, 0.05);
emitter5.start(false, 50, 0.05);
emitter6.start(false, 50, 0.05);
}
function update() {
//game.collide(leftEmitter, rightEmitter);
}
})();
+46
View File
@@ -0,0 +1,46 @@
var __extends = this.__extends || function (d, b) {
function __() { this.constructor = d; }
__.prototype = b.prototype;
d.prototype = new __();
};
/// <reference path="../../Phaser/Game.ts" />
/// <reference path="../../Phaser/gameobjects/Particle.ts" />
/// <reference path="../../Phaser/gameobjects/Emitter.ts" />
// Actually we could achieve the same result as this by using a sprite sheet and basic Particle
// but it still shows you how to use it properly from TypeScript, so it was worth making
var customParticle = (function (_super) {
__extends(customParticle, _super);
function customParticle(game) {
_super.call(this, game);
var s = [
'carrot',
'melon',
'eggplant',
'mushroom',
'pineapple'
];
this.texture.loadImage(game.math.getRandom(s));
}
return customParticle;
})(Phaser.Particle);
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create);
var emitter;
function init() {
game.loader.addImageFile('carrot', 'assets/sprites/carrot.png');
game.loader.addImageFile('melon', 'assets/sprites/melon.png');
game.loader.addImageFile('eggplant', 'assets/sprites/eggplant.png');
game.loader.addImageFile('mushroom', 'assets/sprites/mushroom.png');
game.loader.addImageFile('pineapple', 'assets/sprites/pineapple.png');
game.loader.load();
}
function create() {
emitter = game.add.emitter(game.stage.centerX, 50);
emitter.gravity = 100;
// Here we tell the emitter to use our customParticle class
// The customParticle needs to extend Particle and must take game:Game as the first constructor parameter, otherwise it's free as a bird
emitter.particleClass = customParticle;
emitter.makeParticles(null, 500, false, 0);
emitter.start(false, 10, 0.05);
}
})();
+52
View File
@@ -0,0 +1,52 @@
/// <reference path="../../Phaser/Game.ts" />
/// <reference path="../../Phaser/gameobjects/Particle.ts" />
/// <reference path="../../Phaser/gameobjects/Emitter.ts" />
// Actually we could achieve the same result as this by using a sprite sheet and basic Particle
// but it still shows you how to use it properly from TypeScript, so it was worth making
class customParticle extends Phaser.Particle {
constructor(game:Phaser.Game) {
super(game);
var s = ['carrot', 'melon', 'eggplant', 'mushroom', 'pineapple'];
this.texture.loadImage(game.math.getRandom(s));
}
}
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create);
var emitter: Phaser.Emitter;
function init() {
game.loader.addImageFile('carrot', 'assets/sprites/carrot.png');
game.loader.addImageFile('melon', 'assets/sprites/melon.png');
game.loader.addImageFile('eggplant', 'assets/sprites/eggplant.png');
game.loader.addImageFile('mushroom', 'assets/sprites/mushroom.png');
game.loader.addImageFile('pineapple', 'assets/sprites/pineapple.png');
game.loader.load();
}
function create() {
emitter = game.add.emitter(game.stage.centerX, 50);
emitter.gravity = 100;
// Here we tell the emitter to use our customParticle class
// The customParticle needs to extend Particle and must take game:Game as the first constructor parameter, otherwise it's free as a bird
emitter.particleClass = customParticle;
emitter.makeParticles(null, 500, false, 0);
emitter.start(false, 10, 0.05);
}
})();
+30
View File
@@ -0,0 +1,30 @@
/// <reference path="../../Phaser/Game.ts" />
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create, update);
var leftEmitter;
var rightEmitter;
function init() {
game.loader.addImageFile('ball1', 'assets/sprites/aqua_ball.png');
game.loader.addImageFile('ball2', 'assets/sprites/yellow_ball.png');
game.loader.load();
}
function create() {
leftEmitter = game.add.emitter(0, game.stage.centerY - 200);
leftEmitter.gravity = 100;
leftEmitter.bounce = 0.5;
leftEmitter.setXSpeed(100, 200);
leftEmitter.setYSpeed(-50, 50);
leftEmitter.makeParticles('ball1', 250, false, 1);
rightEmitter = game.add.emitter(game.stage.width + 20, game.stage.centerY - 200);
rightEmitter.gravity = 100;
rightEmitter.bounce = 0.5;
rightEmitter.setXSpeed(-100, -200);
rightEmitter.setYSpeed(-50, 50);
rightEmitter.makeParticles('ball2', 250, false, 1);
leftEmitter.start(false, 50, 0.05);
rightEmitter.start(false, 50, 0.05);
}
function update() {
//game.collide(leftEmitter, rightEmitter);
}
})();
+46
View File
@@ -0,0 +1,46 @@
/// <reference path="../../Phaser/Game.ts" />
(function () {
var game = new Phaser.Game(this, 'game', 800, 600, init, create, update);
var leftEmitter: Phaser.Emitter;
var rightEmitter: Phaser.Emitter;
function init() {
game.loader.addImageFile('ball1', 'assets/sprites/aqua_ball.png');
game.loader.addImageFile('ball2', 'assets/sprites/yellow_ball.png');
game.loader.load();
}
function create() {
leftEmitter = game.add.emitter(0, game.stage.centerY - 200);
leftEmitter.gravity = 100;
leftEmitter.bounce = 0.5;
leftEmitter.setXSpeed(100, 200);
leftEmitter.setYSpeed(-50, 50);
leftEmitter.makeParticles('ball1', 250, false, 1);
rightEmitter = game.add.emitter(game.stage.width + 20, game.stage.centerY - 200);
rightEmitter.gravity = 100;
rightEmitter.bounce = 0.5;
rightEmitter.setXSpeed(-100, -200);
rightEmitter.setYSpeed(-50, 50);
rightEmitter.makeParticles('ball2', 250, false, 1);
leftEmitter.start(false, 50, 0.05);
rightEmitter.start(false, 50, 0.05);
}
function update() {
//game.collide(leftEmitter, rightEmitter);
}
})();