User prompt
add another run frame for the palyer
User prompt
maje player run continusly by switching running frames
User prompt
Make player switch between the normal and run frames to create a running animation automaticly and forever
User prompt
make player run automaticly
User prompt
make player always run
User prompt
ajoute 2 frames pour le player dans le jeu pour faire une animation de course
Code edit (1 edits merged)
Please save this source code
User prompt
play bg music all the game
User prompt
use jump sound when jumping
User prompt
Make that I can die also when Im not jumping and touch him
User prompt
fait que si je saute SUR enemy, il s'écrase et disparait mais si je le touche pas par dessus je meurs.
User prompt
masque l'asset player lors du saut
User prompt
simplifie la gestion du saut dans le update
User prompt
simplifie la fonction de saut
Code edit (1 edits merged)
Please save this source code
User prompt
dans player crée playerJumpFrame dès le départ en invisible et change sa visibilitée lors du saut, au lieu de la recrée
User prompt
Set player's alpha to 0 and playerJumpFrame to 1 when clicking
User prompt
Set player's alpha to 0 and playerJumpFrame to 1 when clicking
User prompt
when clicking, set player's alpha to 0 and playerJumpFrame to 1
User prompt
when clicking, set alpha of player to 0
User prompt
when clicking, set alpha of playerJumpFrame to 1
User prompt
when clicking, set alpha of playerJumpFrame to 100
User prompt
hide playerJumpFrame
User prompt
Hide playerJumpFrame 1 second after player jumped
User prompt
Hide playerJumpFrame 1 second after player jumped
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ // 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; if (self.x < -50) { self.destroy(); } }; }); //<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 = 30; self.isJumping = false; self.velocityY = 0; self.jumpFrame = 0; // Add jump frame self.update = function () { 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; self.jumpFrame = 0; // Reset jump frame // Add a bounce effect tween(self, { scaleX: 1.2, scaleY: 0.8 }, { duration: 100, easing: tween.elasticOut, onFinish: function onFinish() { tween(self, { scaleX: 1, scaleY: 1 }, { duration: 500, easing: tween.elasticOut }); } }); } else { // While jumping, switch to the jump frame var jumpFrameGraphics = self.attachAsset('playerJumpFrame', { anchorX: 0.5, anchorY: 0.5, alpha: 0 // Hide the jump frame by setting alpha to 0 }); } } else { // When not jumping, switch back to the normal frame self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); } }; self.jump = function () { if (!self.isJumping) { self.isJumping = true; self.velocityY = -self.jumpHeight; self.jumpFrame++; // Increment jump frame } }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87CEEB // Sky blue background }); /**** * Game Code ****/ // Import the tween plugin var background = game.addChild(LK.getAsset('background', { anchorX: 0, anchorY: 0 })); background.x = 0; background.y = 0; // Initialize player var player = game.addChild(new Player()); player.x = 2048 / 2; player.y = 2732 / 2; // Initialize enemies var enemies = []; var enemySpawnInterval = 100; var enemySpawnCounter = 0; // Create a new Text2 object to display the score var scoreText = new Text2('0', { size: 100, fill: 0xFFFFFF }); // Add the score text to the game GUI at the top center of the screen LK.gui.top.addChild(scoreText); scoreText.x = 2048 / 2; scoreText.y = 0; // Handle game updates game.update = function () { player.update(); // Spawn enemies enemySpawnCounter++; if (enemySpawnCounter >= enemySpawnInterval) { var enemy = new Enemy(); enemy.x = 2048; enemy.y = 2732 / 2; enemies.push(enemy); game.addChild(enemy); // Randomize the spawn interval for the next enemy enemySpawnInterval = Math.floor(Math.random() * 150) + 50; enemySpawnCounter = 0; } // Update enemies for (var j = enemies.length - 1; j >= 0; j--) { enemies[j].update(); if (player.intersects(enemies[j])) { LK.effects.flashScreen(0xff0000, 1000); LK.showGameOver(); } else if (player.x > enemies[j].x && !enemies[j].passed) { enemies[j].passed = true; LK.setScore(LK.getScore() + 1); scoreText.setText(LK.getScore()); } } }; // Handle player jump game.down = function (x, y, obj) { player.jump(); var jumpFrameGraphics = player.attachAsset('playerJumpFrame', { anchorX: 0.5, anchorY: 0.5, alpha: 1 // Set the jump frame alpha to 1 }); };
===================================================================
--- original.js
+++ change.js
@@ -150,5 +150,10 @@
};
// Handle player jump
game.down = function (x, y, obj) {
player.jump();
+ var jumpFrameGraphics = player.attachAsset('playerJumpFrame', {
+ anchorX: 0.5,
+ anchorY: 0.5,
+ alpha: 1 // Set the jump frame alpha to 1
+ });
};
\ No newline at end of file