var Hero = Container.expand(function () {
var self = Container.call(this);
var heroGraphics = self.createAsset('hero', 'Hero character', .5, .5);
self.move = function () {};
self.shoot = function () {};
});
var EnemyWave1 = Container.expand(function () {
var self = Container.call(this);
var enemyGraphics = self.createAsset('enemyWave1', 'Enemy Wave 1 character', .5, .5);
self.move = function () {};
});
var EnemyWave2 = Container.expand(function () {
var self = Container.call(this);
var enemyGraphics = self.createAsset('enemyWave2', 'Enemy Wave 2 character', .5, .5);
self.move = function () {};
});
var EnemyWave3 = Container.expand(function () {
var self = Container.call(this);
var enemyGraphics = self.createAsset('enemyWave3', 'Enemy Wave 3 character', .5, .5);
self.move = function () {};
});
var HeroBullet = Container.expand(function () {
var self = Container.call(this);
var bulletGraphics = self.createAsset('heroBullet', 'Hero Bullet', .5, .5);
self.move = function () {};
});
var EnemyBullet = Container.expand(function () {
var self = Container.call(this);
var bulletGraphics = self.createAsset('enemyBullet', 'Enemy Bullet', .5, .5);
self.move = function () {};
});
var Game = Container.expand(function () {
var self = Container.call(this);
var hero = self.addChild(new Hero());
var enemies = [];
var waveIndex = 0;
var waveTimer = 0;
var waveInterval = 300;
var enemiesPerWave = 5;
var heroBullets = [];
var enemyBullets = [];
hero.x = 2048 / 2;
hero.y = 2732 / 2;
LK.on('tick', function () {
hero.move();
waveTimer++;
if (waveTimer >= waveInterval) {
for (var i = 0; i < enemiesPerWave; i++) {
var newEnemy;
switch (waveIndex % 3) {
case 0:
newEnemy = new EnemyWave1();
break;
case 1:
newEnemy = new EnemyWave2();
break;
case 2:
newEnemy = new EnemyWave3();
break;
}
newEnemy.x = Math.random() * 2048;
newEnemy.y = -100;
enemies.push(newEnemy);
self.addChild(newEnemy);
}
waveIndex++;
waveTimer = 0;
}
for (var i = 0; i < enemies.length; i++) {
enemies[i].move();
}
for (var i = 0; i < heroBullets.length; i++) {
heroBullets[i].move();
}
for (var i = 0; i < enemyBullets.length; i++) {
enemyBullets[i].move();
}
});
stage.on('down', function (obj) {
var pos = obj.event.getLocalPosition(self);
hero.x = pos.x;
hero.y = pos.y;
hero.shoot();
});
});
===================================================================
--- original.js
+++ change.js
@@ -3,13 +3,23 @@
var heroGraphics = self.createAsset('hero', 'Hero character', .5, .5);
self.move = function () {};
self.shoot = function () {};
});
-var Enemy = Container.expand(function () {
+var EnemyWave1 = Container.expand(function () {
var self = Container.call(this);
- var enemyGraphics = self.createAsset('enemy', 'Enemy character', .5, .5);
+ var enemyGraphics = self.createAsset('enemyWave1', 'Enemy Wave 1 character', .5, .5);
self.move = function () {};
});
+var EnemyWave2 = Container.expand(function () {
+ var self = Container.call(this);
+ var enemyGraphics = self.createAsset('enemyWave2', 'Enemy Wave 2 character', .5, .5);
+ self.move = function () {};
+});
+var EnemyWave3 = Container.expand(function () {
+ var self = Container.call(this);
+ var enemyGraphics = self.createAsset('enemyWave3', 'Enemy Wave 3 character', .5, .5);
+ self.move = function () {};
+});
var HeroBullet = Container.expand(function () {
var self = Container.call(this);
var bulletGraphics = self.createAsset('heroBullet', 'Hero Bullet', .5, .5);
self.move = function () {};
@@ -35,9 +45,20 @@
hero.move();
waveTimer++;
if (waveTimer >= waveInterval) {
for (var i = 0; i < enemiesPerWave; i++) {
- var newEnemy = new Enemy();
+ var newEnemy;
+ switch (waveIndex % 3) {
+ case 0:
+ newEnemy = new EnemyWave1();
+ break;
+ case 1:
+ newEnemy = new EnemyWave2();
+ break;
+ case 2:
+ newEnemy = new EnemyWave3();
+ break;
+ }
newEnemy.x = Math.random() * 2048;
newEnemy.y = -100;
enemies.push(newEnemy);
self.addChild(newEnemy);