User prompt
show "Tires" at 100% at the beginning of the game
User prompt
for every 3 distance, spawn 'tire'. when dunebuggy collides with 'tire', increase tire by 2%, with a max of 100% for "Tires"
User prompt
delete all assets when they leave the screen
User prompt
spawn 'gascan' separately from other drops
User prompt
if 'gascan', collides with dunebuggy, increase fuel by 2 gallons
User prompt
every 5 distance, drop a 'gascan', which increases fuel by 2 gallons
User prompt
slightly increase the spawn rate of the dropping assets
User prompt
dont spawn everything all at once at the start
User prompt
spawn 'Yucca', behaves the same as the others
User prompt
spawn 'Turtle', behaves the same as the others
User prompt
spawn 'Tumble', behaves the same as the others
User prompt
spawn 'Spider', behaves the same as the others
User prompt
spawn 'Snake', behaves the same as the others
User prompt
spawn 'Scorpion', behaves the same as the others
User prompt
spawn 'Roadrunner', behaves the same as the others
User prompt
spawn 'Rabbit', behaves same as others
User prompt
spawn 'Mojave', behaves the same as the others
User prompt
Please fix the bug: 'ReferenceError: Coyote is not defined' in or related to this line: 'var coyote = new Coyote();' Line Number: 142
User prompt
spawn 'Joshua', behaves like the others
User prompt
cactus and coyote decrease tires by 3%
User prompt
Please fix the bug: 'ReferenceError: Cactus is not defined' in or related to this line: 'var cactus = new Cactus();' Line Number: 124
User prompt
randomly spawn 'Coyote', behaves same as other dropping assets
User prompt
spawn bighorn and cactus at different intervals
User prompt
should be spawning cactus and bighorn randomly
User prompt
add "Bighorn"
/**** * Classes ****/ // Bighorn class to represent the randomly spawned Bighorn var Bighorn = Container.expand(function () { var self = Container.call(this); var bighornGraphics = self.attachAsset('Bighorn', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 15; self.update = function () { self.y += self.speed; }; }); // Cactus class to represent the randomly spawned Cactus var Cactus = Container.expand(function () { var self = Container.call(this); var cactusGraphics = self.attachAsset('Cactus', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 15; self.update = function () { self.y += self.speed; }; }); // Coyote class to represent the randomly spawned Coyote var Coyote = Container.expand(function () { var self = Container.call(this); var coyoteGraphics = self.attachAsset('Coyote', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 15; self.update = function () { self.y += self.speed; }; }); //<Assets used in the game will automatically appear here> // DuneBuggy class to represent the player's vehicle var DuneBuggy = Container.expand(function () { var self = Container.call(this); var buggyGraphics = self.attachAsset('duneBuggy', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 5; self.update = function () { // Update logic for the buggy, if needed }; }); // Joshua class to represent the randomly spawned Joshua var Joshua = Container.expand(function () { var self = Container.call(this); var joshuaGraphics = self.attachAsset('Joshua', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 15; self.update = function () { self.y += self.speed; }; }); // Mojave class to represent the randomly spawned Mojave var Mojave = Container.expand(function () { var self = Container.call(this); var mojaveGraphics = self.attachAsset('Mojave', { anchorX: 0.5, anchorY: 0.5 }); self.speed = 15; self.update = function () { self.y += self.speed; }; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ var duneBuggy = game.addChild(new DuneBuggy()); duneBuggy.x = 2048 / 2; duneBuggy.y = 2732 - 200; var obstacles = []; var supplies = []; var score = 0; var scoreTxt = new Text2('Distance: 0', { size: 100, fill: "#ffffff" }); scoreTxt.anchor.set(0.5, 0); LK.gui.top.addChild(scoreTxt); var fuelTxt = new Text2('Fuel:', { size: 100, fill: "#ffffff" }); fuelTxt.anchor.set(0.5, 0); fuelTxt.y = scoreTxt.height; LK.gui.top.addChild(fuelTxt); var tiresTxt = new Text2('Tires:', { size: 100, fill: "#ffffff" }); tiresTxt.anchor.set(0.5, 0); tiresTxt.y = scoreTxt.height + fuelTxt.height; LK.gui.top.addChild(tiresTxt); var distance = 0; var fuel = 15; var tires = 100; fuelTxt.setText('Fuel: ' + fuel + ' Gallons'); game.update = function () { if (LK.ticks % 60 == 0) { distance += 0.1; scoreTxt.setText('Distance: ' + distance.toFixed(1)); if (distance % 2 < 0.1) { fuel -= 1; fuelTxt.setText('Fuel: ' + fuel + ' Gallons'); if (fuel <= 0) { LK.showGameOver(); } } // Spawn Bighorn, Cactus and Coyote at different intervals if (LK.ticks % 50 == 0) { var bighorn = new Bighorn(); bighorn.x = Math.random() * 2048; bighorn.y = 0; game.addChild(bighorn); } if (LK.ticks % 70 == 0) { var cactus = new Cactus(); cactus.x = Math.random() * 2048; cactus.y = 0; game.addChild(cactus); } if (LK.ticks % 90 == 0) { var coyote = new Coyote(); coyote.x = Math.random() * 2048; coyote.y = 0; game.addChild(coyote); } if (LK.ticks % 110 == 0) { var joshua = new Joshua(); joshua.x = Math.random() * 2048; joshua.y = 0; game.addChild(joshua); } if (LK.ticks % 130 == 0) { var mojave = new Mojave(); mojave.x = Math.random() * 2048; mojave.y = 0; game.addChild(mojave); } // Check for collision between duneBuggy and Bighorn, Cactus, Coyote, Joshua or Mojave for (var i = game.children.length - 1; i >= 0; i--) { if (game.children[i] instanceof Bighorn || game.children[i] instanceof Cactus || game.children[i] instanceof Coyote || game.children[i] instanceof Joshua || game.children[i] instanceof Mojave) { if (duneBuggy.intersects(game.children[i])) { tires -= 3; // decrease tires by 3% tiresTxt.setText('Tires: ' + tires + '%'); // update tires text if (tires <= 0) { LK.showGameOver(); // game over if tires reach 0 } game.children[i].destroy(); // destroy Bighorn, Cactus, Coyote or Joshua on collision return; // return after destroying Bighorn, Cactus, Coyote or Joshua to prevent accessing it after destruction } else if (game.children[i].y > 2732) { game.children[i].destroy(); // destroy Bighorn, Cactus, Coyote or Joshua if it leaves the screen } } } } }; game.down = function (x, y, obj) { duneBuggy.x = x; }; game.move = function (x, y, obj) { duneBuggy.x = x; }; game.up = function (x, y, obj) { // No action needed on up event };
===================================================================
--- original.js
+++ change.js
@@ -61,8 +61,20 @@
self.update = function () {
self.y += self.speed;
};
});
+// Mojave class to represent the randomly spawned Mojave
+var Mojave = Container.expand(function () {
+ var self = Container.call(this);
+ var mojaveGraphics = self.attachAsset('Mojave', {
+ anchorX: 0.5,
+ anchorY: 0.5
+ });
+ self.speed = 15;
+ self.update = function () {
+ self.y += self.speed;
+ };
+});
/****
* Initialize Game
****/
@@ -138,11 +150,17 @@
joshua.x = Math.random() * 2048;
joshua.y = 0;
game.addChild(joshua);
}
- // Check for collision between duneBuggy and Bighorn, Cactus or Coyote
+ if (LK.ticks % 130 == 0) {
+ var mojave = new Mojave();
+ mojave.x = Math.random() * 2048;
+ mojave.y = 0;
+ game.addChild(mojave);
+ }
+ // Check for collision between duneBuggy and Bighorn, Cactus, Coyote, Joshua or Mojave
for (var i = game.children.length - 1; i >= 0; i--) {
- if (game.children[i] instanceof Bighorn || game.children[i] instanceof Cactus || game.children[i] instanceof Coyote || game.children[i] instanceof Joshua) {
+ if (game.children[i] instanceof Bighorn || game.children[i] instanceof Cactus || game.children[i] instanceof Coyote || game.children[i] instanceof Joshua || game.children[i] instanceof Mojave) {
if (duneBuggy.intersects(game.children[i])) {
tires -= 3; // decrease tires by 3%
tiresTxt.setText('Tires: ' + tires + '%'); // update tires text
if (tires <= 0) {
sheep
Sound effect
crash
Sound effect
yelp
Sound effect
rabbit
Sound effect
runner
Sound effect
runner
Sound effect
roar
Sound effect
airwrench
Sound effect
liquid
Sound effect
music
Music
crash2
Sound effect
yehaw
Sound effect
woohoo
Sound effect
bird
Sound effect
splat
Sound effect
splat
Sound effect
gascanbonus
Sound effect
tirebonus
Sound effect