User prompt
remove the first Forestbug background from all levels
User prompt
At the third level, the Skybb background should be lengthened. Remove Forestbug from the third level and replace it with ScyBg
User prompt
look. everything is done correctly at the first level. There's a background called forestbug from assets. You did everything right. On the second level, the background is called Cave Bg, so it needs to be duplicated above. And for some reason you duplicated Forestbug, but you need CaveBg on the second level. The same thing happens on the third level, there is its own background, it needs to be duplicated, and not Forestbug Forestbg removed everywhere except the first level and replaced with backgrounds designed for each level
User prompt
on the fourth level, where there is a background with a thunderstorm, make sure that the same background is passed above the background with a thunderstorm. Now there is a background with clouds
User prompt
make sure that all levels have their own unique background and take this into account when duplicating the background above. Remove the duplicate of the first background from all levels and replace them with your own unique ones for each level.
User prompt
make sure that the caveBg background is duplicated higher on the second level, instead of forest Bg
User prompt
Make caveBg duplicate higher on the second level.
User prompt
each level has its own background, and it should be duplicated. on the 1st first level, the first background is duplicated, on the second level, the second background is duplicated, etc. each has its own background.
User prompt
okay, just make sure that his personal background is duplicated for each background. now the background of the first level duplicates all levels, but each level should have its own background duplicated.
User prompt
duplicate the background from above and below so that there is no black background, but a background picture.
User prompt
No, return the background as it was.
User prompt
extend the background of the assets at each level three times in height so that the background image is not interrupted at each level
User prompt
At the fourth level, the background picture is over, you can extend the background up.
User prompt
at the fifth level, the background picture is over, you can extend the background up
User prompt
expand the new background to cover the entire screen
User prompt
the green background remains, you need to remove it completely
User prompt
remove the entire part of the green background
User prompt
for some reason, part of the green background is visible below. Take it away
User prompt
make the background fully visible, otherwise the green background is visible. you need only the background to be visible
User prompt
remove the player animation. Return it as it was
User prompt
make an animation of the hero so that he moves his legs during the jump βͺπ‘ Consider importing and using the following plugins: @upit/tween.v1
User prompt
make sure that the coins do not spin, but float in the air. βͺπ‘ Consider importing and using the following plugins: @upit/tween.v1
User prompt
Make a beautiful photographic background for each level
/****
* Plugins
****/
var tween = LK.import("@upit/tween.v1");
var storage = LK.import("@upit/storage.v1");
/****
* Classes
****/
var Coin = Container.expand(function () {
var self = Container.call(this);
var coinGraphics = self.attachAsset('coin', {
anchorX: 0.5,
anchorY: 0.5
});
self.collected = false;
self.startY = self.y; // Store initial Y position for floating reference
self.floatingUp = true; // Track floating direction
self.update = function () {
// Floating animation is handled by tween, no manual updates needed
};
// Start floating animation
self.startFloating = function () {
var floatDistance = 20; // How far up and down to float
var floatDuration = 2000; // 2 seconds per direction
function floatUp() {
tween(self, {
y: self.startY - floatDistance
}, {
duration: floatDuration,
easing: tween.easeInOut,
onFinish: floatDown
});
}
function floatDown() {
tween(self, {
y: self.startY + floatDistance
}, {
duration: floatDuration,
easing: tween.easeInOut,
onFinish: floatUp
});
}
floatUp(); // Start the floating animation
};
return self;
});
var MovingPlatform = Container.expand(function () {
var self = Container.call(this);
var platformGraphics = self.attachAsset('movingPlatform', {
anchorX: 0.5,
anchorY: 0.5
});
self.platformType = 'moving';
self.velocityX = 0;
self.velocityY = 0;
self.startX = 0;
self.startY = 0;
self.endX = 0;
self.endY = 0;
self.moveSpeed = 2;
self.direction = 1;
self.setMovement = function (startX, startY, endX, endY, speed) {
self.startX = startX;
self.startY = startY;
self.endX = endX;
self.endY = endY;
self.moveSpeed = speed || 2;
self.x = startX;
self.y = startY;
};
self.update = function () {
var targetX = self.direction > 0 ? self.endX : self.startX;
var targetY = self.direction > 0 ? self.endY : self.startY;
var deltaX = targetX - self.x;
var deltaY = targetY - self.y;
var distance = Math.sqrt(deltaX * deltaX + deltaY * deltaY);
// Change direction when close to target
if (distance < 5) {
self.direction *= -1;
}
// Always move unless exactly at target
if (distance > 1) {
// Normalize direction vector and apply speed
var normalizedX = deltaX / distance;
var normalizedY = deltaY / distance;
self.velocityX = normalizedX * self.moveSpeed;
self.velocityY = normalizedY * self.moveSpeed;
self.x += self.velocityX;
self.y += self.velocityY;
} else {
self.velocityX = 0;
self.velocityY = 0;
}
};
return self;
});
var Player = Container.expand(function () {
var self = Container.call(this);
var playerGraphics = self.attachAsset('player', {
anchorX: 0.5,
anchorY: 1.0
});
self.velocityY = 0;
self.velocityX = 0;
self.onGround = false;
self.onMovingPlatform = null;
self.jumpPower = -25;
self.gravity = 0.8;
self.speed = 8;
self.maxFallSpeed = 15;
self.jumpCount = 0;
self.maxJumps = 2;
self.jump = function () {
if (self.jumpCount < self.maxJumps) {
self.velocityY = self.jumpPower;
self.jumpCount++;
if (self.jumpCount === 1) {
self.onGround = false;
self.onMovingPlatform = null;
}
LK.getSound('jump').play();
}
};
self.moveLeft = function () {
// Allow movement in air for turning while jumping
self.velocityX = Math.max(-self.speed, self.velocityX - 2);
// Set player to face left
playerGraphics.scaleX = -Math.abs(playerGraphics.scaleX || 1);
};
self.moveRight = function () {
// Allow movement in air for turning while jumping
self.velocityX = Math.min(self.speed, self.velocityX + 2);
// Set player to face right
playerGraphics.scaleX = Math.abs(playerGraphics.scaleX || 1);
};
self.update = function () {
// Apply gravity
if (!self.onGround) {
self.velocityY += self.gravity;
if (self.velocityY > self.maxFallSpeed) {
self.velocityY = self.maxFallSpeed;
}
}
// Move with platform if on one
if (self.onMovingPlatform) {
self.x += self.onMovingPlatform.velocityX;
self.y += self.onMovingPlatform.velocityY;
}
// Apply movement
self.x += self.velocityX;
self.y += self.velocityY;
// Reduce horizontal velocity (friction) - less friction when in air
if (self.onGround) {
self.velocityX *= 0.8;
} else {
self.velocityX *= 0.95; // Less friction in air for better control
}
// Keep player in bounds horizontally
if (self.x < 30) self.x = 30;
if (self.x > 2018) self.x = 2018;
// Check if fallen below screen
if (self.y > 2800) {
resetLevel();
}
};
return self;
});
var StaticPlatform = Container.expand(function () {
var self = Container.call(this);
var platformGraphics = self.attachAsset('staticPlatform', {
anchorX: 0.5,
anchorY: 0.5
});
self.platformType = 'static';
return self;
});
/****
* Initialize Game
****/
var game = new LK.Game();
/****
* Game Code
****/
var player;
var platforms = [];
var coins = [];
var currentLevel = 1;
var cameraY = 0;
var backgroundElements = [];
var levelBackgrounds = [0x228B22,
// Forest - Green
0x8B4513,
// Cave - Brown
0x87CEEB,
// Sky - Light Blue
0x696969,
// Industrial - Gray
0x191970,
// Space - Midnight Blue
0x008B8B,
// Underwater - Dark Cyan
0xF4A460,
// Desert - Sandy Brown
0xB0E0E6,
// Ice - Powder Blue
0xFF4500,
// Volcano - Orange Red
0x4B0082 // Futuristic - Indigo
];
var levelBackgroundImages = ['forestBg', 'caveBg', 'skyBg', 'industrialBg', 'spaceBg', 'underwaterBg', 'desertBg', 'iceBg', 'volcanoBg', 'futuristicBg'];
var currentBackground = null;
// UI Elements
var scoreText = new Text2('Coins: 0', {
size: 60,
fill: 0xFFFFFF
});
scoreText.anchor.set(0, 0);
scoreText.x = 120; // Position away from platform menu icon
LK.gui.topLeft.addChild(scoreText);
var levelText = new Text2('Level: 1', {
size: 60,
fill: 0xFFFFFF
});
levelText.anchor.set(0, 0);
levelText.x = 120; // Position away from platform menu icon
levelText.y = 70; // Position below score text
LK.gui.topLeft.addChild(levelText);
// Level data for each level
var levelData = [
// Level 1 - Forest (Easy)
{
platforms: [{
type: 'static',
x: 1024,
y: 2600,
width: 600
}, {
type: 'static',
x: 400,
y: 2100,
width: 400
}, {
type: 'static',
x: 1600,
y: 1600,
width: 400
}, {
type: 'moving',
x1: 600,
y1: 1100,
x2: 1200,
y2: 1100,
speed: 1
}, {
type: 'static',
x: 1024,
y: 600,
width: 400
}, {
type: 'static',
x: 300,
y: 100,
width: 400
}, {
type: 'static',
x: 1700,
y: 2000,
width: 350
}, {
type: 'static',
x: 800,
y: 1500,
width: 350
}, {
type: 'moving',
x1: 1300,
y1: 1000,
x2: 1700,
y2: 1000,
speed: 1.5
}, {
type: 'static',
x: 500,
y: 500,
width: 350
}, {
type: 'moving',
x1: 1200,
y1: 300,
x2: 1600,
y2: 300,
speed: 1.2
}, {
type: 'static',
x: 1500,
y: 1400,
width: 400
}, {
type: 'static',
x: 600,
y: 900,
width: 350
}, {
type: 'static',
x: 1400,
y: 400,
width: 350
}, {
type: 'moving',
x1: 300,
y1: 800,
x2: 700,
y2: 800,
speed: 1.3
}, {
type: 'static',
x: 1700,
y: 200,
width: 350
}],
coins: [{
x: 1024,
y: 2500
}, {
x: 400,
y: 2000
}, {
x: 1600,
y: 1500
}, {
x: 900,
y: 1000
}, {
x: 1024,
y: 500
}, {
x: 300,
y: 0
}]
},
// Level 2 - Cave (Easy-Medium)
{
platforms: [{
type: 'static',
x: 1024,
y: 2600,
width: 600
}, {
type: 'moving',
x1: 300,
y1: 2100,
x2: 700,
y2: 2100,
speed: 1.5
}, {
type: 'static',
x: 1700,
y: 1600,
width: 400
}, {
type: 'moving',
x1: 1200,
y1: 1100,
x2: 1200,
y2: 900,
speed: 1
}, {
type: 'static',
x: 400,
y: 600,
width: 400
}, {
type: 'moving',
x1: 800,
y1: 100,
x2: 1400,
y2: 100,
speed: 2
}, {
type: 'static',
x: 1600,
y: 2000,
width: 350
}, {
type: 'static',
x: 800,
y: 1500,
width: 350
}, {
type: 'moving',
x1: 1400,
y1: 1000,
x2: 1700,
y2: 1000,
speed: 1.8
}, {
type: 'static',
x: 600,
y: 500,
width: 400
}, {
type: 'static',
x: 1500,
y: 200,
width: 350
}, {
type: 'static',
x: 250,
y: 2200,
width: 350
}, {
type: 'moving',
x1: 1300,
y1: 1400,
x2: 1600,
y2: 1400,
speed: 1.3
}, {
type: 'static',
x: 300,
y: 800,
width: 350
}, {
type: 'moving',
x1: 1000,
y1: 300,
x2: 1300,
y2: 300,
speed: 1.7
}],
coins: [{
x: 1024,
y: 2500
}, {
x: 500,
y: 2000
}, {
x: 1700,
y: 1500
}, {
x: 1200,
y: 1000
}, {
x: 400,
y: 500
}, {
x: 1100,
y: 0
}]
},
// Level 3 - Sky (Medium)
{
platforms: [{
type: 'static',
x: 1024,
y: 2600,
width: 600
}, {
type: 'moving',
x1: 200,
y1: 2100,
x2: 600,
y2: 2100,
speed: 2
}, {
type: 'moving',
x1: 1400,
y1: 1600,
x2: 1800,
y2: 1600,
speed: 2
}, {
type: 'static',
x: 800,
y: 1100,
width: 350
}, {
type: 'moving',
x1: 400,
y1: 600,
x2: 1200,
y2: 600,
speed: 2.5
}, {
type: 'static',
x: 1600,
y: 100,
width: 400
}, {
type: 'static',
x: 1700,
y: 2000,
width: 350
}, {
type: 'moving',
x1: 300,
y1: 1500,
x2: 700,
y2: 1500,
speed: 2.2
}, {
type: 'static',
x: 1500,
y: 1000,
width: 350
}, {
type: 'moving',
x1: 900,
y1: 500,
x2: 1300,
y2: 500,
speed: 2.8
}, {
type: 'static',
x: 400,
y: 200,
width: 400
}, {
type: 'static',
x: 600,
y: 2200,
width: 350
}, {
type: 'moving',
x1: 1200,
y1: 1400,
x2: 1600,
y2: 1400,
speed: 2.3
}, {
type: 'static',
x: 250,
y: 800,
width: 350
}, {
type: 'moving',
x1: 1100,
y1: 300,
x2: 1500,
y2: 300,
speed: 2.6
}],
coins: [{
x: 1024,
y: 2500
}, {
x: 400,
y: 2000
}, {
x: 1600,
y: 1500
}, {
x: 800,
y: 1000
}, {
x: 800,
y: 500
}, {
x: 400,
y: 100
}]
}];
// Add more levels (4-10) with increasing difficulty
for (var i = 3; i < 10; i++) {
var level = {
platforms: [{
type: 'static',
x: 1024,
y: 2600,
width: 600
}],
coins: []
};
var difficulty = Math.floor(i / 3); // 0, 1, 2, 3 for different difficulty tiers
var platformCount = 14 + difficulty * 3;
var speed = 1.5 + difficulty * 0.5;
for (var j = 1; j < platformCount; j++) {
var yPos = 2600 - j * 500;
var isMoving = Math.random() < 0.4 + difficulty * 0.1;
if (isMoving) {
var x1 = 300 + Math.random() * 800;
var x2 = 300 + Math.random() * 800;
level.platforms.push({
type: 'moving',
x1: x1,
y1: yPos,
x2: x2,
y2: yPos,
speed: speed
});
} else {
level.platforms.push({
type: 'static',
x: 400 + Math.random() * 1200,
y: yPos,
width: 300 + Math.random() * 200
});
}
// Add coin
level.coins.push({
x: 400 + Math.random() * 1200,
y: yPos - 100
});
}
levelData.push(level);
}
function createAnimatedBackground() {
// Clear existing background elements
for (var i = backgroundElements.length - 1; i >= 0; i--) {
backgroundElements[i].destroy();
}
backgroundElements = [];
// Create floating background elements
var _loop = function _loop() {
elementType = 'bgElement' + (Math.floor(Math.random() * 3) + 1);
element = game.addChild(LK.getAsset(elementType, {
anchorX: 0.5,
anchorY: 0.5
}));
element.x = Math.random() * 2048;
element.y = Math.random() * 2732;
element.alpha = 0.3 + Math.random() * 0.4;
backgroundElements.push(element);
// Animate floating movement
moveX = (Math.random() - 0.5) * 400;
moveY = (Math.random() - 0.5) * 400;
duration = 3000 + Math.random() * 4000;
function animateElement() {
tween(element, {
x: element.x + moveX,
y: element.y + moveY,
rotation: element.rotation + Math.PI * 2
}, {
duration: duration,
easing: tween.easeInOut,
onFinish: function onFinish() {
// Reset position if out of bounds
if (element.x < -100 || element.x > 2148 || element.y < -100 || element.y > 2832) {
element.x = Math.random() * 2048;
element.y = Math.random() * 2732;
}
animateElement();
}
});
}
animateElement();
},
elementType,
element,
moveX,
moveY,
duration;
for (var i = 0; i < 15; i++) {
_loop();
}
}
function initializeLevel(levelNum) {
// Clear existing objects
for (var i = platforms.length - 1; i >= 0; i--) {
platforms[i].destroy();
}
platforms = [];
for (var i = coins.length - 1; i >= 0; i--) {
coins[i].destroy();
}
coins = [];
if (player) {
player.destroy();
}
// Remove previous background image
if (currentBackground) {
currentBackground.destroy();
currentBackground = null;
}
// Create photographic background with duplicates above and below
var bgImageId = levelBackgroundImages[(levelNum - 1) % levelBackgroundImages.length];
// Create main background
currentBackground = game.addChild(LK.getAsset(bgImageId, {
anchorX: 0,
anchorY: 0,
x: 0,
y: 0,
width: 2048,
height: 2732
}));
// Create background above using the same level-specific background
var backgroundAbove = game.addChild(LK.getAsset(bgImageId, {
anchorX: 0,
anchorY: 0,
x: 0,
y: -2732,
width: 2048,
height: 2732
}));
// Create background below using the same level-specific background
var backgroundBelow = game.addChild(LK.getAsset(bgImageId, {
anchorX: 0,
anchorY: 0,
x: 0,
y: 2732,
width: 2048,
height: 2732
}));
// For level 2 (caveBg), create additional background duplicates higher up using level-specific background
if (levelNum === 2) {
var backgroundAbove2 = game.addChild(LK.getAsset('caveBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -5464,
width: 2048,
height: 2732
}));
var backgroundAbove3 = game.addChild(LK.getAsset('caveBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -8196,
width: 2048,
height: 2732
}));
game.setChildIndex(backgroundAbove2, 3);
game.setChildIndex(backgroundAbove3, 4);
}
// For level 3 (skyBg), create additional background duplicates higher up using level-specific background
if (levelNum === 3) {
var backgroundAbove2 = game.addChild(LK.getAsset('skyBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -5464,
width: 2048,
height: 2732
}));
var backgroundAbove3 = game.addChild(LK.getAsset('skyBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -8196,
width: 2048,
height: 2732
}));
game.setChildIndex(backgroundAbove2, 3);
game.setChildIndex(backgroundAbove3, 4);
}
// For level 4 (volcanoBg), create additional background duplicates higher up using level-specific background
if (levelNum === 4) {
var backgroundAbove2 = game.addChild(LK.getAsset('volcanoBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -5464,
width: 2048,
height: 2732
}));
var backgroundAbove3 = game.addChild(LK.getAsset('volcanoBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -8196,
width: 2048,
height: 2732
}));
game.setChildIndex(backgroundAbove2, 3);
game.setChildIndex(backgroundAbove3, 4);
}
// For levels 5-10, create additional background duplicates higher up using level-specific background
if (levelNum >= 5 && levelNum <= 10) {
var backgroundAbove2 = game.addChild(LK.getAsset(bgImageId, {
anchorX: 0,
anchorY: 0,
x: 0,
y: -5464,
width: 2048,
height: 2732
}));
var backgroundAbove3 = game.addChild(LK.getAsset(bgImageId, {
anchorX: 0,
anchorY: 0,
x: 0,
y: -8196,
width: 2048,
height: 2732
}));
game.setChildIndex(backgroundAbove2, 3);
game.setChildIndex(backgroundAbove3, 4);
}
// Send all backgrounds to back
game.setChildIndex(currentBackground, 0);
game.setChildIndex(backgroundAbove, 1);
game.setChildIndex(backgroundBelow, 2);
// Create animated background
createAnimatedBackground();
// Background color removed - only using background images
// Create player
player = game.addChild(new Player());
player.x = 1024;
player.y = 2550;
// Create platforms
var levelConfig = levelData[levelNum - 1];
if (levelConfig) {
for (var i = 0; i < levelConfig.platforms.length; i++) {
var platformConfig = levelConfig.platforms[i];
var platform;
if (platformConfig.type === 'moving') {
platform = game.addChild(new MovingPlatform());
platform.setMovement(platformConfig.x1, platformConfig.y1, platformConfig.x2, platformConfig.y2, platformConfig.speed);
} else {
platform = game.addChild(new StaticPlatform());
platform.x = platformConfig.x;
platform.y = platformConfig.y;
if (platformConfig.width) {
platform.scaleX = platformConfig.width / 200;
}
}
platforms.push(platform);
}
// Create coins
for (var i = 0; i < levelConfig.coins.length; i++) {
var coinConfig = levelConfig.coins[i];
var coin = game.addChild(new Coin());
coin.x = coinConfig.x;
coin.y = coinConfig.y;
coin.startY = coinConfig.y; // Set the reference Y position for floating
coin.startFloating(); // Start the floating animation
coins.push(coin);
}
}
levelText.setText('Level: ' + levelNum);
cameraY = 0;
}
function resetLevel() {
initializeLevel(currentLevel);
}
function nextLevel() {
currentLevel++;
if (currentLevel > 10) {
LK.showYouWin();
return;
}
initializeLevel(currentLevel);
}
function checkPlatformCollisions() {
player.onGround = false;
var wasOnMovingPlatform = player.onMovingPlatform;
player.onMovingPlatform = null;
for (var i = 0; i < platforms.length; i++) {
var platform = platforms[i];
if (player.intersects(platform)) {
// Check if player is falling onto platform
if (player.velocityY > 0) {
var playerBottom = player.y;
var platformTop = platform.y - 15;
if (playerBottom > platformTop - 20 && playerBottom < platformTop + 20) {
player.y = platformTop;
player.velocityY = 0;
player.onGround = true;
player.jumpCount = 0;
if (platform.platformType === 'moving') {
player.onMovingPlatform = platform;
}
break;
}
}
}
}
}
function checkCoinCollisions() {
for (var i = coins.length - 1; i >= 0; i--) {
var coin = coins[i];
if (!coin.collected && player.intersects(coin)) {
coin.collected = true;
coin.destroy();
coins.splice(i, 1);
LK.setScore(LK.getScore() + 1);
scoreText.setText('Coins: ' + LK.getScore());
LK.getSound('coin').play();
}
}
}
function updateCamera() {
var targetY = -player.y + 1800;
cameraY += (targetY - cameraY) * 0.1;
game.y = cameraY;
}
function checkLevelComplete() {
// Find the topmost platform in the current level
var topmostY = 2600; // Start with the bottom platform y position
var levelConfig = levelData[currentLevel - 1];
if (levelConfig) {
for (var i = 0; i < levelConfig.platforms.length; i++) {
var platformConfig = levelConfig.platforms[i];
var platformY = platformConfig.y || platformConfig.y1; // Use y1 for moving platforms
if (platformY < topmostY) {
topmostY = platformY;
}
}
}
// Check if player has reached the topmost platform (with some tolerance)
if (player.y <= topmostY + 50 && player.onGround) {
nextLevel();
}
}
// Touch controls restored
// Touch controls
game.down = function (x, y, obj) {
// Jump on any touch
player.jump();
// Movement based on left/right side of screen
if (x < 1024) {
player.moveLeft();
} else {
player.moveRight();
}
};
game.move = function (x, y, obj) {
// Continue movement while dragging
if (x < 1024) {
player.moveLeft();
} else {
player.moveRight();
}
};
// Initialize first level
initializeLevel(1);
// Main game loop
game.update = function () {
// Touch controls are handled by touch events below
checkPlatformCollisions();
checkCoinCollisions();
updateCamera();
checkLevelComplete();
}; ===================================================================
--- original.js
+++ change.js
@@ -705,17 +705,17 @@
height: 2732
}));
// For level 2 (caveBg), create additional background duplicates higher up using level-specific background
if (levelNum === 2) {
- var backgroundAbove2 = game.addChild(LK.getAsset(bgImageId, {
+ var backgroundAbove2 = game.addChild(LK.getAsset('caveBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -5464,
width: 2048,
height: 2732
}));
- var backgroundAbove3 = game.addChild(LK.getAsset(bgImageId, {
+ var backgroundAbove3 = game.addChild(LK.getAsset('caveBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -8196,
@@ -747,17 +747,17 @@
game.setChildIndex(backgroundAbove3, 4);
}
// For level 4 (volcanoBg), create additional background duplicates higher up using level-specific background
if (levelNum === 4) {
- var backgroundAbove2 = game.addChild(LK.getAsset(bgImageId, {
+ var backgroundAbove2 = game.addChild(LK.getAsset('volcanoBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -5464,
width: 2048,
height: 2732
}));
- var backgroundAbove3 = game.addChild(LK.getAsset(bgImageId, {
+ var backgroundAbove3 = game.addChild(LK.getAsset('volcanoBg', {
anchorX: 0,
anchorY: 0,
x: 0,
y: -8196,
Stone platform sprite, solid gray granite texture with green moss covering, ancient ruins style, rectangular shape, weathered stone surface, small cracks and details, stable and heavy appearance, 2D pixel art, side view, transparent background. In-Game asset. 2d. High contrast. No shadows
Mechanical floating platform, red metal surface with glowing energy core, sci-fi futuristic design, sleek metallic texture, blue energy particles or trails around edges, hovering effect, technological appearance with small lights or circuits, 2D pixel art style, side view, transparent background. In-Game asset. 2d. High contrast. No shadows
Golden coin sprite, shiny yellow gold surface, circular shape with star or gem symbol in center, pixel art style, slight shine effect or sparkle, collectible item appearance, rotating animation-ready, bright and eye-catching, classic video game coin design, 16-bit aesthetic, transparent background. In-Game asset. 2d. High contrast. No shadows
Morning sky background, fluffy white clouds, soft blue gradient, sunrise colors, peaceful atmosphere, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Bright day sky, cotton candy clouds, clear blue background, sun rays, cheerful mood, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Storm clouds background, dark gray clouds, lightning bolts, dramatic sky, purple-gray gradient, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Night sky background, dark blue clouds, stars and moon, peaceful nighttime atmosphere, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Space nebula background, cosmic clouds, purple and blue colors, stars and galaxies, sci-fi atmosphere, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Winter sky, ice-crystal clouds, cold blue-white gradient, snowy atmosphere, frosty background, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Volcanic sky, red-orange fiery clouds, lava glow effect, hot atmosphere, dramatic red gradient, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Golden heaven sky, shimmering gold clouds, divine atmosphere, bright yellow-gold gradient, epic finale background, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Rainbow sky background, colorful clouds with rainbow stripes, magical atmosphere, vibrant colors, 2D pixel art. In-Game asset. 2d. High contrast. No shadows
Sunset sky, orange and pink clouds, golden hour atmosphere, warm gradient background, 2D pixel art. In-Game asset. 2d. High contrast. No shadows