User prompt
Make the numbers written in numbers thicker
User prompt
Get a bolder font
User prompt
Make the font smaller and bolder
User prompt
When you add, change the font of the number area to a different one.
User prompt
It is visible whenever it is collected, but it is not visible whenever it is not collected.
User prompt
Whenever the symbols above are collected, they will become visible.
User prompt
Get a symbol when you collect crystals
User prompt
Let the crystal stand still
User prompt
Make crystal animation fixed ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Make another collectible item
User prompt
Arkaplanmuzik Play it constantly in the background
User prompt
To the left
User prompt
A little more
User prompt
A little more
User prompt
Move the heart symbols downwards
User prompt
Move the hearts position ten units down and to the left
User prompt
Move the hearts 3 units down and to the left
User prompt
Make the place where it says M a symbol
User prompt
Change the font of the place where it says M to be bolder and italic
User prompt
Set the distance field to only write m
User prompt
Move the floor up one unit
User prompt
Move character's position 3 units lower
User prompt
Smooth infinite loop in background ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Move the character's location a little lower 1 unit
User prompt
Make the character close to the ground
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ var Coin = Container.expand(function () { var self = Container.call(this); var coinGraphics = self.attachAsset('coin', { anchorX: 0.5, anchorY: 0.5 }); self.speed = gameSpeed; self.collected = false; // Floating animation self.floatOffset = 0; self.update = function () { self.x -= self.speed; // Floating animation self.floatOffset += 0.15; coinGraphics.y = Math.sin(self.floatOffset) * 10; // Rotation animation coinGraphics.rotation += 0.1; }; return self; }); var Player = Container.expand(function () { var self = Container.call(this); var foxGraphics = self.attachAsset('fox', { anchorX: 0.5, anchorY: 1.0 }); self.isJumping = false; self.velocityY = 0; self.groundY = 2732 - 150 - 3; // Ground level self.jumpPower = -27; self.gravity = 1.2; self.runAnimationTimer = 0; self.jump = function () { if (!self.isJumping) { self.isJumping = true; self.velocityY = self.jumpPower; LK.getSound('jump').play(); // Jump animation - scale up and rotate slightly tween(foxGraphics, { scaleX: 1.2, scaleY: 1.2, rotation: -0.3 }, { duration: 200, easing: tween.easeOut, onFinish: function onFinish() { tween(foxGraphics, { scaleX: 1.0, scaleY: 1.0, rotation: 0 }, { duration: 300, easing: tween.easeIn }); } }); } }; self.update = function () { if (self.isJumping) { self.velocityY += self.gravity; self.y += self.velocityY; // Land on ground if (self.y >= self.groundY) { self.y = self.groundY; self.isJumping = false; self.velocityY = 0; } } else { // Running animation when on ground self.runAnimationTimer += 0.2; foxGraphics.y = Math.sin(self.runAnimationTimer) * 3; foxGraphics.scaleX = 1.0 + Math.sin(self.runAnimationTimer * 2) * 0.05; } }; return self; }); var Trail = Container.expand(function () { var self = Container.call(this); var trailGraphics = self.attachAsset('fox', { anchorX: 0.5, anchorY: 1.0, scaleX: 0.6, scaleY: 0.6, alpha: 0.7 }); self.speed = gameSpeed; self.update = function () { self.x -= self.speed; }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87CEEB }); /**** * Game Code ****/ var player; var coins = []; var trails = []; var gameSpeed = 8; var spawnTimer = 0; var coinCount = 0; var distanceScore = 0; var groundY = 2732 - 150; var playerLives = 3; var trailTimer = 0; var background1, background2; // UI Elements var coinIcon = LK.getAsset('coin_icon', { anchorX: 0.5, anchorY: 0, x: 0, y: 20 }); LK.gui.top.addChild(coinIcon); var coinText = new Text2('0', { size: 90, fill: 0xFFFFFF }); coinText.anchor.set(0.5, 0); coinText.x = 0; coinText.y = 110; LK.gui.top.addChild(coinText); var scoreText = new Text2('Distance: 0', { size: 90, fill: 0xFFFFFF }); scoreText.anchor.set(1, 0); LK.gui.topRight.addChild(scoreText); // Create heart UI elements var hearts = []; for (var h = 0; h < 3; h++) { var heart = LK.getAsset('heart', { anchorX: 0.5, anchorY: 0.5, x: 120 + h * 105, y: 120 }); hearts.push(heart); LK.gui.topLeft.addChild(heart); } // Create endless scrolling background background1 = game.addChild(LK.getAsset('background', { anchorX: 0, anchorY: 0, x: 0, y: 0 })); background2 = game.addChild(LK.getAsset('background', { anchorX: 0, anchorY: 0, x: 2048, y: 0 })); // Create animated ground elements for endless scrolling var ground1 = game.addChild(LK.getAsset('ground', { anchorX: 0, anchorY: 0, x: 0, y: groundY })); var ground2 = game.addChild(LK.getAsset('ground', { anchorX: 0, anchorY: 0, x: 4008, // Position second ground at end of first ground y: groundY })); // Ground animation variables var groundAnimationTimer = 0; // Create player (will be added to foreground later) player = new Player(); player.x = 400; player.y = groundY - 3; player.isInvulnerable = false; // Touch controls game.down = function (x, y, obj) { player.jump(); }; function spawnCoin() { var coin = new Coin(); coin.x = 2048 + 100; coin.y = groundY - 100 - Math.random() * 150; coins.push(coin); game.addChild(coin); } game.update = function () { // Increase distance score distanceScore += 1; scoreText.setText('Distance: ' + Math.floor(distanceScore / 10)); // Gradually increase speed gameSpeed = 8 + distanceScore / 2000; // Move background with game progression background1.x -= gameSpeed * 0.3; // Slower parallax effect background2.x -= gameSpeed * 0.3; // Reset background positions for endless scrolling if (background1.x <= -2048) { background1.x = background2.x + 2048; } if (background2.x <= -2048) { background2.x = background1.x + 2048; } // Move both ground elements with game progression ground1.x -= gameSpeed; ground2.x -= gameSpeed; // Reset ground positions for endless scrolling if (ground1.x <= -4008) { ground1.x = ground2.x + 4008; } if (ground2.x <= -4008) { ground2.x = ground1.x + 4008; } // Animate ground with subtle movement groundAnimationTimer += 0.1; var groundOffset = Math.sin(groundAnimationTimer) * 2; ground1.y = groundY + groundOffset; ground2.y = groundY + groundOffset; // Add slight scale animation to ground var scaleAnimation = 1.0 + Math.sin(groundAnimationTimer * 0.5) * 0.02; ground1.scaleY = scaleAnimation; ground2.scaleY = scaleAnimation; // Update spawn timer spawnTimer++; trailTimer++; // Create trail when player is jumping if (player.isJumping && trailTimer % 3 == 0) { var trail = new Trail(); trail.x = player.x; trail.y = player.y; trail.speed = gameSpeed; trails.push(trail); game.addChild(trail); // Fade out trail tween(trail, { alpha: 0, scaleX: 0.3, scaleY: 0.3 }, { duration: 500, onFinish: function onFinish() { trail.destroy(); } }); } // Spawn additional coins if (spawnTimer % 60 == 0 && Math.random() < 0.8) { spawnCoin(); } // Update and check coins for (var j = coins.length - 1; j >= 0; j--) { var coin = coins[j]; coin.speed = gameSpeed; // Check collection if (!coin.collected && player.intersects(coin)) { coin.collected = true; coinCount++; LK.setScore(coinCount); coinText.setText(coinCount); LK.getSound('coin').play(); // Visual feedback LK.effects.flashObject(coin, 0xFFFFFF, 300); tween(coin, { alpha: 0, scaleX: 2, scaleY: 2 }, { duration: 300, onFinish: function onFinish() { coin.destroy(); } }); coins.splice(j, 1); continue; } // Remove off-screen coins if (coin.x < -50) { coin.destroy(); coins.splice(j, 1); } } // Update and clean up trails for (var k = trails.length - 1; k >= 0; k--) { var trail = trails[k]; trail.speed = gameSpeed; // Remove off-screen or completely faded trails if (trail.x < -100 || trail.alpha <= 0.1) { trail.destroy(); trails.splice(k, 1); } } // Ensure player stays in foreground by re-adding it if (player.parent !== game) { game.addChild(player); } else { // Move player to top of render order game.removeChild(player); game.addChild(player); } };
===================================================================
--- original.js
+++ change.js
@@ -33,9 +33,9 @@
anchorY: 1.0
});
self.isJumping = false;
self.velocityY = 0;
- self.groundY = 2732 - 149 - 3; // Ground level
+ self.groundY = 2732 - 150 - 3; // Ground level
self.jumpPower = -27;
self.gravity = 1.2;
self.runAnimationTimer = 0;
self.jump = function () {
@@ -115,9 +115,9 @@
var gameSpeed = 8;
var spawnTimer = 0;
var coinCount = 0;
var distanceScore = 0;
-var groundY = 2732 - 149;
+var groundY = 2732 - 150;
var playerLives = 3;
var trailTimer = 0;
var background1, background2;
// UI Elements
Just crystal
Just his head
Background, endless, forest, winter, cartoon. In-Game asset. 2d. High contrast. No shadows
Only the line of the ears and the color of the paws should be gray
Only the line of the ears and the color of the paws should be gray
Let C2 have the character's color
Only the line of the ears and the color of the paws should be gray
Delete the character on it
A version without snow
Koyu mavi elips start butonu. In-Game asset. 2d. High contrast. No shadows. In-Game asset. 2d. High contrast. No shadows
Uçan bir dinazor. In-Game asset. 2d. High contrast. No shadows
Alev topu. In-Game asset. 2d. High contrast. No shadows
Mavi top rasengan top. In-Game asset. 2d. High contrast. No shadows
jump
Sound effect
coin
Sound effect
Arkaplanmuzik
Music
gem_collect
Sound effect
happy_giggle
Sound effect
Canazalma
Sound effect
Arkaplanmuzik1
Music
wumpa1
Sound effect
cancan
Sound effect
box_break
Sound effect
tnt_break
Sound effect
enemy_sound
Sound effect
bullet_sound
Sound effect