User prompt
asla zemin blockları üst üste yani konumlar çakışamaz
User prompt
eski sıralı yapıyı yap
User prompt
konumlar hala aynı çöz bu sorunu x ekseninde bir konumda zemin varsa olmadığı yere hemen bitane daha koy
User prompt
ama konumları aynı olamaz
User prompt
tamam sayıyı 20 yap x ekseninde sıralı halde olacak
User prompt
tek tek konum ver
User prompt
tamam bunu azalt ama yapıyı koru yani iki zemin üst üste gelemez konumları
User prompt
daha fazla düşman gelsin zamnla
User prompt
o yazıyı zemini koru yap
User prompt
tamam şimdi boyutu küçült
User prompt
tamam 0 0 noktasına al
User prompt
ekranın ortasına al o zaman
User prompt
daha da ekranda gözükmüyor
User prompt
**Koruma Mesajı**: Mağarayı korumak için oyuncunun oyun başında görüntülenen mesaj.bunu x ekseninde 500 eksilt
User prompt
500 daha
User prompt
şu sayacı x ekseninde 500 azalt
User prompt
biraz x ekseninde azalt 500 kadar
User prompt
yukarda sayaç olsun skor ne kadar süre hayatta kaldığı olacak
User prompt
zemini yapıyı koruyarak 350 yap
User prompt
zemini büyüt yapıyı koruyarak
User prompt
oyuncunun altında zemin block yoksa en yakın zemin block konumunun göre y eksen değişsin
User prompt
düşmanlar zemini yok etmeye çalışır şekilde gelsin nerde zemin varsa ona göre gelsinler
User prompt
tamam bu gecikmenin ne kadar kaldığını ekranda göster. yani düşmanların nezzaman geleceğini
User prompt
düşmanlar gelmeden oyuncuya mağra yapma fırsatı vericez sığnak
User prompt
şimdi oyun başlamadan hemen önce mağrayı koru yazısı çıkmalı
/**** * Classes ****/ // Define a class for bullets var Bullet = Container.expand(function () { var self = Container.call(this); var bulletGraphics = self.attachAsset('bullet', { anchorX: 0.5, anchorY: 0.5 }); self.speed = -15; self.update = function () { if (self.y < 0 || self.x < 0 || self.x > 2048) { self.destroy(); return; // Exit early if bullet is destroyed } self.y += self.speed; if (self.speedX) { self.x += self.speedX; // Update x position if horizontal speed is set } }; }); // 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 () { if (self.y > 2732) { self.y = 0; self.x = Math.random() * 2048; // Always reset x position return; // Exit early if enemy is reset } self.y += self.speed; }; }); // Define a class for the entity // Define a class for the ground var Ground = Container.expand(function () { var self = Container.call(this); var groundGraphics = self.attachAsset('ground', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { // Check for intersection with falling entities for (var i = 0; i < enemies.length; i++) { if (self.intersects(enemies[i])) { enemies[i].destroy(); // Destroy the enemy self.destroy(); // Destroy the ground piece break; // Exit loop after handling collision } } }; }); //<Assets used in the game will automatically appear here> //<Write imports for supported plugins here> // Define a class for the MainCharacter var MainCharacter = Container.expand(function () { var self = Container.call(this); var mainCharacterGraphics = self.attachAsset('player', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 10; self.update = function () { // MainCharacter update logic with gravity, jumping, and horizontal movement if (self.y > 2732 - self.height / 2) { // Check if on the ground self.y = 2732 - self.height / 2; self.speedY = 0; self.canJump = true; } else { self.y += self.speedY; // Apply gravity self.speedY += 1; // Gravity effect } if (game.isMouseDown && self.canJump) { self.speedY = -20; // Jump strength self.canJump = false; } // Horizontal movement if (game.keys['ArrowLeft']) { self.x -= self.speed; // Move left } if (game.keys['ArrowRight']) { self.x += self.speed; // Move right } for (var i = 0; i < ground.length; i++) { if (self.intersects(ground[i])) { if (self.y + self.height / 2 > ground[i].y) { self.y = ground[i].y - self.height / 2; } self.speedY = 0; // Stop falling self.canJump = true; // Allow jumping break; } } }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ // Display 'Protect the Cave' message before the game starts var protectMessage = new Text2('Protect the Cave', { size: 100, fill: 0xFFFFFF }); protectMessage.anchor.set(0.5, 0.5); protectMessage.x = 0; protectMessage.y = 0; LK.gui.center.addChild(protectMessage); // Remove the message after 3 seconds LK.setTimeout(function () { LK.gui.center.removeChild(protectMessage); }, 3000); // Initialize ground with a flat surface for the character var ground = []; for (var i = 0; i < 20; i++) { for (var j = 0; j < 5; j++) { // Fill 5 blocks below the ground var groundPiece = new Ground(); groundPiece.x = i * 200; groundPiece.y = 2732 - 300 + j * 200; // Adjust y position for each block ground.push(groundPiece); game.addChild(groundPiece); } } // Initialize main character with gravity and jumping mechanics var mainCharacter = game.addChild(new MainCharacter()); mainCharacter.x = 2048 / 2; mainCharacter.y = ground[0].y - mainCharacter.height - 50; // Adjusted to be above the highest ground piece mainCharacter.speedY = 0; // Initial vertical speed mainCharacter.canJump = false; // Initial jump state // Initialize bullets var bullets = []; // Initialize key states for movement game.keys = {}; // Initialize click counter and timing for shooting var clickCounter = 0; var lastClickTime = 0; // Initialize collectibles var collectibles = []; // Initialize enemies with spawning logic var enemies = []; function spawnEnemy() { var enemy = new Enemy(); enemy.x = Math.random() * 2048; enemy.y = -enemy.height; // Set initial y position above the screen enemies.push(enemy); game.addChild(enemy); } // Display countdown timer for enemy spawn delay var countdownText = new Text2('Enemies in: 5', { size: 100, fill: 0xFFFFFF }); countdownText.anchor.set(0.5, 0.5); countdownText.x = 2048 / 2; countdownText.y = 2732 / 2 + 150; // Position below the 'Protect the Cave' message LK.gui.center.addChild(countdownText); var countdown = 5; var countdownInterval = LK.setInterval(function () { countdown--; countdownText.setText('Enemies in: ' + countdown); if (countdown <= 0) { LK.clearInterval(countdownInterval); LK.gui.center.removeChild(countdownText); } }, 1000); // Delay enemy spawning to give player time to build a shelter LK.setTimeout(function () { // Spawn an enemy every 3 seconds after the initial delay LK.setInterval(spawnEnemy, 3000); }, 5000); // 5-second delay before enemies start spawning // Handle player movement game.down = function (x, y, obj) { mainCharacter.x = x; // Set the main character's x position to the mouse x position }; // Handle shooting game.up = function (x, y, obj) { // Get current time var currentTime = Date.now(); // Check if the time between clicks is less than or equal to 2000ms (2 seconds) if (currentTime - lastClickTime <= 2000) { // Shoot bullet to the left var leftBullet = new Bullet(); leftBullet.x = mainCharacter.x - mainCharacter.width / 2; leftBullet.y = mainCharacter.y; leftBullet.speedX = -10; // Set horizontal speed for left bullet bullets.push(leftBullet); game.addChild(leftBullet); // Shoot bullet to the right var rightBullet = new Bullet(); rightBullet.x = mainCharacter.x + mainCharacter.width / 2; rightBullet.y = mainCharacter.y; rightBullet.speedX = 10; // Set horizontal speed for right bullet bullets.push(rightBullet); game.addChild(rightBullet); // Shoot bullet forward var forwardBullet = new Bullet(); forwardBullet.x = mainCharacter.x; forwardBullet.y = mainCharacter.y - mainCharacter.height; bullets.push(forwardBullet); game.addChild(forwardBullet); } // Update last click time lastClickTime = currentTime; }; // Initialize survival time display var survivalTimeText = new Text2('Survival Time: 0s', { size: 100, fill: 0xFFFFFF }); survivalTimeText.anchor.set(0.5, 0); survivalTimeText.x = 2048 / 2 - 1000; survivalTimeText.y = 50; // Position at the top of the screen LK.gui.top.addChild(survivalTimeText); // Initialize survival time counter var survivalTime = 0; LK.setInterval(function () { survivalTime++; survivalTimeText.setText('Survival Time: ' + survivalTime + 's'); }, 1000); // Game update loop game.update = function () { // Update main character mainCharacter.update(); // Update enemies for (var i = enemies.length - 1; i >= 0; i--) { if (mainCharacter.intersects(enemies[i])) { LK.effects.flashScreen(0xff0000, 1000); LK.showGameOver(); break; // Exit loop early if game over is triggered } enemies[i].update(); if (enemies[i].y > 2732) { enemies[i].destroy(); enemies.splice(i, 1); } } // Update bullets for (var j = bullets.length - 1; j >= 0; j--) { bullets[j].update(); if (bullets[j].y < 0) { bullets[j].destroy(); bullets.splice(j, 1); continue; } for (var k = enemies.length - 1; k >= 0; k--) { if (bullets[j].intersects(enemies[k])) { bullets[j].destroy(); bullets.splice(j, 1); enemies[k].destroy(); enemies.splice(k, 1); break; } } } };
===================================================================
--- original.js
+++ change.js
@@ -112,9 +112,9 @@
* Game Code
****/
// Display 'Protect the Cave' message before the game starts
var protectMessage = new Text2('Protect the Cave', {
- size: 200,
+ size: 100,
fill: 0xFFFFFF
});
protectMessage.anchor.set(0.5, 0.5);
protectMessage.x = 0;
bomb pikcel. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
güzel minecraft arka plan gün batımı. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
minecraft steve pikcel. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
ışın yuvarlak lazer skrol. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.