User prompt
Skoru çalışır hale getir
User prompt
Skoru , dinonun geçtiği her engel için bir tane arttır
User prompt
Score hala artmıyor neden
User prompt
Score kaktüsun üstünden atlayinca 1 artsin
User prompt
Yukardaki score her kaktüsu geçtiğinde artsin
User prompt
Ziplama sesi ekle dino için
User prompt
Kaktüs dışındaki dinonun ölmesine neden olan şeyi kaktüs boyutu kadar olacak şekilde ayarla
User prompt
Kuş dinonun ziplayabilecegi yüksekliklerde oluşsun
User prompt
Havada uçan kuş engeli de ekle
User prompt
Zemin neden bitiyor surekli tekrar etsin
User prompt
Zemin arabayolu gibi olsun
User prompt
Zemini düzelt
User prompt
dino ve cactus boyutunu arttır
User prompt
ground sürekli üretilsin dino ilerledikçe
User prompt
create dino running effect
User prompt
ground resmini yatayda dinozrun altında kalan tüm alana tekrar ederek yay
User prompt
bir önceki koda geri dön
User prompt
ground resmini tekrar ederek doldurmasını sağla
User prompt
hayır sadece dinozorun altında kalan yatayda tüm alanı kaplasın
User prompt
ground resmi tüm groundu kaplasın
User prompt
backgorundda hareket etmeli dino ile birlikte, dinonun bulunduğu konumun altında kalan kısım ayrı bir görselle belirtilsin
User prompt
bir çöl backgroundu oluştur
Initial prompt
dino run
/**** * Classes ****/ // Bird class var Bird = Container.expand(function () { var self = Container.call(this); var birdGraphics = self.attachAsset('bird', { anchorX: 0.5, anchorY: 1.0, width: 100, height: 100 }); self.speed = 10; self.update = function () { self.x -= self.speed; if (self.x < -100) { self.destroy(); } }; }); //<Assets used in the game will automatically appear here> //<Write imports for supported plugins here> // Dinosaur class var Dinosaur = Container.expand(function () { var self = Container.call(this); var dinoGraphics = self.attachAsset('dino', { anchorX: 0.5, anchorY: 1.0, width: 200, height: 200 }); self.isJumping = false; self.jumpSpeed = 0; self.gravity = 0.5; self.groundY = ground.y - ground.height; // Ground level self.update = function () { if (self.isJumping) { self.y += self.jumpSpeed; self.jumpSpeed += self.gravity; if (self.y >= self.groundY) { self.y = self.groundY; self.isJumping = false; // Check if dinosaur has jumped over an obstacle for (var i = 0; i < obstacles.length; i++) { if (obstacles[i].x < self.x && obstacles[i] instanceof Obstacle && !obstacles[i].jumpedOver) { obstacles[i].jumpedOver = true; } } } } }; self.jump = function () { if (!self.isJumping) { self.isJumping = true; self.jumpSpeed = -20; LK.getSound('jump').play(); } }; }); // Ground class var Ground = Container.expand(function () { var self = Container.call(this); var groundGraphics = self.attachAsset('road', { anchorX: 0.5, anchorY: 1.0, width: 4096 }); self.speed = 10; self.update = function () { self.x -= self.speed; if (self.x < -self.width / 2) { self.x = 0; var newGround = new Ground(); newGround.x = self.width; newGround.y = self.y; game.addChild(newGround); } }; }); // Obstacle class var Obstacle = Container.expand(function () { var self = Container.call(this); var obstacleGraphics = self.attachAsset('cactus', { anchorX: 0.5, anchorY: 1.0, width: 200, height: 200 }); self.speed = 10; self.update = function () { self.x -= self.speed; if (self.x < -100) { self.destroy(); } }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0xFFFFFF // Init game with white background }); /**** * Game Code ****/ // Initialize game variables var desertBackground = game.addChild(LK.getAsset('desert', { anchorX: 0, anchorY: 0 })); var ground = game.addChild(new Ground()); ground.x = 0; ground.y = 2732; var dinosaur = game.addChild(new Dinosaur()); dinosaur.x = 200; dinosaur.y = ground.y - ground.height; var obstacles = []; var score = 0; var scoreTxt = new Text2('0', { size: 100, fill: 0x000000 }); scoreTxt.anchor.set(0.5, 0); LK.gui.top.addChild(scoreTxt); // Function to spawn obstacles function spawnObstacle() { var obstacle = new Obstacle(); obstacle.x = 2048; obstacle.y = ground.y - ground.height; obstacles.push(obstacle); game.addChild(obstacle); } function spawnBird() { var bird = new Bird(); bird.x = 2048; bird.y = Math.random() * (dinosaur.y - dinosaur.height - 200); obstacles.push(bird); game.addChild(bird); } // Handle game updates game.update = function () { dinosaur.update(); for (var i = obstacles.length - 1; i >= 0; i--) { obstacles[i].update(); if (dinosaur.intersects(obstacles[i])) { LK.effects.flashScreen(0xff0000, 1000); LK.showGameOver(); } if (obstacles[i].x < -100) { obstacles[i].destroy(); obstacles.splice(i, 1); } } if (LK.ticks % 60 == 0) { for (var i = obstacles.length - 1; i >= 0; i--) { if (obstacles[i].x < dinosaur.x && obstacles[i] instanceof Obstacle && !obstacles[i].jumpedOver) { score++; scoreTxt.setText(score); obstacles[i].jumpedOver = true; } if (obstacles[i].x < -100) { obstacles.splice(i, 1); } } } if (LK.ticks % 120 == 0) { spawnObstacle(); } if (LK.ticks % 180 == 0) { spawnBird(); } }; // Handle user input for jumping game.down = function (x, y, obj) { dinosaur.jump(); };
===================================================================
--- original.js
+++ change.js
@@ -39,8 +39,14 @@
self.jumpSpeed += self.gravity;
if (self.y >= self.groundY) {
self.y = self.groundY;
self.isJumping = false;
+ // Check if dinosaur has jumped over an obstacle
+ for (var i = 0; i < obstacles.length; i++) {
+ if (obstacles[i].x < self.x && obstacles[i] instanceof Obstacle && !obstacles[i].jumpedOver) {
+ obstacles[i].jumpedOver = true;
+ }
+ }
}
}
};
self.jump = function () {