User prompt
Has una animación a los botones: derecha, izquierda,correr, saltar ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Has que los botones sean más fáciles de tocar osea más grandes la hitbox
User prompt
Agranda los botones y añade el botón de correr
User prompt
Has que cuando el personaje camine la animacion sea mas lenta ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Has una animación para cuando el jugador camina ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Hasme una animación para el jugador de: caída, salto, y estático ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Has que la música suene en el juego
User prompt
Has que cuando el jugador agarre el power up de caída lenta le aparezca un paracaídas más grande que el jugador ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Has que si el personaje va a la derecha se voltee el Sprite a la derecha y si va a la izquierda se voltee hacia la izquierda
User prompt
Please fix the bug: 'ReferenceError: tween is not defined' in or related to this line: 'tween(powerupGraphics, {' Line Number: 223 ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Hasme un power up de caída lenta ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
Has que el power up de salto tenga una probabilidad del 7% de probabilidad en cada plataforma
User prompt
Añade un power up para que tengas más poder de salto
User prompt
Has que estén ramdomizados las plataformas
User prompt
Has que las plataformas no aparezcan en el mismo lado en todos los niveles
User prompt
Numera las plataformas del uno al 15 y cuando llegues al 15 pases de nivel, hasme que cuando pases de la cámara la camara te siga
User prompt
Has que cuando llegues al la última plataforma pases de nivel
User prompt
Has que cuando llegues al último bloque pases al siguiente nivel
User prompt
Has que el jugador sea más grande y tenga una hitbox más grande
User prompt
Has el nivel más largo
User prompt
Has que camine más rápido
User prompt
Has que salte menos
User prompt
No salta
User prompt
Has que salte más
User prompt
El jugador no puede saltar al parecer salta muy poco
/**** * Classes ****/ var ControlButton = Container.expand(function (type) { var self = Container.call(this); self.buttonType = type; self.isPressed = false; var buttonGraphics; if (type === 'jump') { buttonGraphics = self.attachAsset('jumpButton', { anchorX: 0.5, anchorY: 0.5 }); } else { buttonGraphics = self.attachAsset(type === 'left' ? 'leftButton' : 'rightButton', { anchorX: 0.5, anchorY: 0.5 }); } self.down = function (x, y, obj) { self.isPressed = true; buttonGraphics.alpha = 0.7; }; self.up = function (x, y, obj) { self.isPressed = false; buttonGraphics.alpha = 1.0; }; return self; }); var Platform = Container.expand(function (width, height) { var self = Container.call(this); self.platformWidth = width || 300; self.platformHeight = height || 40; var platformGraphics = self.attachAsset('platform', { anchorX: 0.5, anchorY: 0.5, scaleX: self.platformWidth / 300, scaleY: self.platformHeight / 40 }); return self; }); var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 1.0 }); self.velocityX = 0; self.velocityY = 0; self.speed = 8; self.jumpPower = 50; self.gravity = 0.8; self.onGround = false; self.maxFallSpeed = 15; self.moveLeft = function () { self.velocityX = -self.speed; }; self.moveRight = function () { self.velocityX = self.speed; }; self.jump = function () { if (self.onGround) { self.velocityY = -self.jumpPower; self.onGround = false; } }; self.stopHorizontalMovement = function () { self.velocityX = 0; }; self.update = function () { // Apply gravity self.velocityY += self.gravity; // Limit fall speed if (self.velocityY > self.maxFallSpeed) { self.velocityY = self.maxFallSpeed; } // Update position self.x += self.velocityX; self.y += self.velocityY; // Keep player within screen bounds horizontally if (self.x < 60) { self.x = 60; } if (self.x > 1988) { self.x = 1988; } // Reset onGround flag self.onGround = false; }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87ceeb }); /**** * Game Code ****/ var player = game.addChild(new Player()); player.x = 1024; player.y = 2500; var platforms = []; var ground = game.addChild(LK.getAsset('ground', { anchorX: 0.5, anchorY: 1.0 })); ground.x = 1024; ground.y = 2732; // Create platforms var platformData = [{ x: 400, y: 2400, width: 200 }, { x: 800, y: 2200, width: 250 }, { x: 1200, y: 2000, width: 200 }, { x: 600, y: 1800, width: 300 }, { x: 1400, y: 1600, width: 200 }, { x: 300, y: 1400, width: 250 }, { x: 1000, y: 1200, width: 300 }, { x: 1600, y: 1000, width: 200 }]; for (var i = 0; i < platformData.length; i++) { var platformInfo = platformData[i]; var platform = game.addChild(new Platform(platformInfo.width)); platform.x = platformInfo.x; platform.y = platformInfo.y; platforms.push(platform); } // Control buttons var leftButton = LK.gui.bottomLeft.addChild(new ControlButton('left')); leftButton.x = 80; leftButton.y = -80; var rightButton = LK.gui.bottomLeft.addChild(new ControlButton('right')); rightButton.x = 220; rightButton.y = -80; var jumpButton = LK.gui.bottomRight.addChild(new ControlButton('jump')); jumpButton.x = -80; jumpButton.y = -80; // Control button labels var leftLabel = new Text2('←', { size: 60, fill: 0xFFFFFF }); leftLabel.anchor.set(0.5, 0.5); leftButton.addChild(leftLabel); var rightLabel = new Text2('→', { size: 60, fill: 0xFFFFFF }); rightLabel.anchor.set(0.5, 0.5); rightButton.addChild(rightLabel); var jumpLabel = new Text2('↑', { size: 60, fill: 0xFFFFFF }); jumpLabel.anchor.set(0.5, 0.5); jumpButton.addChild(jumpLabel); function checkCollisions() { var playerBottom = player.y; var playerTop = player.y - 120; var playerLeft = player.x - 60; var playerRight = player.x + 60; // Check ground collision if (playerBottom >= ground.y - 50) { if (player.velocityY > 0) { player.y = ground.y - 50; player.velocityY = 0; player.onGround = true; } } // Check platform collisions for (var i = 0; i < platforms.length; i++) { var platform = platforms[i]; var platformLeft = platform.x - platform.platformWidth / 2; var platformRight = platform.x + platform.platformWidth / 2; var platformTop = platform.y - platform.platformHeight / 2; var platformBottom = platform.y + platform.platformHeight / 2; // Check if player is horizontally aligned with platform if (playerRight > platformLeft && playerLeft < platformRight) { // Check if player is falling onto platform from above if (player.velocityY > 0 && playerBottom >= platformTop && playerTop < platformTop) { player.y = platformTop; player.velocityY = 0; player.onGround = true; } } } } game.update = function () { // Check collisions first to set onGround flag checkCollisions(); // Handle input if (leftButton.isPressed) { player.moveLeft(); } else if (rightButton.isPressed) { player.moveRight(); } else { player.stopHorizontalMovement(); } if (jumpButton.isPressed) { player.jump(); } // Check if player fell off screen if (player.y > 2800) { // Reset player position player.x = 1024; player.y = 2500; player.velocityX = 0; player.velocityY = 0; } };
===================================================================
--- original.js
+++ change.js
@@ -211,8 +211,10 @@
}
}
}
game.update = function () {
+ // Check collisions first to set onGround flag
+ checkCollisions();
// Handle input
if (leftButton.isPressed) {
player.moveLeft();
} else if (rightButton.isPressed) {
@@ -222,10 +224,8 @@
}
if (jumpButton.isPressed) {
player.jump();
}
- // Check collisions
- checkCollisions();
// Check if player fell off screen
if (player.y > 2800) {
// Reset player position
player.x = 1024;
Poder de saltó. In-Game asset. 2d. High contrast. No shadows
Slow fall. In-Game asset. 2d. High contrast. No shadows
Paracaídas. In-Game asset. 2d. High contrast. No shadows
Flecha hacia la derecha. In-Game asset. 2d. High contrast. No shadows
Botas de super salto. In-Game asset. 2d. High contrast. No shadows
Cubo de slime con cara feliz. In-Game asset. 2d. High contrast. No shadows