User prompt
Start respawning wall2 from left and top for level 2
User prompt
Remove all respawning wall2 in level 2
User prompt
Remove the spawning from top to bottom in left side make spawning from lef to right in side the scren only
User prompt
Make wall2 spawning only from top and from left in level 2
User prompt
remove respawning from top to bottom make respawn from left side to the right side in level 2
User prompt
Add wall2 from left in level 2
User prompt
Remove the respawning on left side in level 2
User prompt
Add wall2 spawning from left to right in level2
User prompt
Make 2 respawns from to and from left for level 2
User prompt
add respawning of wall2 from left to right for level 2
User prompt
add statu time to text time from 0 to 20 sec for all levels
User prompt
Add time text in left upper corner
User prompt
change level each 20 sec
User prompt
Remove time from all levels
User prompt
Fix the game
User prompt
Don't speed decreasing time by 2 sec make it move by 1 sec
User prompt
Fix time in game in all levels move slowly
Code edit (1 edits merged)
Please save this source code
User prompt
If walls start spawning in each level start time
User prompt
Move to level 4 after level 3
User prompt
Make time moving similar as in level 1 from 15 sec to 0 sec
User prompt
Don't make time moving fast in level 2
User prompt
Make time text of level 1 in all levels
User prompt
If wall3 start respawning start time
User prompt
Add statu time to text time for all levels 15 seconds
/**** * Classes ****/ // Create a Player class var Player = Container.expand(function () { var self = Container.call(this); // Attach a shape asset to represent the player var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); // Set player speed self.speed = 50; // This is automatically called every game tick, if the player is attached! self.update = function () { // No continuous movement }; }); // Create a RandomShape class for shapes spawning from top and left var RandomShape = Container.expand(function () { var self = Container.call(this); // Attach a random shape asset to represent the shape var shapeGraphics = self.attachAsset('shape' + Math.floor(Math.random() * 10), { anchorX: 0.5, anchorY: 0.5, width: Math.random() * 200, // Random width between 0 and 200 height: Math.random() * 200 // Random height between 0 and 200 }); // Set shape speed self.speed = 2; // This is automatically called every game tick, if the shape is attached! self.update = function () { // Randomly decide the direction of the shape if (Math.random() < 0.5) { self.y += self.speed; } else { self.x += self.speed; } }; }); // Create a Wall2 class for wall2 spawning from top and moving vertically to the bottom var Wall2 = Container.expand(function () { var self = Container.call(this); // Attach a wall2 asset to represent the wall var wallGraphics = self.attachAsset('wall2', { anchorX: 0.5, anchorY: 0.5, height: 200 // Make the wall taller }); // Set wall speed self.speed = 4; // This is automatically called every game tick, if the wall is attached! self.update = function () { self.y += self.speed; }; }); // Create a Wall3 class for walls spawning from bottom to top and right to left var Wall3 = Container.expand(function () { var self = Container.call(this); // Attach a wall3 asset to represent the wall var wallGraphics = self.attachAsset('wall3', { anchorX: 0.5, anchorY: 0.5, width: Math.random() * 200 + 100, // Random width height: Math.random() * 200 + 100 // Random height }); // Set wall speed self.speed = 4; // This is automatically called every game tick, if the wall is attached! self.update = function () { self.y -= self.speed; // Move upwards }; }); // Create a Wall3Right class for walls spawning from right to left var Wall3Right = Container.expand(function () { var self = Container.call(this); // Attach a wall3 asset to represent the wall var wallGraphics = self.attachAsset('wall3', { anchorX: 0.5, anchorY: 0.5, width: Math.random() * 200 + 100, // Random width height: Math.random() * 200 + 100 // Random height }); // Set wall speed self.speed = 4; // This is automatically called every game tick, if the wall is attached! self.update = function () { self.x -= self.speed; // Move leftwards }; }); // Create a Wall4 class for walls spawning from bottom to top and left to right var Wall4 = Container.expand(function () { var self = Container.call(this); // Attach a wall4 asset to represent the wall var wallGraphics = self.attachAsset('wall4', { anchorX: 0.5, anchorY: 0.5, width: Math.random() * 200 + 100, // Random width height: Math.random() * 200 + 100 // Random height }); // Set wall speed self.speed = 4; // This is automatically called every game tick, if the wall is attached! self.update = function () { if (Math.random() < 0.5) { self.y -= self.speed; // Move upwards } else { self.x += self.speed; // Move rightwards } }; }); // Create a WallHorizontal class for taller horizontal walls spawning from right var WallHorizontal = Container.expand(function () { var self = Container.call(this); // Attach a wall asset to represent the wall var wallGraphics = self.attachAsset('wall1', { anchorX: 0.5, anchorY: 0.5, width: Math.random() * 200 + 100 // Make the wall wider and random }); // Set wall speed self.speed = 4; // This is automatically called every game tick, if the wall is attached! self.update = function () { self.x -= self.speed; }; }); // Create a WallVertical class for vertical walls spawning from top var WallVertical = Container.expand(function () { var self = Container.call(this); // Attach a wall asset to represent the wall var wallGraphics = self.attachAsset('wall1', { anchorX: 0.5, anchorY: 0.5, height: Math.random() * 200 + 100 // Make the wall taller and random }); // Set wall speed self.speed = 4; // This is automatically called every game tick, if the wall is attached! self.update = function () { self.y += self.speed; }; }); // Create a WallVertical2 class for taller vertical walls spawning from top to bottom var WallVertical2 = Container.expand(function () { var self = Container.call(this); // Attach a wall asset to represent the wall var wallGraphics = self.attachAsset('wall1', { anchorX: 0.5, anchorY: 0.5, height: Math.random() * 200 + 100 // Make the wall taller and random }); // Set wall speed self.speed = 4; // This is automatically called every game tick, if the wall is attached! self.update = function () { self.y += self.speed; }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 }); /**** * Game Code ****/ var background = null; function setBackgroundForLevel(level) { if (background) { background.destroy(); // Remove the current background } if (level === 1) { background = game.addChildAt(LK.getAsset('Background1', { anchorX: 0.0, anchorY: 0.0, x: (game.width - LK.getAsset('Background1', {}).width * game.width / LK.getAsset('Background1', {}).width) / 2, y: (game.height - LK.getAsset('Background1', {}).height * game.height / LK.getAsset('Background1', {}).height) / 2 }), 0); background.scale.set(game.width / background.width, game.height / background.height); } else if (level === 2) { background = game.addChildAt(LK.getAsset('Background2', { anchorX: 0.0, anchorY: 0.0, x: (game.width - LK.getAsset('Background2', {}).width * game.width / LK.getAsset('Background2', {}).width) / 2, y: (game.height - LK.getAsset('Background2', {}).height * game.height / LK.getAsset('Background2', {}).height) / 2 }), 0); background.scale.set(game.width / background.width, game.height / background.height); } else if (level === 3) { levelText.setText('Level 3'); // Update level text for level 3 background = game.addChildAt(LK.getAsset('Background3', { anchorX: 0.0, anchorY: 0.0, x: (game.width - LK.getAsset('Background3', {}).width * game.width / LK.getAsset('Background3', {}).width) / 2, y: (game.height - LK.getAsset('Background3', {}).height * game.height / LK.getAsset('Background3', {}).height) / 2 }), 0); background.scale.set(game.width / background.width, game.height / background.height); } else if (level === 4) { levelText.setText('Level 4'); // Update level text for level 4 background = game.addChildAt(LK.getAsset('Background4', { anchorX: 0.0, anchorY: 0.0, x: (game.width - LK.getAsset('Background4', {}).width * game.width / LK.getAsset('Background4', {}).width) / 2, y: (game.height - LK.getAsset('Background4', {}).height * game.height / LK.getAsset('Background4', {}).height) / 2 }), 0); background.scale.set(game.width / background.width, game.height / background.height); } else if (level === 5) { levelText.setText('Level 5'); // Update level text for level 5 background = game.addChildAt(LK.getAsset('Background5', { anchorX: 0.0, anchorY: 0.0, x: (game.width - LK.getAsset('Background5', {}).width * game.width / LK.getAsset('Background5', {}).width) / 2, y: (game.height - LK.getAsset('Background5', {}).height * game.height / LK.getAsset('Background5', {}).height) / 2 }), 0); background.scale.set(game.width / background.width, game.height / background.height); } else if (level === 6) { levelText.setText('Level 6'); // Update level text for level 6 background = game.addChildAt(LK.getAsset('Background6', { anchorX: 0.0, anchorY: 0.0, x: (game.width - LK.getAsset('Background6', {}).width * game.width / LK.getAsset('Background6', {}).width) / 2, y: (game.height - LK.getAsset('Background6', {}).height * game.height / LK.getAsset('Background6', {}).height) / 2 }), 0); background.scale.set(game.width / background.width, game.height / background.height); } if (background) { background.scale.set(game.width / background.width, game.height / background.height); } } setBackgroundForLevel(level); var level = 1; var levelChangeInterval = 20 * 60; // 20 seconds at 60 FPS var levelChangeTimer = 0; // Initialize timer for each level // Initialize background var background; if (level === 1) { background = game.addChildAt(LK.getAsset('Background1', { anchorX: 0.0, anchorY: 0.0, width: game.width, height: game.height, x: 0, y: 0 }), 0); } else if (level === 2) { background = game.addChildAt(LK.getAsset('Background2', { anchorX: 0.0, anchorY: 0.0, width: game.width, height: game.height, x: 0, y: 0 }), 0); } else if (level === 3) { background = game.addChildAt(LK.getAsset('Background3', { anchorX: 0.0, anchorY: 0.0, x: (game.width - LK.getAsset('Background3', {}).width * game.width / LK.getAsset('Background3', {}).width) / 2, y: (game.height - LK.getAsset('Background3', {}).height * game.height / LK.getAsset('Background3', {}).height) / 2 }), 0); background.scale.set(game.width / background.width, game.height / background.height); } // Fit the background to the screen if it is defined if (background) { background.scale.set(game.width / background.width, game.height / background.height); background.width = game.width; background.height = game.height; } // Add level text on 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 right of the top edge of the text. LK.gui.topRight.addChild(levelText); // Initialize 10 background assets for each level for (var i = 1; i <= 10; i++) {} // Add time text on the top left corner var timeText = new Text2('Time: 0', { size: 100, fill: 0x808080 // Grey color }); timeText.anchor.set(0, 0); // Sets anchor to the left of the top edge of the text. LK.gui.topLeft.addChild(timeText); // Initialize a player instance and attach it to the game var player = game.addChild(new Player()); // Position player at the center of the screen player.x = game.width / 2; player.y = game.height / 2; // Show player on the screen for level 2 if (level === 2) { player.visible = true; player.x = game.width / 2; player.y = 0; } // Initialize dragNode var dragNode = null; // Removed maze regeneration and player reinitialization // Removed player movement and click event listener related to the maze // Function to generate a random maze // Add event listener for player movement // Removed game.down event listener as it's not needed // Update game loop to move player towards target position var targetPosition = null; game.update = function () { if (targetPosition) { var dx = targetPosition.x - player.x; var dy = targetPosition.y - player.y; var angle = Math.atan2(dy, dx); player.x += Math.cos(angle) * player.speed; player.y += Math.sin(angle) * player.speed; } // Create random vertical and horizontal walls for wall1 in level 1 only if (level === 1 && LK.ticks % 60 == 0) { // Removed redundant timer initialization var newWall; if (Math.random() < 0.5) { newWall = new WallVertical(); newWall.x = Math.random() * (game.width - newWall.width) + newWall.width / 2; newWall.y = 0; } else { newWall = new WallHorizontal(); newWall.x = game.width; newWall.y = Math.random() * (game.height - newWall.height) + newWall.height / 2; } game.addChild(newWall); } // Hide walls from level 1 when level 2 starts if (level === 2) { for (var i = game.children.length - 1; i >= 0; i--) { if (game.children[i] instanceof WallVertical || game.children[i] instanceof WallHorizontal) { game.children[i].visible = false; } } } // Add wall2 to level 2 as objects respawning from top to bottom if (level === 2 && LK.ticks % 60 == 0) { var newWall2Top = new Wall2(); newWall2Top.x = Math.random() * (game.width - newWall2Top.width) + newWall2Top.width / 2; newWall2Top.y = 0; game.addChild(newWall2Top); // Add wall2 to level 2 as objects respawning from left to right var newWall2Left = new Wall2(); newWall2Left.x = 0; newWall2Left.y = Math.random() * (game.height - newWall2Left.height) + newWall2Left.height / 2; game.addChild(newWall2Left); } // Add wall3 to level 3 as objects respawning from bottom to top if (level === 3 && LK.ticks % 60 == 0) { var newWall3 = new Wall3(); newWall3.x = Math.random() * (game.width - newWall3.width) + newWall3.width / 2; newWall3.y = game.height; game.addChild(newWall3); var newWall7 = new Wall3Right(); newWall7.x = game.width; newWall7.y = Math.random() * (game.height - newWall7.height) + newWall7.height / 2; game.addChild(newWall7); // Remove redundant timer initialization for level 3 } // Add wall5 to level 5 as objects respawning from top to bottom if (level === 5 && LK.ticks % 60 == 0) { // Ensure timer decreases correctly for level 5 var newWall5 = new WallVertical2(); newWall5.x = Math.random() * (game.width - newWall5.width) + newWall5.width / 2; newWall5.y = 0; game.addChild(newWall5); } // Add wall6 to level 6 as objects respawning from bottom to top if (level === 6 && LK.ticks % 60 == 0) { // Ensure timer decreases correctly for level 6 var newWall6 = new Wall3(); newWall6.x = Math.random() * (game.width - newWall6.width) + newWall6.width / 2; newWall6.y = game.height; game.addChild(newWall6); } // Add wall4 to level 4 as objects respawning from bottom to top and left to right if (level === 4 && LK.ticks % 60 == 0) { // Ensure timer decreases correctly for level 4 var newWall4; if (Math.random() < 0.5) { newWall4 = new Wall4(); newWall4.x = Math.random() * (game.width - newWall4.width) + newWall4.width / 2; newWall4.y = game.height; } else { newWall4 = new Wall4(); newWall4.x = 0; newWall4.y = Math.random() * (game.height - newWall4.height) + newWall4.height / 2; } game.addChild(newWall4); } for (var i = 0; i < game.children.length; i++) { if (game.children[i] instanceof WallVertical || game.children[i] instanceof WallHorizontal || game.children[i] instanceof Wall2 || game.children[i] instanceof WallVertical2) { if (player.intersects(game.children[i]) && game.children[i].visible) { LK.showGameOver(); break; } } } // Increment the level change timer levelChangeTimer++; // Update the time text to show the current status time timeText.setText('Time: ' + Math.floor(levelChangeTimer / 60)); // Convert ticks to seconds // Check if it's time to change the level if (levelChangeTimer >= levelChangeInterval) { levelChangeTimer = 0; // Reset the timer level++; // Increment the level if (level > 6) { level = 1; } // Loop back to level 1 after level 6 setBackgroundForLevel(level); // Change the background for the new level levelText.setText('Level ' + level); // Update the level text } }; // Add event listeners for player movement // Define handleMove function function handleMove(x, y, obj) { if (dragNode) { dragNode.x = x; dragNode.y = y; } } game.down = function (x, y, obj) { dragNode = player; handleMove(x, y, obj); }; game.move = handleMove; // Removed game.move event listener as it's not needed // Removed player movement towards target position in game update game.up = function (x, y, obj) { dragNode = null; };
===================================================================
--- original.js
+++ change.js
@@ -346,8 +346,13 @@
var newWall2Top = new Wall2();
newWall2Top.x = Math.random() * (game.width - newWall2Top.width) + newWall2Top.width / 2;
newWall2Top.y = 0;
game.addChild(newWall2Top);
+ // Add wall2 to level 2 as objects respawning from left to right
+ var newWall2Left = new Wall2();
+ newWall2Left.x = 0;
+ newWall2Left.y = Math.random() * (game.height - newWall2Left.height) + newWall2Left.height / 2;
+ game.addChild(newWall2Left);
}
// Add wall3 to level 3 as objects respawning from bottom to top
if (level === 3 && LK.ticks % 60 == 0) {
var newWall3 = new Wall3();