User prompt
arka plandaki binalar zemin ve sokaklambalarına yakın olsun çok yukarıda olmasın eline sağlık çok güzel oldu
User prompt
sokak lambaları sabit kalsın karakterle beraber ilerlemesin her bir 25 metre olsun sokak lambaları arasında
User prompt
oyunun arka plan gece evler ve sokak lambaları havada karanlık olsun
User prompt
düşmanlar sağ sola hareketi olsun sabit kalmasın ↪💡 Consider importing and using the following plugins: @upit/tween.v1
Code edit (1 edits merged)
Please save this source code
User prompt
karakter ipe değdiği zaman ileriye doğru atlasın ve zemin sonradan oluşmasın ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
karakter hızı biraz artırılsın ve engeller aynı olmasın herhangi bir zeminin içerisinde çıkan engellerden olsun arka plan şah şahlı olsun farklı bir engel daha olsun bu engele karakter değdiğinde karaktere otomatik ip bağlansın ortada bir sallansın sallandıktan sonra harita değişikliği olsun ↪💡 Consider importing and using the following plugins: @upit/tween.v1
User prompt
yerdeki zemin sonradan oluşmasın sonsuza kadar var olsun karakter ölünce silinebilir
Code edit (1 edits merged)
Please save this source code
User prompt
Jump Runner
Initial prompt
bir oyun yapmak istiyorum bir karakterim var bu karakterim soldan başlayarak sağ doğru sabit bir hızla ilerliyor önüne engeller çıkıyor o engeller den zıplayarak kaçıyor ve engellerin dışında birde düşmanlar var bu düşmanlar sadece zıplarken başından vurulunca ölüyor
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ var Enemy = Container.expand(function () { var self = Container.call(this); var enemyGraphics = self.attachAsset('enemy', { anchorX: 0.5, anchorY: 1.0 }); self.speed = gameSpeed; self.isDefeated = false; self.defeat = function () { if (!self.isDefeated) { self.isDefeated = true; LK.getSound('defeat').play(); LK.setScore(LK.getScore() + 10); scoreTxt.setText(LK.getScore()); tween(self, { alpha: 0, scaleY: 0.3 }, { duration: 300 }); } }; self.update = function () { self.x -= self.speed; }; return self; }); var Ground = Container.expand(function () { var self = Container.call(this); var groundGraphics = self.attachAsset('ground', { anchorX: 0, anchorY: 0 }); self.speed = gameSpeed; self.update = function () { self.x -= self.speed; if (self.x <= -self.width) { self.x += self.width * 2; } }; return self; }); var Obstacle = Container.expand(function () { var self = Container.call(this); var obstacleGraphics = self.attachAsset('obstacle', { anchorX: 0.5, anchorY: 1.0 }); self.speed = gameSpeed; self.update = function () { self.x -= self.speed; }; return self; }); var Player = Container.expand(function () { var self = Container.call(this); var playerGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 1.0 }); self.velocityY = 0; self.isOnGround = false; self.jumpPower = -25; self.gravity = 1.2; self.groundY = 2500; self.jump = function () { if (self.isOnGround) { self.velocityY = self.jumpPower; self.isOnGround = false; LK.getSound('jump').play(); } }; self.update = function () { self.velocityY += self.gravity; self.y += self.velocityY; if (self.y >= self.groundY) { self.y = self.groundY; self.velocityY = 0; self.isOnGround = true; } }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87CEEB }); /**** * Game Code ****/ var gameSpeed = 8; var spawnTimer = 0; var speedIncreaseTimer = 0; var obstacles = []; var enemies = []; var groundPieces = []; // Create player var player = game.addChild(new Player()); player.x = 300; player.y = 2500; // Create ground for (var i = 0; i < 8; i++) { var groundPiece = game.addChild(new Ground()); groundPiece.x = i * 300; groundPiece.y = 2520; groundPieces.push(groundPiece); } // Create score display var scoreTxt = new Text2('0', { size: 80, fill: 0xFFFFFF }); scoreTxt.anchor.set(0.5, 0); LK.gui.top.addChild(scoreTxt); scoreTxt.y = 100; // Jump control game.down = function (x, y, obj) { player.jump(); }; function spawnObstacle() { var obstacle = new Obstacle(); obstacle.x = 2200; obstacle.y = 2500; obstacle.speed = gameSpeed; obstacles.push(obstacle); game.addChild(obstacle); } function spawnEnemy() { var enemy = new Enemy(); enemy.x = 2200; enemy.y = 2500; enemy.speed = gameSpeed; enemies.push(enemy); game.addChild(enemy); } function checkCollisions() { // Check obstacle collisions for (var i = obstacles.length - 1; i >= 0; i--) { var obstacle = obstacles[i]; if (player.intersects(obstacle)) { LK.getSound('hit').play(); LK.showGameOver(); return; } } // Check enemy collisions for (var j = enemies.length - 1; j >= 0; j--) { var enemy = enemies[j]; if (player.intersects(enemy) && !enemy.isDefeated) { if (player.velocityY > 0 && player.y < enemy.y - 30) { // Player is falling and above enemy - defeat enemy enemy.defeat(); player.velocityY = -15; // Small bounce } else { // Player hit enemy from side or below - game over LK.getSound('hit').play(); LK.showGameOver(); return; } } } } function updateGameSpeed() { gameSpeed += 0.003; // Update speed for all moving objects for (var i = 0; i < obstacles.length; i++) { obstacles[i].speed = gameSpeed; } for (var j = 0; j < enemies.length; j++) { enemies[j].speed = gameSpeed; } for (var k = 0; k < groundPieces.length; k++) { groundPieces[k].speed = gameSpeed; } } function cleanupObjects() { // Remove off-screen obstacles for (var i = obstacles.length - 1; i >= 0; i--) { if (obstacles[i].x < -100) { obstacles[i].destroy(); obstacles.splice(i, 1); } } // Remove off-screen enemies for (var j = enemies.length - 1; j >= 0; j--) { if (enemies[j].x < -100) { enemies[j].destroy(); enemies.splice(j, 1); } } } game.update = function () { // Spawn objects spawnTimer++; if (spawnTimer >= 90) { if (Math.random() < 0.6) { spawnObstacle(); } else { spawnEnemy(); } spawnTimer = 0; } // Increase game speed over time speedIncreaseTimer++; if (speedIncreaseTimer >= 300) { updateGameSpeed(); speedIncreaseTimer = 0; } // Update score based on survival time if (LK.ticks % 30 === 0) { LK.setScore(LK.getScore() + 1); scoreTxt.setText(LK.getScore()); } // Check collisions checkCollisions(); // Clean up off-screen objects cleanupObjects(); };
===================================================================
--- original.js
+++ change.js
@@ -1,6 +1,230 @@
-/****
+/****
+* Plugins
+****/
+var tween = LK.import("@upit/tween.v1");
+
+/****
+* Classes
+****/
+var Enemy = Container.expand(function () {
+ var self = Container.call(this);
+ var enemyGraphics = self.attachAsset('enemy', {
+ anchorX: 0.5,
+ anchorY: 1.0
+ });
+ self.speed = gameSpeed;
+ self.isDefeated = false;
+ self.defeat = function () {
+ if (!self.isDefeated) {
+ self.isDefeated = true;
+ LK.getSound('defeat').play();
+ LK.setScore(LK.getScore() + 10);
+ scoreTxt.setText(LK.getScore());
+ tween(self, {
+ alpha: 0,
+ scaleY: 0.3
+ }, {
+ duration: 300
+ });
+ }
+ };
+ self.update = function () {
+ self.x -= self.speed;
+ };
+ return self;
+});
+var Ground = Container.expand(function () {
+ var self = Container.call(this);
+ var groundGraphics = self.attachAsset('ground', {
+ anchorX: 0,
+ anchorY: 0
+ });
+ self.speed = gameSpeed;
+ self.update = function () {
+ self.x -= self.speed;
+ if (self.x <= -self.width) {
+ self.x += self.width * 2;
+ }
+ };
+ return self;
+});
+var Obstacle = Container.expand(function () {
+ var self = Container.call(this);
+ var obstacleGraphics = self.attachAsset('obstacle', {
+ anchorX: 0.5,
+ anchorY: 1.0
+ });
+ self.speed = gameSpeed;
+ self.update = function () {
+ self.x -= self.speed;
+ };
+ return self;
+});
+var Player = Container.expand(function () {
+ var self = Container.call(this);
+ var playerGraphics = self.attachAsset('player', {
+ anchorX: 0.5,
+ anchorY: 1.0
+ });
+ self.velocityY = 0;
+ self.isOnGround = false;
+ self.jumpPower = -25;
+ self.gravity = 1.2;
+ self.groundY = 2500;
+ self.jump = function () {
+ if (self.isOnGround) {
+ self.velocityY = self.jumpPower;
+ self.isOnGround = false;
+ LK.getSound('jump').play();
+ }
+ };
+ self.update = function () {
+ self.velocityY += self.gravity;
+ self.y += self.velocityY;
+ if (self.y >= self.groundY) {
+ self.y = self.groundY;
+ self.velocityY = 0;
+ self.isOnGround = true;
+ }
+ };
+ return self;
+});
+
+/****
* Initialize Game
-****/
+****/
var game = new LK.Game({
- backgroundColor: 0x000000
-});
\ No newline at end of file
+ backgroundColor: 0x87CEEB
+});
+
+/****
+* Game Code
+****/
+var gameSpeed = 8;
+var spawnTimer = 0;
+var speedIncreaseTimer = 0;
+var obstacles = [];
+var enemies = [];
+var groundPieces = [];
+// Create player
+var player = game.addChild(new Player());
+player.x = 300;
+player.y = 2500;
+// Create ground
+for (var i = 0; i < 8; i++) {
+ var groundPiece = game.addChild(new Ground());
+ groundPiece.x = i * 300;
+ groundPiece.y = 2520;
+ groundPieces.push(groundPiece);
+}
+// Create score display
+var scoreTxt = new Text2('0', {
+ size: 80,
+ fill: 0xFFFFFF
+});
+scoreTxt.anchor.set(0.5, 0);
+LK.gui.top.addChild(scoreTxt);
+scoreTxt.y = 100;
+// Jump control
+game.down = function (x, y, obj) {
+ player.jump();
+};
+function spawnObstacle() {
+ var obstacle = new Obstacle();
+ obstacle.x = 2200;
+ obstacle.y = 2500;
+ obstacle.speed = gameSpeed;
+ obstacles.push(obstacle);
+ game.addChild(obstacle);
+}
+function spawnEnemy() {
+ var enemy = new Enemy();
+ enemy.x = 2200;
+ enemy.y = 2500;
+ enemy.speed = gameSpeed;
+ enemies.push(enemy);
+ game.addChild(enemy);
+}
+function checkCollisions() {
+ // Check obstacle collisions
+ for (var i = obstacles.length - 1; i >= 0; i--) {
+ var obstacle = obstacles[i];
+ if (player.intersects(obstacle)) {
+ LK.getSound('hit').play();
+ LK.showGameOver();
+ return;
+ }
+ }
+ // Check enemy collisions
+ for (var j = enemies.length - 1; j >= 0; j--) {
+ var enemy = enemies[j];
+ if (player.intersects(enemy) && !enemy.isDefeated) {
+ if (player.velocityY > 0 && player.y < enemy.y - 30) {
+ // Player is falling and above enemy - defeat enemy
+ enemy.defeat();
+ player.velocityY = -15; // Small bounce
+ } else {
+ // Player hit enemy from side or below - game over
+ LK.getSound('hit').play();
+ LK.showGameOver();
+ return;
+ }
+ }
+ }
+}
+function updateGameSpeed() {
+ gameSpeed += 0.003;
+ // Update speed for all moving objects
+ for (var i = 0; i < obstacles.length; i++) {
+ obstacles[i].speed = gameSpeed;
+ }
+ for (var j = 0; j < enemies.length; j++) {
+ enemies[j].speed = gameSpeed;
+ }
+ for (var k = 0; k < groundPieces.length; k++) {
+ groundPieces[k].speed = gameSpeed;
+ }
+}
+function cleanupObjects() {
+ // Remove off-screen obstacles
+ for (var i = obstacles.length - 1; i >= 0; i--) {
+ if (obstacles[i].x < -100) {
+ obstacles[i].destroy();
+ obstacles.splice(i, 1);
+ }
+ }
+ // Remove off-screen enemies
+ for (var j = enemies.length - 1; j >= 0; j--) {
+ if (enemies[j].x < -100) {
+ enemies[j].destroy();
+ enemies.splice(j, 1);
+ }
+ }
+}
+game.update = function () {
+ // Spawn objects
+ spawnTimer++;
+ if (spawnTimer >= 90) {
+ if (Math.random() < 0.6) {
+ spawnObstacle();
+ } else {
+ spawnEnemy();
+ }
+ spawnTimer = 0;
+ }
+ // Increase game speed over time
+ speedIncreaseTimer++;
+ if (speedIncreaseTimer >= 300) {
+ updateGameSpeed();
+ speedIncreaseTimer = 0;
+ }
+ // Update score based on survival time
+ if (LK.ticks % 30 === 0) {
+ LK.setScore(LK.getScore() + 1);
+ scoreTxt.setText(LK.getScore());
+ }
+ // Check collisions
+ checkCollisions();
+ // Clean up off-screen objects
+ cleanupObjects();
+};
\ No newline at end of file
yuvarlak ve başında siyah bandanası var . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
bir tahta etrafında bıçakları olan bir tahta . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
evler olsun ve sokak lambaları olsun ve hava karanlık olsun . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
güzel bir sokak direği . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
zemin beton zemini olsun ve yanındaki sarı çizgiler düz olsun
kafasında kırmızı bir bandana olan bir sporcu . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat