Code edit (1 edits merged)
Please save this source code
User prompt
Последующий fon_snizu создается в правой части экрана
Code edit (3 edits merged)
Please save this source code
User prompt
Fon_snizu создается каждую секунду за правой частью экрана
User prompt
Fon_snizu удаляется, когда полностью изображение переместиться за левый край
User prompt
Please fix the bug: 'Timeout.tick error: The supplied DisplayObject must be a child of the caller' in or related to this line: 'game.setChildIndex(newFonSnizu, game.getChildIndex(background) - 1); // Place newFonSnizu under background_1' Line Number: 277
User prompt
Please fix the bug: 'Timeout.tick error: The supplied DisplayObject must be a child of the caller' in or related to this line: 'game.setChildIndex(newFonSnizu, game.getChildIndex(background) - 1); // Place newFonSnizu under background_1' Line Number: 278
User prompt
Please fix the bug: 'Timeout.tick error: The supplied DisplayObject must be a child of the caller' in or related to this line: 'game.setChildIndex(newFonSnizu, game.getChildIndex(background) - 1); // Place newFonSnizu under background_1' Line Number: 277
User prompt
Fon_snizu кроме первого опустить под background_1
User prompt
Fon_snizu создается опустить ниже
User prompt
Исправить ошибку, когда не создается fon_snizu
Code edit (10 edits merged)
Please save this source code
User prompt
Создавать fon_snizu каждую секунду справа
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
User prompt
Не удалять fon_snizu
User prompt
Исправить ошибку, когда fon_snizu не появляется
Code edit (3 edits merged)
Please save this source code
User prompt
Опустить fon_snizu на 250 вниз
Code edit (4 edits merged)
Please save this source code
User prompt
Опустить fon_snizu на 200 вниз
User prompt
Удалять fon_snizu как только картинка уйдет полностью за экран
User prompt
Удалять изображения, которые полностью ушли за экран
Code edit (3 edits merged)
Please save this source code
User prompt
Опустить вниз последующие созданные 123 на 700
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ // test var ButtonBot = Container.expand(function () { var self = Container.call(this); var buttonBotGraphics = self.attachAsset('BUTTON_BOT', { anchorX: 0.5, anchorY: 0.5 }); // Add down event to set landing duration to 100 during jump or double jump self.down = function (x, y, obj) { if (!player.inAir && !player.doubleJump) { player.rotation -= Math.PI / 2.25; // Rotate 80 degrees counter-clockwise } else if (player.inAir || player.doubleJump) { tween(player, { y: 2732 / 2 - 250 }, { duration: 100, onFinish: function onFinish() { player.inAir = false; player.doubleJump = false; player.y = 2732 / 2 - 250; } }); } if (player.inAir || player.doubleJump) { player.rotation -= Math.PI / 2.25; // Rotate 80 degrees counter-clockwise tween(player, { y: 2732 / 2 - 250 }, { duration: 100, onFinish: function onFinish() { player.inAir = false; player.doubleJump = false; player.y = 2732 / 2 - 250; } }); } }; // Add up event to reset rotation self.up = function (x, y, obj) { if (!player.inAir && !player.doubleJump) { player.rotation += Math.PI / 2.25; // Rotate back 80 degrees clockwise } else if (player.inAir || player.doubleJump) { player.rotation += Math.PI / 2.25; // Rotate back 80 degrees clockwise } }; }); // Create a button top class var ButtonTop = Container.expand(function () { var self = Container.call(this); var buttonTopGraphics = self.attachAsset('BUTTON_TOP', { anchorX: 0.5, anchorY: 0.5 }); // Add down event to trigger jump self.down = function (x, y, obj) { if (!player.doubleJump) { if (player.inAir) { player.doubleJump = true; tween(player, { y: player.y - 400, rotation: player.rotation - Math.PI * 2 }, { duration: 230, easing: tween.easeInOut, onFinish: function onFinish() { tween(player, { y: 2732 / 2 - 250 }, { duration: 500, onFinish: function onFinish() { player.inAir = false; player.doubleJump = false; player.y = 2732 / 2 - 250; } }); } }); return; } player.inAir = true; tween(player, { y: player.y - 400 }, { duration: 100, onFinish: function onFinish() { tween(player, { y: 2732 / 2 - 250 }, { duration: 700, onFinish: function onFinish() { player.inAir = false; } }); } }); } }; }); // Create a player class var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.attachAsset('character', { anchorX: 0.5, anchorY: 0.5 }); // Initialize the inAir flag self.inAir = false; self.doubleJump = false; // Initialize lastY and lastX for tracking changes self.lastY = self.y; self.lastX = self.x; }); /**** * Initialize Game ****/ // Add player to the game var game = new LK.Game({ backgroundColor: 0xFFFFFF }); /**** * Game Code ****/ // Create a new image 123 every 3 seconds on the right side of the screen var image123Timer = LK.setInterval(function () { var newImage123 = game.addChild(LK.getAsset('123', { anchorX: 0.5, anchorY: 0.5 })); newImage123.x = 2048 + newImage123.width / 2; // Position on the right side of the screen newImage123.y = 2732 / 2 + 1290; // Move image down by 600 pixels newImage123.rotation = Math.PI / 9; // Rotate image by 20 degrees clockwise }, 2500); LK.setTimeout(function () { vzriv = game.addChild(LK.getAsset('Vzriv', { anchorX: 0.5, anchorY: 0.5 })); vzriv.x = vzriv.width / 2 + 90; // Position Vzriv at the left center of the screen vzriv.y = 2732 / 2 - 280; // Center Vzriv vertically game.setChildIndex(player, game.children.length - 1); // Ensure player is on top // Remove Vzriv 2.1 seconds after the game starts LK.setTimeout(function () { vzriv.destroy(); }, 2100); }, 1860); // Add image 123 to the center of the screen var image123 = game.addChild(LK.getAsset('123', { anchorX: 0.5, anchorY: 0.5 })); image123.x = 2048 / 2; // Center image horizontally image123.y = 2732 / 2 + 280; // Move image 123 down by 280 pixels image123.rotation = Math.PI / 9; // Rotate image 123 by 20 degrees clockwise // Add player to the game var ball = game.addChild(LK.getAsset('Ball', { anchorX: 0.5, anchorY: 0.5 })); var uskorenie = game.addChild(LK.getAsset('Uskorenie', { anchorX: 0.5, anchorY: 0.5 })); ball.x = ball.width / 2 - 100; // Shift ball 100 pixels to the left ball.y = 2732 / 2 - 300; // Center ball vertically LK.setTimeout(function () { tween(ball, { x: ball.x + 400 }, { duration: 360, // Reduced duration to double the speed easing: tween.linear, onFinish: function onFinish() { ball.destroy(); // Remove the ball after it moves 200 pixels } }); }, 1500); game.down = function (x, y, obj) {}; var player = game.addChild(new Player()); player.x = player.width / 2 + 200; // Position player 200 units to the right of the center left of the screen player.y = 2732 / 2 - 250; // Move player 150 units down player.rotation = Math.PI / 12; // Set initial rotation to 15 degrees clockwise // Add background to the game var background = game.addChild(LK.getAsset('background_1', { anchorX: 0.5, anchorY: 0.5 })); game.setChildIndex(background, 0); // Move background to the bottom background.x = 2048 / 2; // Center background horizontally background.y = 2732 / 2 + 150; // Move background down by 550 pixels background.rotation = Math.PI / 9; // Rotate background by 20 degrees clockwise // Move background_1 towards its left side var backgroundCounter = 0; var backgroundTimer = LK.setInterval(function () { var newBackground = game.addChild(LK.getAsset('background_1', { anchorX: 0.5, anchorY: 0.5 })); newBackground.x = 2048 / 2 + 2500; // Move background 2048 pixels to the right newBackground.y = 2732 / 2 + 1060; // Move background down by 1100 pixels newBackground.rotation = Math.PI / 9; // Rotate background by 20 degrees clockwise backgroundCounter++; if (backgroundCounter === 1) { LK.clearInterval(backgroundTimer); backgroundTimer = LK.setInterval(function () { var newBackground = game.addChild(LK.getAsset('background_1', { anchorX: 0.5, anchorY: 0.5 })); newBackground.x = 2048 / 2 + 2500; // Move background 2048 pixels to the right newBackground.y = 2732 / 2 + 1060; // Move background down by 1100 pixels newBackground.rotation = Math.PI / 9; // Rotate background by 20 degrees clockwise }, 3200); } else if (backgroundCounter === 2) { LK.clearInterval(backgroundTimer); backgroundTimer = LK.setInterval(function () { var newBackground = game.addChild(LK.getAsset('background_1', { anchorX: 0.5, anchorY: 0.5 })); newBackground.x = 2048 / 2 + 2500; // Move background 2048 pixels to the right newBackground.y = 2732 / 2 + 1060; // Move background down by 1100 pixels newBackground.rotation = Math.PI / 9; // Rotate background by 20 degrees clockwise }, 1000); } }, 500); var gameStarted = false; var gameStartTimer = LK.setTimeout(function () { gameStarted = true; }, 2000); // Add BUTTON_TOP to the game var buttonTop = game.addChild(new ButtonTop()); buttonTop.x = 2048 - buttonTop.width / 2 - 20; // Position buttonTop 20 units to the left of the right edge of the screen buttonTop.y = 2732 - buttonTop.height / 2 - 370; // Position buttonTop 370 units above the bottom edge of the screen // Add fon_snizu to the bottom of the screen var fonSnizu = game.addChild(LK.getAsset('Fon_snizu', { anchorX: 0.5, anchorY: 1.0 })); fonSnizu.x = 2048 / 2 - 500; // Center fon_snizu horizontally fonSnizu.y = 2732 + 650; // Move fon_snizu 250 pixels down fonSnizu.rotation = Math.PI / 9; // Rotate fonSnizu by 20 degrees clockwise game.setChildIndex(fonSnizu, 0); // Move fonSnizu to the bottom layer // Create a new fon_snizu image every second on the right side of the screen var fonSnizuTimer = LK.setInterval(function () { var newFonSnizu = game.addChild(LK.getAsset('Fon_snizu', { anchorX: 0.5, anchorY: 1.0 })); newFonSnizu.x = 2048 + newFonSnizu.width / 2; // Position on the right side of the screen newFonSnizu.y = 2732 + 1550; // Move fon_snizu 650 pixels down newFonSnizu.rotation = Math.PI / 9; // Rotate fonSnizu by 20 degrees clockwise game.setChildIndex(newFonSnizu, 0); // Move newFonSnizu to the bottom layer }, 1000); // Add BUTTON_BOT to the game var buttonBot = game.addChild(new ButtonBot()); buttonBot.x = 2048 - buttonBot.width / 2 - 20; // Position buttonBot 20 units to the left of the right edge of the screen buttonBot.y = 2732 - buttonBot.height / 2 - 20; // Position buttonBot 20 units above the bottom edge of the screen game.update = function () { if (!gameStarted) { buttonTop.interactive = false; buttonBot.interactive = false; return; } buttonTop.interactive = true; buttonBot.interactive = true; // Update lastY and lastX for player player.lastY = player.y; player.lastX = player.x; game.children.forEach(function (child) { if (child !== player && child !== buttonTop && child !== buttonBot && child !== uskorenie) { child.x -= 15 * Math.cos(child.rotation); // Increase the speed by 1.5 times child.y -= 15 * Math.sin(child.rotation); // Increase the speed by 1.5 times if (child.x + child.width / 2 < 0 && child.assetId === 'Fon_snizu' || child.y + child.height / 2 < 0 || child.x - child.width / 2 > 2048 || child.y - child.height / 2 > 2732) { // If the image is completely off the screen child.destroy(); // Remove the image } } game.setChildIndex(player, game.children.length - 1); // Move player to the top }); // Add shaking effect to the player if (gameStarted) { if (LK.ticks < 130) { // Strong shake for the first second (assuming 60 FPS) player.x = player.lastX + Math.sin(LK.ticks / 0.5) * 10; player.y = player.lastY + Math.cos(LK.ticks / 0.5) * 10; } else { player.x = player.lastX + Math.sin(LK.ticks / 0.5) * 3; player.y = player.lastY + Math.cos(LK.ticks / 0.5) * 3; } if (vzriv && vzriv.parent) { vzriv.destroy(); } } };
===================================================================
--- original.js
+++ change.js
@@ -256,9 +256,9 @@
anchorX: 0.5,
anchorY: 1.0
}));
newFonSnizu.x = 2048 + newFonSnizu.width / 2; // Position on the right side of the screen
- newFonSnizu.y = 2732 + 650; // Move fon_snizu 650 pixels down
+ newFonSnizu.y = 2732 + 1550; // Move fon_snizu 650 pixels down
newFonSnizu.rotation = Math.PI / 9; // Rotate fonSnizu by 20 degrees clockwise
game.setChildIndex(newFonSnizu, 0); // Move newFonSnizu to the bottom layer
}, 1000);
// Add BUTTON_BOT to the game
создать мультяшного сидячего персонажа. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
snowball. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
белая стрелочка вниз. Ровная. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Алмаз, мультяшный. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Скелет дракона. Мультяшный. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Ufo (летающая тарелка). Мультяшная. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Пингвин в снегу. Мультяшный. Головой в снегу. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Мультяшный рыбак зимой сидит рыбачит. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Человек летит на параплане. Мультяшный. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Куст в снегу мультяшный. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Дирижабль, мультяшный. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Рука белая. Иконка. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Монетка золотая мультяшная. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
снежинка. мультяшная. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
text: New Record! Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows