/**** * Classes ****/ // Define the Player class var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.createAsset('playerCar', 'Player car', 0.5, 0.5); self.speed = 5; self.moveLeft = function () { self.x = Math.max(self.width / 2, self.x - self.speed); }; self.moveRight = function () { self.x = Math.min(2048 - self.width / 2, self.x + self.speed); }; }); // Define the Enemy class var Enemy = Container.expand(function () { var self = Container.call(this); var enemyGraphics = self.createAsset('enemyCar', 'Enemy car', 0.5, 0.5); self.speed = 3; self.update = function () { self.y += self.speed; }; }); // Define the Bullet class var Bullet = Container.expand(function () { var self = Container.call(this); var bulletGraphics = self.createAsset('bullet', 'Bullet', 0.5, 1); self.speed = -10; self.move = function () { self.y += self.speed; }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 // Init game with black background }); /**** * Game Code ****/ // Initialize important asset arrays var enemies = []; var bullets = []; var player; // Initialize the player player = game.addChild(new Player()); player.x = 2048 / 2; player.y = 2732 - player.height; // Handle touch events for player movement function handleTouch(obj) { var touchPos = obj.event.getLocalPosition(game); if (touchPos.x < 2048 / 2) { player.moveLeft(); } else { player.moveRight(); } } game.on('down', handleTouch); // Game tick event LK.on('tick', function () { // Update enemies for (var i = enemies.length - 1; i >= 0; i--) { enemies[i].update(); if (enemies[i].y > 2732) { enemies[i].destroy(); enemies.splice(i, 1); } } // Update bullets for (var j = bullets.length - 1; j >= 0; j--) { bullets[j].move(); if (bullets[j].y < 0) { bullets[j].destroy(); bullets.splice(j, 1); } } // Check for collisions between bullets and enemies for (var k = bullets.length - 1; k >= 0; k--) { for (var l = enemies.length - 1; l >= 0; l--) { if (bullets[k].intersects(enemies[l])) { bullets[k].destroy(); bullets.splice(k, 1); enemies[l].destroy(); enemies.splice(l, 1); break; } } } // Spawn enemies if (LK.ticks % 120 == 0) { var newEnemy = new Enemy(); newEnemy.x = Math.random() * (2048 - newEnemy.width) + newEnemy.width / 2; newEnemy.y = -newEnemy.height; enemies.push(newEnemy); game.addChild(newEnemy); } // Fire bullets if (LK.ticks % 30 == 0) { var newBullet = new Bullet(); newBullet.x = player.x; newBullet.y = player.y - player.height / 2; bullets.push(newBullet); game.addChild(newBullet); } });
===================================================================
--- original.js
+++ change.js
@@ -1,46 +1,46 @@
-/****
+/****
* Classes
****/
// Define the Player class
var Player = Container.expand(function () {
- var self = Container.call(this);
- var playerGraphics = self.createAsset('playerCar', 'Player car', 0.5, 0.5);
- self.speed = 5;
- self.moveLeft = function () {
- self.x = Math.max(self.width / 2, self.x - self.speed);
- };
- self.moveRight = function () {
- self.x = Math.min(2048 - self.width / 2, self.x + self.speed);
- };
+ var self = Container.call(this);
+ var playerGraphics = self.createAsset('playerCar', 'Player car', 0.5, 0.5);
+ self.speed = 5;
+ self.moveLeft = function () {
+ self.x = Math.max(self.width / 2, self.x - self.speed);
+ };
+ self.moveRight = function () {
+ self.x = Math.min(2048 - self.width / 2, self.x + self.speed);
+ };
});
// Define the Enemy class
var Enemy = Container.expand(function () {
- var self = Container.call(this);
- var enemyGraphics = self.createAsset('enemyCar', 'Enemy car', 0.5, 0.5);
- self.speed = 3;
- self.update = function () {
- self.y += self.speed;
- };
+ var self = Container.call(this);
+ var enemyGraphics = self.createAsset('enemyCar', 'Enemy car', 0.5, 0.5);
+ self.speed = 3;
+ self.update = function () {
+ self.y += self.speed;
+ };
});
// Define the Bullet class
var Bullet = Container.expand(function () {
- var self = Container.call(this);
- var bulletGraphics = self.createAsset('bullet', 'Bullet', 0.5, 1);
- self.speed = -10;
- self.move = function () {
- self.y += self.speed;
- };
+ var self = Container.call(this);
+ var bulletGraphics = self.createAsset('bullet', 'Bullet', 0.5, 1);
+ self.speed = -10;
+ self.move = function () {
+ self.y += self.speed;
+ };
});
-/****
+/****
* Initialize Game
****/
var game = new LK.Game({
- backgroundColor: 0x000000 // Init game with black background
+ backgroundColor: 0x000000 // Init game with black background
});
-/****
+/****
* Game Code
****/
// Initialize important asset arrays
var enemies = [];
@@ -51,61 +51,59 @@
player.x = 2048 / 2;
player.y = 2732 - player.height;
// Handle touch events for player movement
function handleTouch(obj) {
- var touchPos = obj.event.getLocalPosition(game);
- if (touchPos.x < 2048 / 2) {
- player.moveLeft();
- } else {
- player.moveRight();
- }
+ var touchPos = obj.event.getLocalPosition(game);
+ if (touchPos.x < 2048 / 2) {
+ player.moveLeft();
+ } else {
+ player.moveRight();
+ }
}
game.on('down', handleTouch);
// Game tick event
LK.on('tick', function () {
- // Update player
- player.update();
- // Update enemies
- for (var i = enemies.length - 1; i >= 0; i--) {
- enemies[i].update();
- if (enemies[i].y > 2732) {
- enemies[i].destroy();
- enemies.splice(i, 1);
- }
- }
- // Update bullets
- for (var j = bullets.length - 1; j >= 0; j--) {
- bullets[j].move();
- if (bullets[j].y < 0) {
- bullets[j].destroy();
- bullets.splice(j, 1);
- }
- }
- // Check for collisions between bullets and enemies
- for (var k = bullets.length - 1; k >= 0; k--) {
- for (var l = enemies.length - 1; l >= 0; l--) {
- if (bullets[k].intersects(enemies[l])) {
- bullets[k].destroy();
- bullets.splice(k, 1);
- enemies[l].destroy();
- enemies.splice(l, 1);
- break;
- }
- }
- }
- // Spawn enemies
- if (LK.ticks % 120 == 0) {
- var newEnemy = new Enemy();
- newEnemy.x = Math.random() * (2048 - newEnemy.width) + newEnemy.width / 2;
- newEnemy.y = -newEnemy.height;
- enemies.push(newEnemy);
- game.addChild(newEnemy);
- }
- // Fire bullets
- if (LK.ticks % 30 == 0) {
- var newBullet = new Bullet();
- newBullet.x = player.x;
- newBullet.y = player.y - player.height / 2;
- bullets.push(newBullet);
- game.addChild(newBullet);
- }
+ // Update enemies
+ for (var i = enemies.length - 1; i >= 0; i--) {
+ enemies[i].update();
+ if (enemies[i].y > 2732) {
+ enemies[i].destroy();
+ enemies.splice(i, 1);
+ }
+ }
+ // Update bullets
+ for (var j = bullets.length - 1; j >= 0; j--) {
+ bullets[j].move();
+ if (bullets[j].y < 0) {
+ bullets[j].destroy();
+ bullets.splice(j, 1);
+ }
+ }
+ // Check for collisions between bullets and enemies
+ for (var k = bullets.length - 1; k >= 0; k--) {
+ for (var l = enemies.length - 1; l >= 0; l--) {
+ if (bullets[k].intersects(enemies[l])) {
+ bullets[k].destroy();
+ bullets.splice(k, 1);
+ enemies[l].destroy();
+ enemies.splice(l, 1);
+ break;
+ }
+ }
+ }
+ // Spawn enemies
+ if (LK.ticks % 120 == 0) {
+ var newEnemy = new Enemy();
+ newEnemy.x = Math.random() * (2048 - newEnemy.width) + newEnemy.width / 2;
+ newEnemy.y = -newEnemy.height;
+ enemies.push(newEnemy);
+ game.addChild(newEnemy);
+ }
+ // Fire bullets
+ if (LK.ticks % 30 == 0) {
+ var newBullet = new Bullet();
+ newBullet.x = player.x;
+ newBullet.y = player.y - player.height / 2;
+ bullets.push(newBullet);
+ game.addChild(newBullet);
+ }
});
\ No newline at end of file