User prompt
Puan 5 olduğunda 'srk' oynatmaya başla
User prompt
Başladığında bir saniyede 3 hamle yaptır otomatik
User prompt
En fazla 4 tane oyuncu resmi oluşturulur
User prompt
Play music
User prompt
'______________________________________________________.mp3' oyun başlayınca otomatik oynat
User prompt
Skor yazılı resimleri kaldır
User prompt
'srk' müzik dosyasını karakterimiz hareket edince başlat
User prompt
Oyun başladığında 'srk' mizik dosyasını başlat
User prompt
Arkaplan sonsuz döngü şeklinde sola doğru kayıp sağdan tekrar devam etsin
User prompt
İlk 4 hamle
User prompt
İlk 5 hamle
User prompt
İlk 2 hamle 1 saniye içinde otomatik şekilde hapılsın
User prompt
Düşmanlarımızın her bir dakikada bir sayısı artsın
User prompt
Düşmanlarımız 50 puandan sonra iki katına çıksın
User prompt
Karakterimiz sahnenin sağ uzun kenarına kadar hamle yapabilir
User prompt
Karakterimiz sahnenin sağ kenarına kadar ilerleyebilir ama dışına çıkamaz
User prompt
Karakterimizi saniyede 14 birim sola çekilir
User prompt
Karakterimiz sahnenin sağ kenarına kadar ilerleyebilir
User prompt
Rastgele noktalarda eşit yoğunlukta
User prompt
'yaprak' resimleri daha çok orta noktada spawn olsunlar
User prompt
'cicek' resmi oluştuğunda artı 5 puqn
User prompt
Daha az sayıda
User prompt
Farklı hızlarda
User prompt
Sallansınlar
User prompt
Rastgele noktalarda 'yaprak' resmini koy ve bu resimler aşağıya doğru hareket etsinler
/**** * Classes ****/ // Initialize storage object // Define a class for enemies var Enemy = Container.expand(function () { var self = Container.call(this); var enemyGraphics = self.attachAsset('enemy', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 5; self.update = function () { self.x -= self.speed; self.y += Math.sin(self.x / 100) * 10; if (self.x < -50) { self.destroy(); } // Check for intersection with Oyuncu and remove it if detected within a reduced range game.children.forEach(function (child) { if (child instanceof Oyuncu && self.intersects(child) && Math.abs(self.x - child.x) < 30 && Math.abs(self.y - child.y) < 30) { child.destroy(); } }); }; }); var Leaf = Container.expand(function () { var self = Container.call(this); var leafGraphics = self.attachAsset('yaprak', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 2 + Math.random() * 3; // Random speed between 2 and 5 self.update = function () { self.y += self.speed; self.speed = 2 + Math.random() * 3; // Random speed between 2 and 5 self.x += Math.sin(LK.ticks / 20) * 2; // Add swaying motion if (self.y > 2732) { self.destroy(); } }; }); // Define a class for the Oyuncu character var Oyuncu = Container.expand(function () { var self = Container.call(this); var oyuncuGraphics = self.attachAsset('Oyuncu', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 7; self.jumpHeight = 20; self.isJumping = false; self.velocityY = 0; self.update = function () { if (self.isJumping) { self.y += self.velocityY; self.velocityY += 0.7; if (self.y >= 2732 / 2) { self.y = 2732 / 2; self.isJumping = false; self.velocityY = 0; } } // Maintain a 10-unit distance from the player if (Math.abs(self.x - player.x) > 10) { self.x += (player.x > self.x ? 1 : -1) * self.speed; } else if (Math.abs(self.x - player.x) < 10) { self.x = player.x + (player.x > self.x ? -10 : 10); } if (Math.abs(self.y - player.y) > 10) { self.y += (player.y > self.y ? 1 : -1) * self.speed; } else if (Math.abs(self.y - player.y) < 10) { self.y = player.y + (player.y > self.y ? -10 : 10); } }; self.jump = function () { self.isJumping = true; self.velocityY = -self.jumpHeight; }; }); //<Assets used in the game will automatically appear here> // Define a class for the player character var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 5; self.jumpHeight = 20; self.isJumping = false; self.velocityY = 0; self.update = function () { // Move the player 10 units to the left every second if (LK.ticks % 60 === 0) { // 60 ticks per second self.x -= 10; } if (self.isJumping) { self.y += self.velocityY; self.velocityY += 0.7; // Decreased gravity effect by 30% if (self.y >= 2732 / 2) { // Ground level self.y = 2732 / 2; self.isJumping = false; self.velocityY = 0; } } // Move the player diagonally to the middle of the stage in the first move if (self.x < 2048 / 2 && self.y < 2732 / 2) { self.x += self.speed; self.y += self.speed; LK.getSound('arkplan').play(); // Play background sound when moving } else if (!self.isJumping) { if (self.x > 30 && self.x <= 2048 - self.width) { self.x -= 4; } } // End the game if the player touches the edges of the background if (self.x <= 0 || self.x >= 2048 - self.width || self.y <= 0 || self.y >= 2732 - self.height) { LK.effects.flashScreen(0xff0000, 1000); // Flash screen red LK.showGameOver(); // Show game over screen return; // End the game } }; self.jump = function () { self.isJumping = true; self.velocityY = -self.jumpHeight; LK.getSound('Player').play(); }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 // Black background }); /**** * Game Code ****/ // Initialize background var storage = {}; var background = game.addChild(LK.getAsset('arkplan', { anchorX: 0.0, anchorY: 0.0, scaleX: 2048 / 100, scaleY: 2732 / 100, x: 0, y: 0 })); // Initialize player var player = game.addChild(new Player()); player.x = 200; player.y = 2732 - player.height - 150; // Automatically make the first four moves within two seconds of game start LK.setTimeout(function () { player.jump(); // First move LK.setTimeout(function () { player.jump(); // Second move LK.setTimeout(function () { player.jump(); // Third move LK.setTimeout(function () { player.jump(); // Fourth move }, 500); // Fourth move after 0.5 seconds }, 500); // Third move after 0.5 seconds }, 500); // Second move after 0.5 seconds }, 500); // First move after 0.5 seconds // Initialize enemies var enemies = []; var enemySpawnInterval = 100; var enemySpawnCounter = 0; // Import storage plugin // Load score from storage or initialize to 0 var currentScore = storage.score || 0; // Create a new Text2 object to display the score var scoreText = new Text2(currentScore.toString(), { size: 250, fill: 0xFFFFFF, font: "bold" }); // Add the score text to the game GUI at the top-right corner of the screen LK.gui.topRight.addChild(scoreText); scoreText.anchor.set(1, 0); // Anchor to the top-right corner scoreText.x = 0; // Positioned at the right edge scoreText.y = 0; // Positioned at the top edge // Handle game updates game.update = function () { player.update(); // Increase the number of enemies every minute if (LK.ticks % 3600 === 0) { // 60 ticks per second * 60 seconds = 3600 ticks per minute var additionalEnemy = new Enemy(); additionalEnemy.x = 2048; additionalEnemy.y = Math.random() * (2732 / 2); enemies.push(additionalEnemy); game.addChild(additionalEnemy); } // Spawn leaves if (LK.ticks % 120 === 0) { // Every second var leaf = new Leaf(); leaf.x = Math.random() * 2048; // Random x position across the screen leaf.y = -50; // Start above the screen game.addChild(leaf); } // Spawn enemies enemySpawnCounter++; if (enemySpawnCounter >= enemySpawnInterval) { var enemy = new Enemy(); enemy.x = 2048; enemy.y = Math.random() * (2732 / 2); enemies.push(enemy); game.addChild(enemy); // Decrease the spawn interval for the next enemy every 10 seconds if (LK.ticks % 600 == 0 && enemySpawnInterval > 10) { enemySpawnInterval -= 10; } enemySpawnCounter = 0; } // Update enemies for (var j = enemies.length - 1; j >= 0; j--) { enemies[j].update(); if (player.intersects(enemies[j]) && Math.abs(player.x - enemies[j].x) < 50 && Math.abs(player.y - enemies[j].y) < 50) { LK.effects.flashScreen(0xff0000, 1000); LK.showGameOver(); return; } else if (player.x > enemies[j].x && !enemies[j].passed) { enemies[j].passed = true; LK.setScore(LK.getScore() + 1); var currentScore = LK.getScore(); storage.score = currentScore; // Save score to storage scoreText.setText(currentScore.toString()); // Update the score text display var scoreAssetId = 'Skor' + currentScore; if (currentScore % 9 === 0) { var cicekAsset = game.addChild(LK.getAsset('cicek', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 2 })); LK.setScore(LK.getScore() + 5); // Add 5 points to the score scoreText.setText(LK.getScore().toString()); // Update the score text display LK.setTimeout(function () { cicekAsset.destroy(); }, 1000); // Add 'oyuncu' image to the bottom-left corner var oyuncu = game.addChild(new Oyuncu()); oyuncu.x = player.x + 10; oyuncu.y = player.y; } // Removed score reset logic to ensure the scoreboard does not reset to zero if (currentScore <= 9) { game.children.forEach(function (child) { if (child.assetId && child.assetId.startsWith('Skor')) { child.destroy(); } }); var scoreAsset = game.addChild(LK.getAsset(scoreAssetId, { anchorX: 0.5, anchorY: 1.0, x: 2048 / 2, y: 2732 })); LK.setTimeout(function () { scoreAsset.destroy(); }, 1000); } else { scoreText.setText(currentScore); } } } }; // Handle player jump game.down = function (x, y, obj) { player.jump(); };
===================================================================
--- original.js
+++ change.js
@@ -153,20 +153,17 @@
// Initialize player
var player = game.addChild(new Player());
player.x = 200;
player.y = 2732 - player.height - 150;
-// Automatically make the first five moves within two and a half seconds of game start
+// Automatically make the first four moves within two seconds of game start
LK.setTimeout(function () {
player.jump(); // First move
LK.setTimeout(function () {
player.jump(); // Second move
LK.setTimeout(function () {
player.jump(); // Third move
LK.setTimeout(function () {
player.jump(); // Fourth move
- LK.setTimeout(function () {
- player.jump(); // Fifth move
- }, 500); // Fifth move after 0.5 seconds
}, 500); // Fourth move after 0.5 seconds
}, 500); // Third move after 0.5 seconds
}, 500); // Second move after 0.5 seconds
}, 500); // First move after 0.5 seconds