User prompt
oyunda uzaylılar olsun silahımızla onları vurup yok edelim
User prompt
oyunda trambolin olsun ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
bir silahımız olsun
User prompt
karakter sürekli zıplasın
User prompt
150 coine ulaşınca bravo yazan bir tabele çıksın
User prompt
oyuna coin getir
User prompt
basılı tutma olsun
User prompt
sağa sola gidişatının hızını çok az azalt ve kayma olmasın
User prompt
sağa sola gidiş hızını arttır zıplamasını azalt
User prompt
zıplamasını 2 kat arttır
User prompt
sağa sola gitsin
Code edit (1 edits merged)
Please save this source code
User prompt
Dude Jump
Initial prompt
bana dule jump yap
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ var Dude = Container.expand(function () { var self = Container.call(this); var dudeGraphics = self.attachAsset('dude', { anchorX: 0.5, anchorY: 0.5 }); self.velocityY = 0; self.velocityX = 0; self.isJumping = false; self.isOnPlatform = false; self.jumpPower = 50; self.gravity = 0.8; self.maxFallSpeed = 15; self.horizontalSpeed = 8; self.airResistance = 0.95; self.invincible = false; self.invincibleTimer = 0; self.jump = function () { if (self.isOnPlatform) { self.velocityY = -self.jumpPower; self.isJumping = true; self.isOnPlatform = false; LK.getSound('jump').play(); } }; self.update = function () { // Apply gravity self.velocityY += self.gravity; if (self.velocityY > self.maxFallSpeed) { self.velocityY = self.maxFallSpeed; } // Update position self.y += self.velocityY; self.x += self.velocityX; // Apply air resistance to horizontal movement self.velocityX *= self.airResistance; // Handle invincibility timer if (self.invincible) { self.invincibleTimer--; if (self.invincibleTimer <= 0) { self.invincible = false; dudeGraphics.alpha = 1; } else { dudeGraphics.alpha = Math.sin(self.invincibleTimer * 0.3) * 0.5 + 0.5; } } // Keep dude on screen horizontally if (self.x < 40) self.x = 40; if (self.x > 2008) self.x = 2008; // Check if fallen off screen if (self.y > cameraY + 2732 + 200) { LK.showGameOver(); } }; return self; }); var Platform = Container.expand(function (type) { var self = Container.call(this); self.type = type || 'normal'; self.landed = false; self.disappearing = false; self.moveDirection = 1; self.moveRange = 300; self.startX = 0; var platformGraphics; if (self.type === 'moving') { platformGraphics = self.attachAsset('movingPlatform', { anchorX: 0.5, anchorY: 0.5 }); } else if (self.type === 'disappearing') { platformGraphics = self.attachAsset('disappearingPlatform', { anchorX: 0.5, anchorY: 0.5 }); } else if (self.type === 'powerup') { platformGraphics = self.attachAsset('powerUpPlatform', { anchorX: 0.5, anchorY: 0.5 }); } else { platformGraphics = self.attachAsset('platform', { anchorX: 0.5, anchorY: 0.5 }); } self.update = function () { // Moving platform behavior if (self.type === 'moving') { self.x += self.moveDirection * 2; if (self.x > self.startX + self.moveRange || self.x < self.startX - self.moveRange) { self.moveDirection *= -1; } } // Disappearing platform behavior if (self.type === 'disappearing' && self.landed && !self.disappearing) { self.disappearing = true; tween(platformGraphics, { alpha: 0 }, { duration: 1000, onFinish: function onFinish() { self.active = false; } }); } }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87ceeb }); /**** * Game Code ****/ var dude = game.addChild(new Dude()); var platforms = []; var cameraY = 0; var highestY = 2400; var lastPlatformY = 2400; var platformSpacing = 200; // Create score display var scoreTxt = new Text2('0', { size: 60, fill: 0xFFFFFF }); scoreTxt.anchor.set(0.5, 0); LK.gui.top.addChild(scoreTxt); // Create height display var heightTxt = new Text2('Height: 0m', { size: 40, fill: 0xFFFFFF }); heightTxt.anchor.set(1, 0); heightTxt.x = -20; heightTxt.y = 20; LK.gui.topRight.addChild(heightTxt); // Initialize dude position dude.x = 1024; dude.y = 2400; // Create initial platforms function createPlatform(x, y, type) { var platform = new Platform(type); platform.x = x; platform.y = y; platform.startX = x; platform.active = true; platforms.push(platform); game.addChild(platform); return platform; } // Create starting platform createPlatform(1024, 2450, 'normal'); // Generate initial platforms for (var i = 0; i < 20; i++) { generateNextPlatform(); } function generateNextPlatform() { lastPlatformY -= platformSpacing + Math.random() * 100; var x = 200 + Math.random() * 1648; // Determine platform type based on height var type = 'normal'; var height = Math.abs(lastPlatformY - 2400); if (height > 1000) { var rand = Math.random(); if (rand < 0.3) { type = 'moving'; } else if (rand < 0.5) { type = 'disappearing'; } else if (rand < 0.6) { type = 'powerup'; } } createPlatform(x, lastPlatformY, type); } function updateCamera() { var targetY = dude.y - 1800; if (targetY < cameraY) { cameraY = targetY; game.y = -cameraY; // Update highest position if (dude.y < highestY) { highestY = dude.y; var height = Math.floor((2400 - highestY) / 10); LK.setScore(height); scoreTxt.setText(LK.getScore()); heightTxt.setText('Height: ' + height + 'm'); } } } function checkPlatformCollisions() { if (dude.velocityY <= 0) return; // Only check when falling for (var i = 0; i < platforms.length; i++) { var platform = platforms[i]; if (!platform.active) continue; var dudeBottom = dude.y + 40; var platformTop = platform.y - 15; var platformBottom = platform.y + 15; if (dudeBottom >= platformTop && dudeBottom <= platformBottom + 20) { if (dude.x >= platform.x - 100 && dude.x <= platform.x + 100) { // Landing on platform dude.y = platformTop - 40; dude.velocityY = 0; dude.isOnPlatform = true; dude.isJumping = false; if (!platform.landed) { platform.landed = true; LK.getSound('land').play(); // Handle special platform effects if (platform.type === 'powerup') { dude.invincible = true; dude.invincibleTimer = 300; dude.jumpPower = 70; LK.getSound('powerup').play(); // Reset jump power after time LK.setTimeout(function () { dude.jumpPower = 50; }, 3000); } } break; } } } } function cleanupPlatforms() { for (var i = platforms.length - 1; i >= 0; i--) { var platform = platforms[i]; if (platform.y > cameraY + 3000 || !platform.active) { platform.destroy(); platforms.splice(i, 1); } } } function generateMorePlatforms() { while (lastPlatformY > cameraY - 1000) { generateNextPlatform(); } } // Touch controls game.down = function (x, y, obj) { dude.jump(); // Add horizontal movement based on touch position var screenCenter = 1024; // Half of 2048 var touchOffset = x - screenCenter; // Apply horizontal velocity based on touch position if (touchOffset > 50) { // Touch on right side - move right dude.velocityX += dude.horizontalSpeed; } else if (touchOffset < -50) { // Touch on left side - move left dude.velocityX -= dude.horizontalSpeed; } }; // Main game loop game.update = function () { updateCamera(); checkPlatformCollisions(); cleanupPlatforms(); generateMorePlatforms(); // Remove platforms that are too far down if (LK.ticks % 60 === 0) { cleanupPlatforms(); } };
===================================================================
--- original.js
+++ change.js
@@ -15,9 +15,9 @@
self.velocityY = 0;
self.velocityX = 0;
self.isJumping = false;
self.isOnPlatform = false;
- self.jumpPower = 25;
+ self.jumpPower = 50;
self.gravity = 0.8;
self.maxFallSpeed = 15;
self.horizontalSpeed = 8;
self.airResistance = 0.95;
@@ -222,13 +222,13 @@
// Handle special platform effects
if (platform.type === 'powerup') {
dude.invincible = true;
dude.invincibleTimer = 300;
- dude.jumpPower = 35;
+ dude.jumpPower = 70;
LK.getSound('powerup').play();
// Reset jump power after time
LK.setTimeout(function () {
- dude.jumpPower = 25;
+ dude.jumpPower = 50;
}, 3000);
}
}
break;
bir sevimli gülen yüzlü uzaylı. In-Game asset. 2d. High contrast. No shadows
coin. In-Game asset. 2d. High contrast. No shadows
trambolin. In-Game asset. 2d. High contrast. No shadows
çirkin korkutucu uzaylı. In-Game asset. 2d. High contrast. No shadows
kalp. In-Game asset. 2d. High contrast. No shadows
bir düğme ama içinde kurukafa .işareti olsun şeffaf. In-Game asset. 2d. High contrast. No shadows
platform. In-Game asset. 2d. High contrast. No shadows
güç platformu. In-Game asset. 2d. High contrast. No shadows
yuvarlak yeşil top. In-Game asset. 2d. High contrast. No shadows
sevimli bana yardım edin diyen bir uzaylı. In-Game asset. 2d. High contrast. No shadows
ufo. In-Game asset. 2d. High contrast. No shadows