===================================================================
--- original.js
+++ change.js
@@ -1,125 +1,157 @@
-/****
+/****
* Classes
****/
// Dice class
var Dice = Container.expand(function () {
- var self = Container.call(this);
- var diceGraphics = self.attachAsset('dice', {
- anchorX: 0.5,
- anchorY: 0.5
- });
- self.roll = function () {
- // Roll animation logic
- };
- self.on('down', function (obj) {
- self.roll();
- });
+ var self = Container.call(this);
+ var diceGraphics = self.attachAsset('dice', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.roll = function () {
+ // Roll animation logic
+ };
+ self.on('down', function (obj) {
+ self.roll();
+ });
});
// Coin class
var Coin = Container.expand(function () {
- var self = Container.call(this);
- var coinGraphics = self.attachAsset('coin', {
- anchorX: 0.5,
- anchorY: 0.5
- });
- self.collect = function () {
- // Coin collection logic
- };
+ var self = Container.call(this);
+ var coinGraphics = self.attachAsset('coin', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.collect = function () {
+ // Coin collection logic
+ };
});
// PowerUp class
var PowerUp = Container.expand(function () {
- var self = Container.call(this);
- var powerUpGraphics = self.attachAsset('powerUp', {
- anchorX: 0.5,
- anchorY: 0.5
- });
- self.activate = function () {
- // Power-up activation logic
- };
+ var self = Container.call(this);
+ var powerUpGraphics = self.attachAsset('powerUp', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.activate = function () {
+ // Power-up activation logic
+ };
});
+// Vegetable class
+var Vegetable = Container.expand(function () {
+ var self = Container.call(this);
+ var vegetableGraphics = self.attachAsset('vegetable', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.destroyOnCollision = function () {
+ // Logic for destroying the dice when colliding with a vegetable
+ LK.effects.flashScreen(0xff0000, 1000);
+ LK.showGameOver();
+ };
+});
-/****
+/****
* Initialize Game
****/
var game = new LK.Game({
- backgroundColor: 0x000000 // Init game with black background
+ backgroundColor: 0x000000 // Init game with black background
});
-/****
+/****
* Game Code
****/
// Initialize game elements
+var vegetables = [];
// Define assets for dice, coins, and power-ups
+// Initialize game elements
var dice = game.addChild(new Dice());
dice.x = game.width / 2;
dice.y = game.height / 2;
var coins = [];
var powerUps = [];
// Game score
var score = 0;
var scoreTxt = new Text2(score.toString(), {
- size: 150,
- fill: "#ffffff"
+ size: 150,
+ fill: "#ffffff"
});
scoreTxt.anchor.set(0.5, 0);
LK.gui.top.addChild(scoreTxt);
// Game logic
LK.on('tick', function () {
- // Update game elements
- updateCoins();
- updatePowerUps();
+ // Update game elements
+ updateCoins();
+ updatePowerUps();
});
function updateCoins() {
- // Logic to move and collect coins
- for (var i = coins.length - 1; i >= 0; i--) {
- var coin = coins[i];
- coin.y += 2; // Move coin downwards
- if (coin.y > game.height) {
- coin.destroy();
- coins.splice(i, 1);
- } else if (dice.intersects(coin)) {
- coin.collect();
- score += 10; // Increment score
- scoreTxt.setText(score.toString());
- coin.destroy();
- coins.splice(i, 1);
- }
- }
+ // Logic to move and collect coins and vegetables
+ for (var i = coins.length - 1; i >= 0; i--) {
+ var coin = coins[i];
+ coin.y += 2; // Move coin downwards
+ if (coin.y > game.height) {
+ coin.destroy();
+ coins.splice(i, 1);
+ } else if (dice.intersects(coin)) {
+ coin.collect();
+ score += 10; // Increment score
+ scoreTxt.setText(score.toString());
+ coin.destroy();
+ coins.splice(i, 1);
+ }
+ }
+ for (var j = vegetables.length - 1; j >= 0; j--) {
+ var vegetable = vegetables[j];
+ vegetable.y += 2; // Move vegetable downwards
+ if (vegetable.y > game.height) {
+ vegetable.destroy();
+ vegetables.splice(j, 1);
+ } else if (dice.intersects(vegetable)) {
+ vegetable.destroyOnCollision();
+ }
+ }
}
function updatePowerUps() {
- // Logic to move and activate power-ups
- for (var i = powerUps.length - 1; i >= 0; i--) {
- var powerUp = powerUps[i];
- powerUp.y += 1; // Move power-up downwards
- if (powerUp.y > game.height) {
- powerUp.destroy();
- powerUps.splice(i, 1);
- } else if (dice.intersects(powerUp)) {
- powerUp.activate();
- powerUp.destroy();
- powerUps.splice(i, 1);
- }
- }
+ // Logic to move and activate power-ups
+ for (var i = powerUps.length - 1; i >= 0; i--) {
+ var powerUp = powerUps[i];
+ powerUp.y += 1; // Move power-up downwards
+ if (powerUp.y > game.height) {
+ powerUp.destroy();
+ powerUps.splice(i, 1);
+ } else if (dice.intersects(powerUp)) {
+ powerUp.activate();
+ powerUp.destroy();
+ powerUps.splice(i, 1);
+ }
+ }
}
// Touch event to roll the dice
game.on('down', function (obj) {
- var touchPos = obj.event.getLocalPosition(game);
- dice.x = touchPos.x;
- dice.y = touchPos.y;
- dice.roll();
+ var touchPos = obj.event.getLocalPosition(game);
+ dice.x = touchPos.x;
+ dice.y = touchPos.y;
+ dice.roll();
});
// Spawn coins and power-ups
LK.setInterval(function () {
- var coin = new Coin();
- coin.x = Math.random() * game.width;
- coin.y = -50;
- coins.push(coin);
- game.addChild(coin);
+ var coin = new Coin();
+ coin.x = Math.random() * game.width;
+ coin.y = -50;
+ coins.push(coin);
+ game.addChild(coin);
}, 1000);
LK.setInterval(function () {
- var powerUp = new PowerUp();
- powerUp.x = Math.random() * game.width;
- powerUp.y = -50;
- powerUps.push(powerUp);
- game.addChild(powerUp);
+ LK.setInterval(function () {
+ var vegetable = new Vegetable();
+ vegetable.x = Math.random() * game.width;
+ vegetable.y = -50;
+ vegetables.push(vegetable);
+ game.addChild(vegetable);
+ }, 3000);
+ var powerUp = new PowerUp();
+ powerUp.x = Math.random() * game.width;
+ powerUp.y = -50;
+ powerUps.push(powerUp);
+ game.addChild(powerUp);
}, 5000);
\ No newline at end of file