User prompt
oyun adını galaxy destroyer olarak değiştir
User prompt
bu yaptığım oyunu sayfama kaydet ↪💡 Consider importing and using the following plugins: @upit/storage.v1
User prompt
1 adet dönerek gelen uzay gemisi var onu kaldır
User prompt
gezengenler arka planda sadece birer adet görünsün
User prompt
arka plana gök cisimleri ekle örneğin gök taşı gibi
User prompt
düşman gemleri görüntüsünü güç_arttırma_hızlı_ateş adındaki görüntü ile değiştir
User prompt
ana karakterin görüntüsünü uzaygemisi adlı görüntü ile değiştir
User prompt
oyunun belirli noktalarında büyük boss düşman gelsin
User prompt
arka plana gezegenleride ekle onlarda yıldızlar gibi gidip gelsin
User prompt
oyunu kazanma score 100000 olsun
User prompt
her 250 score dan sonra +30 can veren can bonusları gelsin
User prompt
500 score dan sonra düman gemiler çok zorlu olmaya başlasın
User prompt
her 150 score dan sonra düşman gemilerin zorluk seviyesi artsın
User prompt
bonuslar hem ateş sayısını arttırsın hemde tek seferde ki ateş sayısınıda arttırsın
User prompt
uzay gemilerinin ateş gücünü arttıracak bonuslar olsun oyunda
User prompt
uzay gemileri daha hızlı ateş etsin
User prompt
uzay gemileri gerçek uzay gemisine benzesin
User prompt
bana uzay gemisi savaşı tarzı bir oyun yazabilirmisin
User prompt
başarılı olmadı her şeyi unut bana kafa topu oyununa benzer bir oyun yap
User prompt
başarılı olmadı tekrar denermisin ve harşta daha yüksek görselli olsun
Code edit (1 edits merged)
Please save this source code
User prompt
Super Jump Adventure
Initial prompt
bana süper mario benzeri 1 levellik bir oyun yaparmısın
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ var Coin = Container.expand(function () { var self = Container.call(this); var graphics = self.attachAsset('coin', { anchorX: 0.5, anchorY: 0.5 }); self.collected = false; self.update = function () { if (!self.collected) { self.rotation += 0.1; if (self.intersects(player)) { self.collect(); } } }; self.collect = function () { if (!self.collected) { self.collected = true; LK.setScore(LK.getScore() + 10); scoreTxt.setText(LK.getScore()); LK.getSound('coin').play(); tween(self, { scaleX: 0, scaleY: 0, alpha: 0 }, { duration: 300, onFinish: function onFinish() { self.destroy(); } }); } }; return self; }); var Enemy = Container.expand(function () { var self = Container.call(this); var graphics = self.attachAsset('enemy', { anchorX: 0.5, anchorY: 1.0 }); self.velocityX = -2; self.defeated = false; self.update = function () { if (!self.defeated) { self.x += self.velocityX; // Bounce off platforms if (self.x <= 100 || self.x >= 1948) { self.velocityX *= -1; } if (self.intersects(player)) { if (player.velocityY > 0 && player.y < self.y - 20) { // Player jumped on enemy self.defeat(); player.velocityY = -10; // Bounce player up } else { // Player touched enemy player.die(); } } } }; self.defeat = function () { if (!self.defeated) { self.defeated = true; LK.setScore(LK.getScore() + 50); scoreTxt.setText(LK.getScore()); LK.getSound('enemy_defeat').play(); tween(self, { scaleY: 0.1, alpha: 0 }, { duration: 500, onFinish: function onFinish() { self.destroy(); } }); } }; return self; }); var Flag = Container.expand(function () { var self = Container.call(this); var graphics = self.attachAsset('flag', { anchorX: 0.5, anchorY: 1.0 }); self.update = function () { if (self.intersects(player)) { LK.setScore(LK.getScore() + 500); LK.showYouWin(); } }; return self; }); var Platform = Container.expand(function () { var self = Container.call(this); var graphics = self.attachAsset('platform', { anchorX: 0.5, anchorY: 0.5 }); return self; }); var Player = Container.expand(function () { var self = Container.call(this); var graphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 1.0 }); self.velocityX = 0; self.velocityY = 0; self.onGround = false; self.speed = 8; self.jumpPower = 20; self.gravity = 0.8; self.maxFallSpeed = 15; self.lives = 3; self.update = function () { // Apply gravity if (!self.onGround) { self.velocityY += self.gravity; if (self.velocityY > self.maxFallSpeed) { self.velocityY = self.maxFallSpeed; } } // Apply movement self.x += self.velocityX; self.y += self.velocityY; // Reset ground state self.onGround = false; // Check platform collisions for (var i = 0; i < platforms.length; i++) { var platform = platforms[i]; if (self.intersects(platform)) { if (self.velocityY > 0 && self.y - 40 < platform.y) { self.y = platform.y; self.velocityY = 0; self.onGround = true; } } } // Check ground collision if (self.y >= groundLevel) { self.y = groundLevel; self.velocityY = 0; self.onGround = true; } // Check if fell off screen if (self.y > 2732 + 100) { self.die(); } // Apply friction self.velocityX *= 0.85; }; self.jump = function () { if (self.onGround) { self.velocityY = -self.jumpPower; self.onGround = false; LK.getSound('jump').play(); } }; self.moveLeft = function () { self.velocityX = -self.speed; }; self.moveRight = function () { self.velocityX = self.speed; }; self.die = function () { self.lives--; if (self.lives <= 0) { LK.showGameOver(); } else { self.respawn(); } }; self.respawn = function () { self.x = 200; self.y = groundLevel; self.velocityX = 0; self.velocityY = 0; LK.effects.flashObject(self, 0xffffff, 1000); }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87CEEB }); /**** * Game Code ****/ var groundLevel = 2600; var platforms = []; var coins = []; var enemies = []; var player; var flag; var scoreTxt; var livesTxt; var dragStartX = 0; var isDragging = false; var lastTouchX = 0; // Create ground for (var i = 0; i < 12; i++) { var groundTile = LK.getAsset('ground', { anchorX: 0.5, anchorY: 0.5 }); groundTile.x = i * 200 + 100; groundTile.y = groundLevel + 30; game.addChild(groundTile); } // Create platforms var platformPositions = [{ x: 400, y: 2400 }, { x: 700, y: 2200 }, { x: 1100, y: 2000 }, { x: 1500, y: 1800 }, { x: 1800, y: 1600 }]; for (var i = 0; i < platformPositions.length; i++) { var platform = new Platform(); platform.x = platformPositions[i].x; platform.y = platformPositions[i].y; platforms.push(platform); game.addChild(platform); } // Create coins var coinPositions = [{ x: 300, y: 2500 }, { x: 400, y: 2300 }, { x: 700, y: 2100 }, { x: 1100, y: 1900 }, { x: 1500, y: 1700 }, { x: 1800, y: 1500 }]; for (var i = 0; i < coinPositions.length; i++) { var coin = new Coin(); coin.x = coinPositions[i].x; coin.y = coinPositions[i].y; coins.push(coin); game.addChild(coin); } // Create enemies var enemyPositions = [{ x: 600, y: groundLevel }, { x: 1200, y: groundLevel }, { x: 1600, y: groundLevel }]; for (var i = 0; i < enemyPositions.length; i++) { var enemy = new Enemy(); enemy.x = enemyPositions[i].x; enemy.y = enemyPositions[i].y; enemies.push(enemy); game.addChild(enemy); } // Create player player = new Player(); player.x = 200; player.y = groundLevel; game.addChild(player); // Create flag flag = new Flag(); flag.x = 1900; flag.y = groundLevel; game.addChild(flag); // Create UI scoreTxt = new Text2('0', { size: 60, fill: 0xFFFFFF }); scoreTxt.anchor.set(0.5, 0); scoreTxt.setText(LK.getScore()); LK.gui.top.addChild(scoreTxt); livesTxt = new Text2('Lives: 3', { size: 50, fill: 0xFFFFFF }); livesTxt.anchor.set(0, 0); livesTxt.x = 120; livesTxt.y = 20; LK.gui.topLeft.addChild(livesTxt); // Camera follow player var camera = { x: 0, y: 0 }; function updateCamera() { camera.x = player.x - 1024; camera.y = player.y - 1800; // Clamp camera bounds if (camera.x < 0) camera.x = 0; if (camera.x > 400) camera.x = 400; if (camera.y > -500) camera.y = -500; if (camera.y < -1200) camera.y = -1200; game.x = -camera.x; game.y = -camera.y; } // Touch controls game.down = function (x, y, obj) { isDragging = true; dragStartX = x + camera.x; lastTouchX = x + camera.x; // Check if tap is for jumping if (y > 2000) { player.jump(); } }; game.move = function (x, y, obj) { if (isDragging) { var currentX = x + camera.x; var deltaX = currentX - lastTouchX; if (deltaX > 5) { player.moveRight(); } else if (deltaX < -5) { player.moveLeft(); } lastTouchX = currentX; } }; game.up = function (x, y, obj) { isDragging = false; }; game.update = function () { updateCamera(); // Update lives display livesTxt.setText('Lives: ' + player.lives); // Remove destroyed coins for (var i = coins.length - 1; i >= 0; i--) { if (coins[i].collected) { coins.splice(i, 1); } } // Remove destroyed enemies for (var i = enemies.length - 1; i >= 0; i--) { if (enemies[i].defeated) { enemies.splice(i, 1); } } };
===================================================================
--- original.js
+++ change.js
@@ -1,6 +1,377 @@
-/****
+/****
+* Plugins
+****/
+var tween = LK.import("@upit/tween.v1");
+
+/****
+* Classes
+****/
+var Coin = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('coin', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.collected = false;
+ self.update = function () {
+ if (!self.collected) {
+ self.rotation += 0.1;
+ if (self.intersects(player)) {
+ self.collect();
+ }
+ }
+ };
+ self.collect = function () {
+ if (!self.collected) {
+ self.collected = true;
+ LK.setScore(LK.getScore() + 10);
+ scoreTxt.setText(LK.getScore());
+ LK.getSound('coin').play();
+ tween(self, {
+ scaleX: 0,
+ scaleY: 0,
+ alpha: 0
+ }, {
+ duration: 300,
+ onFinish: function onFinish() {
+ self.destroy();
+ }
+ });
+ }
+ };
+ return self;
+});
+var Enemy = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('enemy', {
+ anchorX: 0.5,
+ anchorY: 1.0
+ });
+ self.velocityX = -2;
+ self.defeated = false;
+ self.update = function () {
+ if (!self.defeated) {
+ self.x += self.velocityX;
+ // Bounce off platforms
+ if (self.x <= 100 || self.x >= 1948) {
+ self.velocityX *= -1;
+ }
+ if (self.intersects(player)) {
+ if (player.velocityY > 0 && player.y < self.y - 20) {
+ // Player jumped on enemy
+ self.defeat();
+ player.velocityY = -10; // Bounce player up
+ } else {
+ // Player touched enemy
+ player.die();
+ }
+ }
+ }
+ };
+ self.defeat = function () {
+ if (!self.defeated) {
+ self.defeated = true;
+ LK.setScore(LK.getScore() + 50);
+ scoreTxt.setText(LK.getScore());
+ LK.getSound('enemy_defeat').play();
+ tween(self, {
+ scaleY: 0.1,
+ alpha: 0
+ }, {
+ duration: 500,
+ onFinish: function onFinish() {
+ self.destroy();
+ }
+ });
+ }
+ };
+ return self;
+});
+var Flag = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('flag', {
+ anchorX: 0.5,
+ anchorY: 1.0
+ });
+ self.update = function () {
+ if (self.intersects(player)) {
+ LK.setScore(LK.getScore() + 500);
+ LK.showYouWin();
+ }
+ };
+ return self;
+});
+var Platform = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('platform', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ return self;
+});
+var Player = Container.expand(function () {
+ var self = Container.call(this);
+ var graphics = self.attachAsset('player', {
+ anchorX: 0.5,
+ anchorY: 1.0
+ });
+ self.velocityX = 0;
+ self.velocityY = 0;
+ self.onGround = false;
+ self.speed = 8;
+ self.jumpPower = 20;
+ self.gravity = 0.8;
+ self.maxFallSpeed = 15;
+ self.lives = 3;
+ self.update = function () {
+ // Apply gravity
+ if (!self.onGround) {
+ self.velocityY += self.gravity;
+ if (self.velocityY > self.maxFallSpeed) {
+ self.velocityY = self.maxFallSpeed;
+ }
+ }
+ // Apply movement
+ self.x += self.velocityX;
+ self.y += self.velocityY;
+ // Reset ground state
+ self.onGround = false;
+ // Check platform collisions
+ for (var i = 0; i < platforms.length; i++) {
+ var platform = platforms[i];
+ if (self.intersects(platform)) {
+ if (self.velocityY > 0 && self.y - 40 < platform.y) {
+ self.y = platform.y;
+ self.velocityY = 0;
+ self.onGround = true;
+ }
+ }
+ }
+ // Check ground collision
+ if (self.y >= groundLevel) {
+ self.y = groundLevel;
+ self.velocityY = 0;
+ self.onGround = true;
+ }
+ // Check if fell off screen
+ if (self.y > 2732 + 100) {
+ self.die();
+ }
+ // Apply friction
+ self.velocityX *= 0.85;
+ };
+ self.jump = function () {
+ if (self.onGround) {
+ self.velocityY = -self.jumpPower;
+ self.onGround = false;
+ LK.getSound('jump').play();
+ }
+ };
+ self.moveLeft = function () {
+ self.velocityX = -self.speed;
+ };
+ self.moveRight = function () {
+ self.velocityX = self.speed;
+ };
+ self.die = function () {
+ self.lives--;
+ if (self.lives <= 0) {
+ LK.showGameOver();
+ } else {
+ self.respawn();
+ }
+ };
+ self.respawn = function () {
+ self.x = 200;
+ self.y = groundLevel;
+ self.velocityX = 0;
+ self.velocityY = 0;
+ LK.effects.flashObject(self, 0xffffff, 1000);
+ };
+ return self;
+});
+
+/****
* Initialize Game
-****/
+****/
var game = new LK.Game({
- backgroundColor: 0x000000
-});
\ No newline at end of file
+ backgroundColor: 0x87CEEB
+});
+
+/****
+* Game Code
+****/
+var groundLevel = 2600;
+var platforms = [];
+var coins = [];
+var enemies = [];
+var player;
+var flag;
+var scoreTxt;
+var livesTxt;
+var dragStartX = 0;
+var isDragging = false;
+var lastTouchX = 0;
+// Create ground
+for (var i = 0; i < 12; i++) {
+ var groundTile = LK.getAsset('ground', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ groundTile.x = i * 200 + 100;
+ groundTile.y = groundLevel + 30;
+ game.addChild(groundTile);
+}
+// Create platforms
+var platformPositions = [{
+ x: 400,
+ y: 2400
+}, {
+ x: 700,
+ y: 2200
+}, {
+ x: 1100,
+ y: 2000
+}, {
+ x: 1500,
+ y: 1800
+}, {
+ x: 1800,
+ y: 1600
+}];
+for (var i = 0; i < platformPositions.length; i++) {
+ var platform = new Platform();
+ platform.x = platformPositions[i].x;
+ platform.y = platformPositions[i].y;
+ platforms.push(platform);
+ game.addChild(platform);
+}
+// Create coins
+var coinPositions = [{
+ x: 300,
+ y: 2500
+}, {
+ x: 400,
+ y: 2300
+}, {
+ x: 700,
+ y: 2100
+}, {
+ x: 1100,
+ y: 1900
+}, {
+ x: 1500,
+ y: 1700
+}, {
+ x: 1800,
+ y: 1500
+}];
+for (var i = 0; i < coinPositions.length; i++) {
+ var coin = new Coin();
+ coin.x = coinPositions[i].x;
+ coin.y = coinPositions[i].y;
+ coins.push(coin);
+ game.addChild(coin);
+}
+// Create enemies
+var enemyPositions = [{
+ x: 600,
+ y: groundLevel
+}, {
+ x: 1200,
+ y: groundLevel
+}, {
+ x: 1600,
+ y: groundLevel
+}];
+for (var i = 0; i < enemyPositions.length; i++) {
+ var enemy = new Enemy();
+ enemy.x = enemyPositions[i].x;
+ enemy.y = enemyPositions[i].y;
+ enemies.push(enemy);
+ game.addChild(enemy);
+}
+// Create player
+player = new Player();
+player.x = 200;
+player.y = groundLevel;
+game.addChild(player);
+// Create flag
+flag = new Flag();
+flag.x = 1900;
+flag.y = groundLevel;
+game.addChild(flag);
+// Create UI
+scoreTxt = new Text2('0', {
+ size: 60,
+ fill: 0xFFFFFF
+});
+scoreTxt.anchor.set(0.5, 0);
+scoreTxt.setText(LK.getScore());
+LK.gui.top.addChild(scoreTxt);
+livesTxt = new Text2('Lives: 3', {
+ size: 50,
+ fill: 0xFFFFFF
+});
+livesTxt.anchor.set(0, 0);
+livesTxt.x = 120;
+livesTxt.y = 20;
+LK.gui.topLeft.addChild(livesTxt);
+// Camera follow player
+var camera = {
+ x: 0,
+ y: 0
+};
+function updateCamera() {
+ camera.x = player.x - 1024;
+ camera.y = player.y - 1800;
+ // Clamp camera bounds
+ if (camera.x < 0) camera.x = 0;
+ if (camera.x > 400) camera.x = 400;
+ if (camera.y > -500) camera.y = -500;
+ if (camera.y < -1200) camera.y = -1200;
+ game.x = -camera.x;
+ game.y = -camera.y;
+}
+// Touch controls
+game.down = function (x, y, obj) {
+ isDragging = true;
+ dragStartX = x + camera.x;
+ lastTouchX = x + camera.x;
+ // Check if tap is for jumping
+ if (y > 2000) {
+ player.jump();
+ }
+};
+game.move = function (x, y, obj) {
+ if (isDragging) {
+ var currentX = x + camera.x;
+ var deltaX = currentX - lastTouchX;
+ if (deltaX > 5) {
+ player.moveRight();
+ } else if (deltaX < -5) {
+ player.moveLeft();
+ }
+ lastTouchX = currentX;
+ }
+};
+game.up = function (x, y, obj) {
+ isDragging = false;
+};
+game.update = function () {
+ updateCamera();
+ // Update lives display
+ livesTxt.setText('Lives: ' + player.lives);
+ // Remove destroyed coins
+ for (var i = coins.length - 1; i >= 0; i--) {
+ if (coins[i].collected) {
+ coins.splice(i, 1);
+ }
+ }
+ // Remove destroyed enemies
+ for (var i = enemies.length - 1; i >= 0; i--) {
+ if (enemies[i].defeated) {
+ enemies.splice(i, 1);
+ }
+ }
+};
\ No newline at end of file
uzay gemisi. In-Game asset. 2d. High contrast. No shadows
beyaz renkli yıldız. In-Game asset. 2d. High contrast. No shadows
jüpiter. In-Game asset. 2d. High contrast. No shadows
satürn. In-Game asset. 2d. High contrast. No shadows
dünya. In-Game asset. 2d. High contrast. No shadows
asteroit. In-Game asset. 2d. High contrast. No shadows
bonus. In-Game asset. 2d. High contrast. No shadows
mermi. In-Game asset. 2d. High contrast. No shadows
patlama. In-Game asset. 2d. High contrast. No shadows