User prompt
yolun devamı yüklenmiyor
User prompt
yön değiştirmiyor
User prompt
dönüşlerde olsun orada araba nereye dönerse oraya baksın
User prompt
basılı tutunca yönlensin
User prompt
yön değiştirme yine ne kadar basarsak mantığı olsun bu olmadı
User prompt
ekranın yukarısına basınca hızlanalım ve yukarıda yön değişme olmasın bide kamera değiştirebilelim dediğim gibi sürücü gözünden ve kuş bakışı
User prompt
basarak yön değişsin sürükleyerek değil
User prompt
ne kadar basarsak o kadar gitsin ve yanda kaçıncı sırada oldugumuz yazsın
User prompt
kontroller önceki oyunumuz gibi olsun
User prompt
Let there be three cameras, one from the driver's eye, one from above and one from behind the car
User prompt
we do a formula car but game is modern
User prompt
delete this game
User prompt
ı cant see any car
User prompt
and do this car in the middle
User prompt
let's compete with others ↪💡 Consider importing and using the following plugins: @upit/storage.v1
Code edit (1 edits merged)
Please save this source code
User prompt
Formula 1 Speed Circuit
Initial prompt
lets do a race game name is Formula 1 Game like formula race,
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); var storage = LK.import("@upit/storage.v1"); /**** * Classes ****/ var F1Car = Container.expand(function () { var self = Container.call(this); var carGraphics = self.attachAsset('f1Car', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 8; self.maxSpeed = 12; self.acceleration = 0.2; self.deceleration = 0.1; self.currentSpeed = 0; self.shielded = false; self.shieldTimer = 0; self.update = function () { if (self.currentSpeed < self.speed) { self.currentSpeed += self.acceleration; } if (self.currentSpeed > self.speed) { self.currentSpeed -= self.deceleration; } self.y += self.currentSpeed; if (self.shielded) { self.shieldTimer--; if (self.shieldTimer <= 0) { self.shielded = false; carGraphics.tint = 0xFFFFFF; } } if (self.x < 100) self.x = 100; if (self.x > 1948) self.x = 1948; }; self.activateShield = function () { self.shielded = true; self.shieldTimer = 300; carGraphics.tint = 0x00BFFF; }; self.boost = function () { var originalSpeed = self.speed; self.speed = self.maxSpeed; tween(self, { speed: originalSpeed }, { duration: 2000 }); }; return self; }); var Obstacle = Container.expand(function () { var self = Container.call(this); var obstacleGraphics = self.attachAsset('obstacle', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 8; self.update = function () { self.y += self.speed; }; return self; }); var PowerUp = Container.expand(function (type) { var self = Container.call(this); var assetId = type || 'powerUp'; var powerUpGraphics = self.attachAsset(assetId, { anchorX: 0.5, anchorY: 0.5 }); self.type = type || 'points'; self.speed = 8; self.collected = false; self.update = function () { self.y += self.speed; powerUpGraphics.rotation += 0.1; }; return self; }); var TrackSection = Container.expand(function () { var self = Container.call(this); var trackGraphics = self.attachAsset('trackSection', { anchorX: 0.5, anchorY: 0.5 }); var leftBorder = self.attachAsset('trackBorder', { anchorX: 0, anchorY: 0.5, x: -1024, y: 0 }); var rightBorder = self.attachAsset('trackBorder', { anchorX: 1, anchorY: 0.5, x: 1024, y: 0 }); self.speed = 8; self.update = function () { self.y += self.speed; }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x228B22 }); /**** * Game Code ****/ var player = game.addChild(new F1Car()); player.x = 1024; player.y = 1366; var trackSections = []; var obstacles = []; var powerUps = []; var distance = 0; var gameSpeed = 8; var spawnTimer = 0; var powerUpSpawnTimer = 0; var scoreText = new Text2('Score: 0', { size: 60, fill: 0xFFFFFF }); scoreText.anchor.set(0.5, 0); LK.gui.top.addChild(scoreText); var speedText = new Text2('Speed: 0', { size: 40, fill: 0xFFFFFF }); speedText.anchor.set(0, 0); speedText.x = 50; speedText.y = 100; LK.gui.topLeft.addChild(speedText); var bestScoreText = new Text2('Best: ' + (storage.bestScore || 0), { size: 40, fill: 0xFFD700 }); bestScoreText.anchor.set(1, 0); bestScoreText.x = 2048 - 50; bestScoreText.y = 100; LK.gui.topRight.addChild(bestScoreText); function createTrackSection() { var section = new TrackSection(); section.x = 1024; section.y = -200; section.speed = gameSpeed; trackSections.push(section); game.addChild(section); } function createObstacle() { var obstacle = new Obstacle(); obstacle.x = Math.random() * 1600 + 224; obstacle.y = -100; obstacle.speed = gameSpeed; obstacles.push(obstacle); game.addChild(obstacle); } function createPowerUp() { var types = ['powerUp', 'speedBoost', 'shield']; var type = types[Math.floor(Math.random() * types.length)]; var powerUp = new PowerUp(type); powerUp.x = Math.random() * 1600 + 224; powerUp.y = -100; powerUp.speed = gameSpeed; powerUps.push(powerUp); game.addChild(powerUp); } for (var i = 0; i < 8; i++) { createTrackSection(); trackSections[i].y = i * 400 - 200; } var dragStartX = 0; var isDragging = false; game.down = function (x, y, obj) { isDragging = true; dragStartX = x; }; game.move = function (x, y, obj) { if (isDragging) { var deltaX = x - dragStartX; player.x += deltaX * 0.3; dragStartX = x; } }; game.up = function (x, y, obj) { isDragging = false; }; game.update = function () { distance += gameSpeed; if (distance % 100 === 0) { LK.setScore(LK.getScore() + 1); scoreText.setText('Score: ' + LK.getScore()); // Update best score if current score is higher var currentScore = LK.getScore(); var bestScore = storage.bestScore || 0; if (currentScore > bestScore) { storage.bestScore = currentScore; bestScoreText.setText('Best: ' + currentScore); } } speedText.setText('Speed: ' + Math.floor(player.currentSpeed)); if (distance % 1000 === 0 && gameSpeed < 12) { gameSpeed += 0.5; } for (var i = trackSections.length - 1; i >= 0; i--) { var section = trackSections[i]; section.speed = gameSpeed; if (section.y > 2800) { section.destroy(); trackSections.splice(i, 1); var newSection = new TrackSection(); newSection.x = 1024; newSection.y = -200; newSection.speed = gameSpeed; trackSections.push(newSection); game.addChild(newSection); } } spawnTimer++; if (spawnTimer >= 60) { if (Math.random() < 0.3) { createObstacle(); } spawnTimer = 0; } powerUpSpawnTimer++; if (powerUpSpawnTimer >= 180) { if (Math.random() < 0.4) { createPowerUp(); } powerUpSpawnTimer = 0; } for (var i = obstacles.length - 1; i >= 0; i--) { var obstacle = obstacles[i]; obstacle.speed = gameSpeed; if (obstacle.y > 2800) { obstacle.destroy(); obstacles.splice(i, 1); continue; } if (player.intersects(obstacle)) { if (player.shielded) { LK.getSound('boost').play(); obstacle.destroy(); obstacles.splice(i, 1); LK.setScore(LK.getScore() + 5); scoreText.setText('Score: ' + LK.getScore()); } else { LK.getSound('crash').play(); LK.effects.flashScreen(0xFF0000, 1000); // Save final score before game over var finalScore = LK.getScore(); var bestScore = storage.bestScore || 0; if (finalScore > bestScore) { storage.bestScore = finalScore; } LK.showGameOver(); } } } for (var i = powerUps.length - 1; i >= 0; i--) { var powerUp = powerUps[i]; powerUp.speed = gameSpeed; if (powerUp.y > 2800) { powerUp.destroy(); powerUps.splice(i, 1); continue; } if (player.intersects(powerUp) && !powerUp.collected) { powerUp.collected = true; LK.getSound('collect').play(); if (powerUp.type === 'speedBoost') { player.boost(); LK.setScore(LK.getScore() + 10); } else if (powerUp.type === 'shield') { player.activateShield(); LK.setScore(LK.getScore() + 15); } else { LK.setScore(LK.getScore() + 5); } scoreText.setText('Score: ' + LK.getScore()); powerUp.destroy(); powerUps.splice(i, 1); } } if (LK.getScore() >= 500) { // Save winning score var winScore = LK.getScore(); var bestScore = storage.bestScore || 0; if (winScore > bestScore) { storage.bestScore = winScore; } LK.showYouWin(); } };
===================================================================
--- original.js
+++ change.js
@@ -118,9 +118,9 @@
* Game Code
****/
var player = game.addChild(new F1Car());
player.x = 1024;
-player.y = 2200;
+player.y = 1366;
var trackSections = [];
var obstacles = [];
var powerUps = [];
var distance = 0;