User prompt
Speed up the racetrack asset loading speed to 1.1.
User prompt
Speed up the racetrack asset loading speed to 1.2.
User prompt
Increase the loading speed of the racetrack asset to 1.5.
User prompt
The speed of the racetrack asset should be as fast as that of car obstacles.
User prompt
The racetrack asset repeats itself continuously each time it loads.
User prompt
Resize the racetrack asset to always fill the entire screen.
User prompt
Add TOYOTA asset to the game as obstacle
User prompt
Then do it
User prompt
Pull out the racetrack for a full portrait image so it can be clearly seen on smartphone.
User prompt
Then do it.
User prompt
Add FRVR asset to the game as obstacle
User prompt
Add Benetton asset to the game as obstacle
User prompt
Add Force-India asset to the game as obstacle
User prompt
Add Toro Rosso asset to the game as obstacle
User prompt
Add Alpine asset to the game as obstacle
User prompt
Add RenaultTelefonica asset to the game as obstacle
User prompt
Add McLarenMercedes asset to the game as obstacle
User prompt
Add Alpine asset to the game as obstacle
User prompt
Add McLaren asset to the game as obstacle
User prompt
rename the bonus petronas to AlfaRomeo
User prompt
Spawn a new car every 1.2 seconds.
User prompt
bmw obstacle size is 400x800
User prompt
Add all car types to the game as obstacles.
User prompt
The game may not load more than 2 cars of one type of car onto the field during one game.
User prompt
The game cannot load more than 2 cars of one type of car onto the track.
/**** * Classes ****/ // AUDI class var AUDI = Container.expand(function () { var self = Container.call(this); var audiGraphics = self.attachAsset('AUDI', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 288.92, scaleY: 800 / 687.86 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // AlfaRomeo class var AlfaRomeo = Container.expand(function () { var self = Container.call(this); var alfaRomeoGraphics = self.attachAsset('AlfaRomeo', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 400, scaleY: 800 / 650 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // AstonMartin class var AstonMartin = Container.expand(function () { var self = Container.call(this); var astonMartinGraphics = self.attachAsset('AstonMartin', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 440, scaleY: 800 / 816.13 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // BMW class var BMW = Container.expand(function () { var self = Container.call(this); var bmwGraphics = self.attachAsset('BMW', { anchorX: 0.5, anchorY: 0.5, scaleX: 1, scaleY: 1 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); //<Assets used in the game will automatically appear here> // Car class var Car = Container.expand(function () { var self = Container.call(this); var carGraphics = self.attachAsset('BMW', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 0; self.maxSpeed = 10 * 1.7; self.acceleration = 0.2 * 1.7; self.deceleration = 0.1 * 1.7; self.update = function () { self.y -= self.speed; if (self.speed > 0) { self.speed -= self.deceleration; } }; self.accelerate = function () { if (self.speed < self.maxSpeed) { self.speed += self.acceleration; } }; }); // Ferrari class var Ferrari = Container.expand(function () { var self = Container.call(this); var ferrariGraphics = self.attachAsset('Ferrari', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 400, scaleY: 800 / 845.15 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // McLaren Ayrton Senna class var McLarenAyrtonSenna = Container.expand(function () { var self = Container.call(this); var mclarenGraphics = self.attachAsset('McLarenAyrtonSenna', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 400, scaleY: 800 / 880 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // MercedesAMGPetronas class var MercedesAMGPetronas = Container.expand(function () { var self = Container.call(this); var mercedesGraphics = self.attachAsset('MercedesAMGPetronas', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 505, scaleY: 800 / 835 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // RedBull class var RedBull = Container.expand(function () { var self = Container.call(this); var redBullGraphics = self.attachAsset('RedBull', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 500, scaleY: 800 / 900 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // Renault class var Renault = Container.expand(function () { var self = Container.call(this); var renaultGraphics = self.attachAsset('Renault', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 440, scaleY: 800 / 869.77 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); // Williams class var Williams = Container.expand(function () { var self = Container.call(this); var williamsGraphics = self.attachAsset('Williams', { anchorX: 0.5, anchorY: 0.5, scaleX: 400 / 400, scaleY: 800 / 780.63 }); self.speed = 5 / 1.5 * 2 * 1.7; self.update = function () { self.y += self.speed; if (self.y > 2732 || obstacles.length > 4) { self.destroy(); var index = obstacles.indexOf(self); if (index > -1) { obstacles.splice(index, 1); } } }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ function countCarType(carType) { return obstacles.filter(function (obstacle) { return obstacle.constructor.name === carType; }).length; } // Add keyboard event listeners for controlling the player's car var keys = {}; game.on('keydown', function (event) { keys[event.code] = true; if (event.code === 'KeyA') { car.x -= car.speed; } }); game.on('keyup', function (event) { keys[event.code] = false; }); var racetrack = LK.getAsset('racetrack', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 2732 / 2 }); game.addChild(racetrack); var leftFrame = LK.getAsset('leftFrame', { anchorX: 0, anchorY: 0, x: 0, y: 0 }); game.addChild(leftFrame); var rightFrame = LK.getAsset('rightFrame', { anchorX: 1, anchorY: 0, x: 2048, y: 0 }); game.addChild(rightFrame); var car = game.addChild(new Car()); car.x = 2048 / 2; car.y = 2732 - 200 - 277; var obstacles = []; var score = 0; var lastSpawnTick = 0; var scoreTxt = new Text2('0', { size: 150, fill: "#ffffff" }); scoreTxt.anchor.set(0.5, 0); LK.gui.top.addChild(scoreTxt); function spawnObstacle() { if (obstacles.length >= 3) { return; } // Limit to a maximum of three cars on the track var carTypes = [RedBull, Ferrari, Williams, MercedesAMGPetronas, AUDI, AstonMartin, BMW, AlfaRomeo, McLarenAyrtonSenna, Renault]; var startX = 200; var spacing = 500; var carType; do { carType = carTypes[Math.floor(Math.random() * carTypes.length)]; } while (countCarType(carType.name) >= 2); var car = new carType(); car.x = startX + Math.floor(Math.random() * 4) * spacing; car.y = 200; // Position all cars at the same y-coordinate obstacles.push(car); game.addChild(car); } function updateScore() { score += 1; scoreTxt.setText(score); } game.move = function (x, y, obj) { car.x = x; }; game.update = function () { car.update(); // Update car position based on keyboard input if (keys['ArrowLeft'] || keys['KeyA']) { car.x -= car.speed; } if (keys['ArrowRight']) { car.x += car.speed; } if (keys['ArrowUp']) { car.accelerate(); } // Ensure car does not move out of bounds if (car.x < 0) { car.x = 0; } else if (car.x > 2048) { car.x = 2048; } for (var i = obstacles.length - 1; i >= 0; i--) { obstacles[i].update(); if (car.intersects(obstacles[i])) { LK.effects.flashScreen(0xff0000, 1000); LK.showGameOver(); } } if (LK.ticks % 72 == 0) { // Spawn a car every 1.2 seconds (72 ticks) spawnObstacle(); updateScore(); } };
===================================================================
--- original.js
+++ change.js
@@ -21,16 +21,16 @@
}
}
};
});
-// AstonMartin class
-var AstonMartin = Container.expand(function () {
+// AlfaRomeo class
+var AlfaRomeo = Container.expand(function () {
var self = Container.call(this);
- var astonMartinGraphics = self.attachAsset('AstonMartin', {
+ var alfaRomeoGraphics = self.attachAsset('AlfaRomeo', {
anchorX: 0.5,
anchorY: 0.5,
- scaleX: 400 / 440,
- scaleY: 800 / 816.13
+ scaleX: 400 / 400,
+ scaleY: 800 / 650
});
self.speed = 5 / 1.5 * 2 * 1.7;
self.update = function () {
self.y += self.speed;
@@ -42,16 +42,16 @@
}
}
};
});
-// BMW class
-var BMW = Container.expand(function () {
+// AstonMartin class
+var AstonMartin = Container.expand(function () {
var self = Container.call(this);
- var bmwGraphics = self.attachAsset('BMW', {
+ var astonMartinGraphics = self.attachAsset('AstonMartin', {
anchorX: 0.5,
anchorY: 0.5,
- scaleX: 1,
- scaleY: 1
+ scaleX: 400 / 440,
+ scaleY: 800 / 816.13
});
self.speed = 5 / 1.5 * 2 * 1.7;
self.update = function () {
self.y += self.speed;
@@ -63,16 +63,16 @@
}
}
};
});
-// BonusPetronas class
-var BonusPetronas = Container.expand(function () {
+// BMW class
+var BMW = Container.expand(function () {
var self = Container.call(this);
- var bonusPetronasGraphics = self.attachAsset('BonusPetronas', {
+ var bmwGraphics = self.attachAsset('BMW', {
anchorX: 0.5,
anchorY: 0.5,
- scaleX: 400 / 400,
- scaleY: 800 / 650
+ scaleX: 1,
+ scaleY: 1
});
self.speed = 5 / 1.5 * 2 * 1.7;
self.update = function () {
self.y += self.speed;
@@ -298,9 +298,9 @@
function spawnObstacle() {
if (obstacles.length >= 3) {
return;
} // Limit to a maximum of three cars on the track
- var carTypes = [RedBull, Ferrari, Williams, MercedesAMGPetronas, AUDI, AstonMartin, BMW, BonusPetronas, McLarenAyrtonSenna, Renault];
+ var carTypes = [RedBull, Ferrari, Williams, MercedesAMGPetronas, AUDI, AstonMartin, BMW, AlfaRomeo, McLarenAyrtonSenna, Renault];
var startX = 200;
var spacing = 500;
var carType;
do {
grass top view.
Add more dark carbon fiber background and resize the picture to 16:9
F1 race car. Glossy blue body painting and half covered with planet blue Earth. Blue front wing. myearthdream.com text on black rear wing. 7 number on the nose of the car. Red Honda logo with White R logo on the nose of the car. Top view.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
F1 Jaguair race car. Shiny green body. white Jaguar animal logo on body. thin red and white stripes. white front wings and white rear wing. TOP VIEW!. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
RedBull F1 race car. Top view. Royalblue body with Shinyred lines on sides. Silver bull-body. Silver ,,BlueBull" sponsors.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Black McLaren MP4-29 F1 RACE CAR with red lines and white,,RONDA"text. TOP VIEW.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Photorealistic F1 McLaren race car, Top view. Orange coloured body and black thick stripe with white Chrome text where the o letter is Google chrome logo. Skyblue lines on nose sides. Silver 4 number on nose. Black OKX text on rear wing.
Photorealistic F1 race car without Halo safety device. Top view. White body with neongreen nose. Black BrainGP text on body sides. Red "Cainon" text on front wings. Neongreen rear wing with Orange "BRAWNDO" text.
Photorealistic RedBull f1 car top view. Replace RedBull text to RealBull text.
Photorealistic Cadillac F1 race car, top view. Replace Cadillac text to golden coloured ,,Cadillaic" text on black rear wing. Big American flag on white body. White ,,Andretti" and gm text on black front wing.
Photorealistic Porsche F1 race car, top view. Golden logo on car nose. White body with black rear and front wing. Very thick red lines on body from front wing to rear wing. Replace Porsche text to white coloured ,,Porshe" text on rear wing.
Photorealistic Renault F1 race car, top view. Bright skyblue body. Banana Yellow nose with blue sidelines. Royalblue Front and Rear wing. Neon-yellow ,,Telefonicai" text on rearwing. White ,,TEAM SPIRIT" text on nose. Blue ,,RENAIULT" text on body.