User prompt
Make background the backgeoud for level 1, background1 for level 2, Background2 for level 3
User prompt
Add background1 and 2 to game
User prompt
make only level3 remove level 13
User prompt
Set 13
User prompt
Increase number of walls in level 3
User prompt
Make level 2 time 40 sec
User prompt
Make taller walls from left and bottom sides too
User prompt
Reduce numbers of walls in level 3
User prompt
Make the mazewall taller
User prompt
Make level 1 30 sec
User prompt
Increase speed little bit in level 2
User prompt
Make same for all nect levels
User prompt
Make each level have 1 minute time and remove th 5 min
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'width')' in or related to this line: 'background.scaleX = LK.screen.width / background.width;' Line Number: 102
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'width')' in or related to this line: 'background.scaleX = LK.screen.width / background.width;' Line Number: 102
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'width')' in or related to this line: 'background.scaleX = LK.screen.width / background.width;' Line Number: 101
User prompt
Add the background to the game
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'width')' in or related to this line: 'background.scaleX = LK.screen.width / background.width;' Line Number: 103
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'width')' in or related to this line: 'background.scaleX = LK.screen.width / background.width;' Line Number: 102
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'width')' in or related to this line: 'background.scaleX = LK.screen.width / background.width;' Line Number: 102
User prompt
Please fix the bug: 'Cannot read properties of undefined (reading 'width')' in or related to this line: 'background.scaleX = LK.screen.width / background.width;' Line Number: 101
User prompt
Always fit the background to the screen
User prompt
Increase speed by each level
User prompt
Don't show 5 min in the screen
User prompt
Make time 1 min
/**** * Classes ****/ var BottomWall = Container.expand(function () { var self = Container.call(this); var wallGraphics = self.attachAsset('mazeWall', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.y -= 5; if (self.y < 0) { self.destroy(); } }; }); var HorizontalWall = Container.expand(function () { var self = Container.call(this); var wallGraphics = self.attachAsset('mazeWall', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.x += 5; if (self.x > 2048) { self.destroy(); } }; }); var LeftWall = Container.expand(function () { var self = Container.call(this); var wallGraphics = self.attachAsset('mazeWall', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.x += 5; if (self.x > 2048) { self.destroy(); } }; }); var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { for (var i = 0; i < mazeWalls.length; i++) { if (self.intersects(mazeWalls[i])) { var dx = self.x - mazeWalls[i].x; var dy = self.y - mazeWalls[i].y; var distance = Math.sqrt(dx * dx + dy * dy); if (distance < self.width / 2 + mazeWalls[i].width / 2 && self.y > mazeWalls[i].y && self.y < mazeWalls[i].y + mazeWalls[i].height) { LK.showGameOver(); } } } }; }); var RightWall = Container.expand(function () { var self = Container.call(this); var wallGraphics = self.attachAsset('mazeWall', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.x -= 5; if (self.x < 0) { self.destroy(); } }; }); var TopWall = Container.expand(function () { var self = Container.call(this); var wallGraphics = self.attachAsset('mazeWall', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.y += 5; if (self.y > 2732) { self.destroy(); } }; }); var VerticalWall = Container.expand(function () { var self = Container.call(this); var wallGraphics = self.attachAsset('mazeWall', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { self.y += 5; if (self.y > 2732) { self.destroy(); } }; }); /**** * Initialize Game ****/ // Removed maze regeneration and player reinitialization // Removed player movement and click event listener related to the maze // Function to generate a random maze var game = new LK.Game({ backgroundColor: 0x000000 }); /**** * Game Code ****/ var background2 = LK.getAsset('Background2', { anchorX: 0.5, anchorY: 0.5 }); background2.scaleX = 2048 / background2.width; background2.scaleY = 2732 / background2.height; background2.x = 2048 / 2; background2.y = 2732 / 2; game.addChild(background2); var background = LK.getAsset('Background', { anchorX: 0.5, anchorY: 0.5 }); background.scaleX = 2048 / background.width; background.scaleY = 2732 / background.height; background.x = 2048 / 2; background.y = 2732 / 2; game.addChild(background); var background1 = LK.getAsset('Background1', { anchorX: 0.5, anchorY: 0.5 }); background1.scaleX = 2048 / background1.width; background1.scaleY = 2732 / background1.height; background1.x = 2048 / 2; background1.y = 2732 / 2; game.addChild(background1); // Update game loop to move maze walls // Add event listener for player movement game.move = function (x, y, obj) { player.x = x; player.y = y; }; var mazeWalls = []; moveMazeWalls(); LK.setInterval(generateMazeWall, 1000); function generateMazeWall() { var wall; var rand = Math.random(); var speed = level == 2 ? 10 : 5; // Increase speed in level 2 if (level != 3 || Math.random() < 0.5) { if (rand < 0.2) { wall = new VerticalWall(); wall.scaleX = 0.25; wall.scaleY = Math.random() * 0.5 + 1.5; wall.x = Math.random() * (2048 - wall.width) + wall.width / 2; wall.y = -wall.height; wall.speed = speed; // Set speed } else if (rand < 0.4) { wall = new HorizontalWall(); wall.scaleX = Math.random() * 0.5 + 0.75; wall.scaleY = 0.25; wall.x = -wall.width; wall.y = Math.random() * (2732 - wall.height) + wall.height / 2; wall.speed = speed; // Set speed } else if (rand < 0.6) { wall = new RightWall(); wall.scaleX = 0.25; wall.scaleY = Math.random() * 0.5 + 1.5; wall.x = 2048 + wall.width; wall.y = Math.random() * (2732 - wall.height) + wall.height / 2; wall.speed = speed; // Set speed } else if (rand < 0.8) { wall = new BottomWall(); wall.scaleX = Math.random() * 0.5 + 0.75; wall.scaleY = 0.25; wall.x = Math.random() * (2048 - wall.width) + wall.width / 2; wall.y = 2732 + wall.height; wall.speed = speed; // Set speed } else if (rand < 0.9) { wall = new LeftWall(); wall.scaleX = 0.25; wall.scaleY = Math.random() * 0.5 + 1.5; wall.x = -wall.width; wall.y = Math.random() * (2732 - wall.height) + wall.height / 2; wall.speed = speed; // Set speed } else { wall = new TopWall(); wall.scaleX = Math.random() * 0.5 + 0.75; wall.scaleY = 0.25; wall.x = Math.random() * (2048 - wall.width) + wall.width / 2; wall.y = -wall.height; wall.speed = speed; // Set speed } mazeWalls.push(wall); game.addChild(wall); } } function moveMazeWalls() { for (var i = mazeWalls.length - 1; i >= 0; i--) { mazeWalls[i].update(); if (mazeWalls[i].y > 2732) { mazeWalls.splice(i, 1); } } } LK.setInterval(generateMazeWall, 1000); // Update timer every second LK.setInterval(function () { timer--; var minutes = Math.floor(timer / 60); var seconds = timer % 60; timerText.setText('Time: ' + minutes + ':' + (seconds < 10 ? '0' : '') + seconds); // If time is up, go to next level if (timer <= 0) { timer = 60; // Reset timer level++; levelText.setText('Level: ' + level); } }, 1000); var player = new Player(); game.addChild(player); player.x = 2048 / 2; player.y = 2732 / 2; // Initialize timer and level variables var timer = 40; // 40 seconds var level = 3; // Add level text to the top right corner var levelText = new Text2('Level: 1', { size: 100, fill: 0x808080 // Grey color }); levelText.anchor.set(1, 0); // Sets anchor to the top right corner of the text. LK.gui.topRight.addChild(levelText); // Add timer text to the top left corner var timerText = new Text2('Time: 1:00', { size: 100, fill: 0x808080 // Grey color }); timerText.anchor.set(0, 0); // Sets anchor to the top left corner of the text. LK.gui.topLeft.addChild(timerText);
===================================================================
--- original.js
+++ change.js
@@ -111,18 +111,8 @@
/****
* Game Code
****/
-// Add background image to the game
-var background1 = LK.getAsset('Background', {
- anchorX: 0.5,
- anchorY: 0.5
-});
-background1.scaleX = 2048 / background1.width;
-background1.scaleY = 2732 / background1.height;
-background1.x = 2048 / 2;
-background1.y = 2732 / 2;
-game.addChild(background1);
var background2 = LK.getAsset('Background2', {
anchorX: 0.5,
anchorY: 0.5
});
@@ -130,8 +120,26 @@
background2.scaleY = 2732 / background2.height;
background2.x = 2048 / 2;
background2.y = 2732 / 2;
game.addChild(background2);
+var background = LK.getAsset('Background', {
+ anchorX: 0.5,
+ anchorY: 0.5
+});
+background.scaleX = 2048 / background.width;
+background.scaleY = 2732 / background.height;
+background.x = 2048 / 2;
+background.y = 2732 / 2;
+game.addChild(background);
+var background1 = LK.getAsset('Background1', {
+ anchorX: 0.5,
+ anchorY: 0.5
+});
+background1.scaleX = 2048 / background1.width;
+background1.scaleY = 2732 / background1.height;
+background1.x = 2048 / 2;
+background1.y = 2732 / 2;
+game.addChild(background1);
// Update game loop to move maze walls
// Add event listener for player movement
game.move = function (x, y, obj) {
player.x = x;