Code edit (7 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: Sprite is not a constructor' in or related to this line: 'var newLife = new Sprite('life');' Line Number: 267
Code edit (12 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: scor is not defined' in or related to this line: 'scor += 1;' Line Number: 120
Code edit (2 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: OptionsZone is undefined' in or related to this line: 'parasol.y = OptionsZone.y - 400;' Line Number: 189
Code edit (1 edits merged)
Please save this source code
Code edit (23 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: abs is not defined' in or related to this line: 'var deltaX = abs(coconuts[i].x - coconuts[i].X1);' Line Number: 307
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
Code edit (8 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: scoreText is not defined' in or related to this line: 'scoreText.setText(nouveauScore);' Line Number: 214
Code edit (1 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: scoreText is not defined' in or related to this line: 'if (scoreText) {' Line Number: 169
Code edit (1 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: scoreText is not defined' in or related to this line: 'scoreText.setText(nouveauScore);' Line Number: 169
Code edit (1 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: scoreText is not defined' in or related to this line: 'scoreText.setText(nouveauScore);' Line Number: 172
Code edit (7 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: scoreText is not defined' in or related to this line: 'scoreText.setText(nouveauScore);' Line Number: 178
User prompt
Please fix the bug: 'ReferenceError: scoreText is not defined' in or related to this line: 'scoreText.setText(nouveauScore);' Line Number: 173
User prompt
Please fix the bug: 'ReferenceError: scoreText is not defined' in or related to this line: 'scoreText.setText(nouveauScore);' Line Number: 172
Code edit (1 edits merged)
Please save this source code
===================================================================
--- original.js
+++ change.js
@@ -106,14 +106,13 @@
self.distPerTick = (self.X2 - self.X1) / self.totalTicks;
self.isStarted = true;
//scoreTest = "x= " + self.x + " y= " + self.y + " a= " + self.a + " distPerTick= " + self.distPerTick;
} else {
- if (self.x < self.X2) {
- score += 1;
- self.x += self.distPerTick;
- self.y = self.a * (self.x - self.X1) * (self.x - self.X2) + self.Y0;
- scoreTest = "x= " + self.x + " y= " + self.y + " a= " + self.a + " distPerTick= " + self.distPerTick;
- }
+ //if (self.x < self.X2) {
+ score += 1;
+ self.x += self.distPerTick;
+ self.y = self.a * (self.x - self.X1) * (self.x - self.X2) + self.Y0;
+ scoreTest = "x= " + self.x + " y= " + self.y + " a= " + self.a + " distPerTick= " + self.distPerTick;
}
}; //fin updateParabol
});
@@ -211,9 +210,10 @@
var startPoints = [XL = game.width / 4, XC = game.width / 2, XR = 3 * game.width / 4]; // Define the startPoints array
/****
* Score
****/
-var livesLeft = 3;
+var livesLeft = 3; //Nombre de vies restantes
+var livesLeftGraphics = []; //Tableau des sprites 'life' représentant les vies restantes
var scoreTestText = new Text2('0', {
size: 30,
fill: "#000000",
anchorX: 0.5,
@@ -247,18 +247,24 @@
scoreTxt.setText(nouveauScore);
} //fin updateScore
function setLivesLeft() {
//Affiche le nombre de vies restantes (sprite 'life' ) dans le coin supérieur gauche
+ //Commence par effacer les vies restantes s'il y en a
+ for (var i = 0; livesLeftGraphics.length; i++) {
+ game.removeChild(livesLeftGraphics[i]);
+ }
+ //Crée des sprites 'life' si nécessaire (si livesLeft > livesLeftGraphics.length)
+ if (livesLeft > livesLeftGraphics.length) {
+ for (var i = livesLeftGraphics.length; i < livesLeft; i++) {
+ var newLife = LK.getAsset('life', {});
+ newLife.x = 100 * i;
+ newLife.y = 0;
+ livesLeftGraphics.push(newLife);
+ }
+ }
+ //Affiche les sprites 'life' dans le coin supérieur gauche
for (var i = 0; i < livesLeft; i++) {
- var lifeGraphics = LK.getAsset('life', {
- anchorX: 0.5,
- anchorY: 0,
- scaleX: 1,
- scaleY: 1,
- x: ScoreZone.x + 100 + 100 * i,
- y: ScoreZone.y + 100
- });
- game.addChild(lifeGraphics);
+ game.addChild(livesLeftGraphics[i]);
}
} //fin setLivesLeft
//Fonction chooseNextStartPoint: choisit aléatoirement un point de départ d'un coconut
//Renvoie un objet Coconut
@@ -281,9 +287,9 @@
* Main loop
****/
game.update = function () {
//Mise à jour score
- //scoreTest = livesLeft;
+ scoreTest = livesLeft;
updateScoreTest(scoreTest);
updateScore(score);
setLivesLeft();
//Autres actions à effectuer sans urgence
@@ -295,13 +301,13 @@
}
}
//Check if a coconut has touched the parasol et changement de trajectoire
for (var i = coconuts.length - 1; i >= 0; i--) {
- if (coconuts[i].intersects(parasol) && coconuts[i].isFalling) {
+ if (coconuts[i].intersects(parasol) && (coconuts[i].isFalling || coconuts[i].isBouncing)) {
score += 1;
coconuts[i].isFalling = false;
var deltaX = Math.abs(coconuts[i].x - XL);
- coconuts[i].trajectory.setParameters(1, coconuts[i].x, XC - deltaX, coconuts[i].y, game.height / 2, 500);
+ coconuts[i].trajectory.setParameters(1, coconuts[i].x, XC - deltaX, coconuts[i].y, ScoreZone.height + 200, 500);
coconuts[i].isBouncing = true;
}
}
//Mise à jour des coconuts bouncing