/**** * Classes ****/ // Bullet class var Bullet = Container.expand(function () { var self = Container.call(this); self.speed = 10; var bulletGraphics = self.attachAsset('bullet', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.y -= self.speed; if (self.y < 0) { self.destroy(); } }; }); //<Assets used in the game will automatically appear here> // Player class var Player = Container.expand(function () { var self = Container.call(this); self.health = 100; self.speed = 5; self.isAttacking = false; var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { // Update player position and state }; self.attack = function () { self.isAttacking = true; // Attack logic }; self.takeDamage = function (amount) { self.health -= amount; if (self.health <= 0) { self.health = 0; self.die(); } }; self.die = function () { // Player death logic }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ // Initialize players var player1 = game.addChild(new Player()); player1.x = 300; player1.y = 1366; var player2 = game.addChild(new Player()); player2.x = 1748; player2.y = 1366; // Initialize bullets array var bullets = []; // Handle player movement game.move = function (x, y, obj) { if (obj.target === player1) { player1.x = x; player1.y = y; } else if (obj.target === player2) { player2.x = x; player2.y = y; } }; // Handle player attack game.down = function (x, y, obj) { if (obj.target === player1) { player1.attack(); } else if (obj.target === player2) { player2.attack(); } }; // Update game state game.update = function () { // Update players player1.update(); player2.update(); // Update bullets for (var i = bullets.length - 1; i >= 0; i--) { bullets[i].update(); if (bullets[i].intersects(player1)) { player1.takeDamage(10); bullets[i].destroy(); bullets.splice(i, 1); } else if (bullets[i].intersects(player2)) { player2.takeDamage(10); bullets[i].destroy(); bullets.splice(i, 1); } } // Fire bullets if (LK.ticks % 30 == 0) { var newBullet1 = new Bullet(); newBullet1.x = player1.x; newBullet1.y = player1.y; bullets.push(newBullet1); game.addChild(newBullet1); var newBullet2 = new Bullet(); newBullet2.x = player2.x; newBullet2.y = player2.y; bullets.push(newBullet2); game.addChild(newBullet2); } };
/****
* Classes
****/
// Bullet class
var Bullet = Container.expand(function () {
var self = Container.call(this);
self.speed = 10;
var bulletGraphics = self.attachAsset('bullet', {
anchorX: 0.5,
anchorY: 0.5
});
self.update = function () {
self.y -= self.speed;
if (self.y < 0) {
self.destroy();
}
};
});
//<Assets used in the game will automatically appear here>
// Player class
var Player = Container.expand(function () {
var self = Container.call(this);
self.health = 100;
self.speed = 5;
self.isAttacking = false;
var playerGraphics = self.attachAsset('player', {
anchorX: 0.5,
anchorY: 0.5
});
self.update = function () {
// Update player position and state
};
self.attack = function () {
self.isAttacking = true;
// Attack logic
};
self.takeDamage = function (amount) {
self.health -= amount;
if (self.health <= 0) {
self.health = 0;
self.die();
}
};
self.die = function () {
// Player death logic
};
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x000000 //Init game with black background
});
/****
* Game Code
****/
// Initialize players
var player1 = game.addChild(new Player());
player1.x = 300;
player1.y = 1366;
var player2 = game.addChild(new Player());
player2.x = 1748;
player2.y = 1366;
// Initialize bullets array
var bullets = [];
// Handle player movement
game.move = function (x, y, obj) {
if (obj.target === player1) {
player1.x = x;
player1.y = y;
} else if (obj.target === player2) {
player2.x = x;
player2.y = y;
}
};
// Handle player attack
game.down = function (x, y, obj) {
if (obj.target === player1) {
player1.attack();
} else if (obj.target === player2) {
player2.attack();
}
};
// Update game state
game.update = function () {
// Update players
player1.update();
player2.update();
// Update bullets
for (var i = bullets.length - 1; i >= 0; i--) {
bullets[i].update();
if (bullets[i].intersects(player1)) {
player1.takeDamage(10);
bullets[i].destroy();
bullets.splice(i, 1);
} else if (bullets[i].intersects(player2)) {
player2.takeDamage(10);
bullets[i].destroy();
bullets.splice(i, 1);
}
}
// Fire bullets
if (LK.ticks % 30 == 0) {
var newBullet1 = new Bullet();
newBullet1.x = player1.x;
newBullet1.y = player1.y;
bullets.push(newBullet1);
game.addChild(newBullet1);
var newBullet2 = new Bullet();
newBullet2.x = player2.x;
newBullet2.y = player2.y;
bullets.push(newBullet2);
game.addChild(newBullet2);
}
};