Code edit (2 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: rocher_pouf_sprite is not defined' in or related to this line: 'rocher.sprite = rocher_pouf_sprite;' Line Number: 1010
Code edit (1 edits merged)
Please save this source code
Code edit (4 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: LK.wait is not a function' in or related to this line: 'LK.wait(4000, function () {' Line Number: 1009
Code edit (9 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: Cannot read properties of undefined (reading 'rocher_pouf_sprite')' in or related to this line: 'rocher.sprite = self.rocher_pouf_sprite;' Line Number: 1003
Code edit (1 edits merged)
Please save this source code
Code edit (18 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: LK.getTick is not a function' in or related to this line: 'rocher.sprite.alpha = Math.abs(Math.sin(LK.getTick() / 100)); //Clignotement du rocher' Line Number: 991
Code edit (1 edits merged)
Please save this source code
Code edit (7 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: rocher is undefined' in or related to this line: 'var sens = this.yBase < rocher.sprite.y ? 1 : -1; //Calcul du sens de deplacement verticale : 1=bas, -1=haut' Line Number: 735
Code edit (1 edits merged)
Please save this source code
Code edit (5 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: rochersCibles is not defined' in or related to this line: 'scoreTest = rochersCibles.length;' Line Number: 750
Code edit (6 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: this.srite is undefined' in or related to this line: 'if (this.rochersCibles.length == 0 && this.srite.y != this.yBase) {' Line Number: 745
Code edit (8 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: yBase is not defined' in or related to this line: 'sens = this.sprite.y == yBase ? -sens : sens; //Si le Buldo par face a la route, il doit se tourner vers le rocher' Line Number: 737
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 (6 edits merged)
Please save this source code
User prompt
Please fix the bug: 'TypeError: Cannot read properties of undefined (reading 'length')' in or related to this line: 'scoreTest = this.pushers.length;' Line Number: 816
===================================================================
--- original.js
+++ change.js
@@ -709,21 +709,25 @@
}
}
} else {
var AD = dist(this.sprite.x, 0, xTarget, 0); //Distance entre le centre du sprite et l'abscisse x destination
- if (AD >= HD) {
- //Securite au cas ou le point destination se trouve entre le centre du sprite et le point chaud AV : on arrete ponctuellement le deplacement
+ var Bh = this.sprite.x + this.camp * this.dxAvHotSpot; //Abscisse x du point chaud AV du sprite
+ var AH = dist(this.sprite.x, 0, this.sprite.x + this.camp * this.dxAvHotSpot, 0); //Distance entre le centre du sprite et le point chaud AV
+ var dxHotSpotR = this.camp == humanCamp ? this.rocherDestination.dxHotLeftSpot : this.rocherDestination.dxHotRightSpot; //Point chaud du rocher
+ var Rh = this.rocherDestination.sprite.x + dxHotSpotR; //Abscisse x du point chaud du rocher
+ if (AH <= AD) {
+ //Securite au cas ou le point destination se trouve entre le centre du sprite et le point chaud AV du sprite
this.sprite.x += this.vitesseEnCours * delta; // Sinon on déplace le sprite horizontalement
+ } else if (AH > AD || Bh > Rh) {
+ //Securite au cas ou le buldo depasse le point chaud du rocher
+ this.sprite.x -= this.vitesseEnCours * delta; //Sinon il recule pour se repositionner derriere
}
}
}
return;
}; // fin deplaceHtoR
this.moveBackToBase = function () {
//Deplacement du Buldo vers sa position de base lors du retour au camp
- //D'abord il se tourne verticalement vers sa position de base
- //Puis il se deplace verticalement vers sa position de base
- //Puis il se tourne pour faire face a la route
var sens = this.yBase < this.sprite.y ? 1 : -1; //Calcul du sens de deplacement verticale : 1=bas, -1=haut
sens = this.camp == humanCamp ? sens : -sens; //L'inverse pour les ordis
this.addMoveToStack(typeRotation, sens * 90, 0); //Rotation de 90 degres vers l'ordonnee de la position de base
this.addMoveToStack(typeLigneVtoY, this.xBase, this.yBase); //Deplacement vertical vers la position de base
@@ -872,16 +876,16 @@
} //fin createSingleBuldo
function createBuldos() {
//CREATION D'OBJETS A PARTIR DES SPRITES //constructor(x, y, camp)
var buldoRock1 = createSingleBuldo(HumanZone.x + HumanZone.width / 2, HumanZone.y + HumanZone.height / 3, humanCamp);
- var buldoRockTest = createSingleBuldo(HumanZone.x + HumanZone.width / 2, HumanZone.y + HumanZone.height / 2, humanCamp); //Position : milieu de la zone humaine, 1/2 de la hauteur
+ //var buldoRockTest = createSingleBuldo(HumanZone.x + HumanZone.width / 2, HumanZone.y + HumanZone.height / 2, humanCamp); //Position : milieu de la zone humaine, 1/2 de la hauteur
var buldoRock2 = createSingleBuldo(HumanZone.x + HumanZone.width / 2, HumanZone.y + 2 * HumanZone.height / 3, humanCamp);
var buldoZer1 = createSingleBuldo(ComputerZone.x + ComputerZone.width / 2, ComputerZone.y + ComputerZone.height / 3, ordiCamp);
var buldoZer2 = createSingleBuldo(ComputerZone.x + ComputerZone.width / 2, ComputerZone.y + 2 * ComputerZone.height / 3, ordiCamp);
//On stocke les objets dans un tableau
var buldos = [];
buldos.push(buldoRock1);
- buldos.push(buldoRockTest);
+ //buldos.push(buldoRockTest);
buldos.push(buldoRock2);
buldos.push(buldoZer1);
buldos.push(buldoZer2);
//On donne un nom aux objets
@@ -945,12 +949,39 @@
if (rochers[i].isBeingPushed) {
rochers[i].checkPushed();
} //déplacement du rocher
}
+ //Gestion des rochers bloques
+ if (rochers) {
+ rochers.forEach(function (rocher) {
+ if (rocher.vitesse == 0 && rocher.isBeingPushed) {
+ //Si le rocher est immobilise alors qu'il est pousse
+ if (buldos) {
+ var allBuldosPushing = true;
+ scoreTest = 0;
+ buldos.forEach(function (buldo) {
+ //et que tous les Buldos sont en train de pousser
+ if (!buldo.isPushing) {
+ allBuldosPushing = false;
+ scoreTest += 1;
+ }
+ });
+ if (allBuldosPushing) {
+ //alors aucun buldo ne peut venir le pousser
+ rocher.isBlocked = true; //donc le rocher est bloque
+ }
+ }
+ }
+ //Si le rocher est bloque, on le fait clignoter
+ if (rocher.isBlocked) {
+ rocher.sprite.alpha = Math.abs(Math.sin(LK.ticks / 100)); //Clignotement du rocher
+ }
+ });
+ }
//Mise à jour des scores
updateScoreHumain(scoreHumain);
updateScoreOrdi(scoreOrdi);
- //updateScoreTest(scoreTest);
+ updateScoreTest(scoreTest);
//Fin de partie
if (nbRochers <= 0) {
if (scoreHumain >= scoreOrdi) {
afficheVictoire(humanCamp);
A small rock
a rock without any shadow and four time smaller than the original.
Blue color
a rock is being crunched so there is smoke and peaces of rocks viewed from top.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Un trophée de victoire sous forme d'une coupe d'où s'échappe un feu d'artifice.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Red bulldozer viewed strictly from top. Top view as if we are a drone.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Remove yellow lines.