changement condition victoire
This commit is contained in:
parent
db33d3337b
commit
99b1fa016a
1 changed files with 27 additions and 33 deletions
38
demineur.js
38
demineur.js
|
@ -1,21 +1,10 @@
|
||||||
class Case_grille {
|
|
||||||
constructor(x, y) {
|
|
||||||
this.posX = x;
|
|
||||||
this.posY = y;
|
|
||||||
this.isMine = false;
|
|
||||||
this.number = 0;
|
|
||||||
this.hidden = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
let grille = [];
|
let grille = [];
|
||||||
let hauteur = 7;
|
let hauteur = 7;
|
||||||
let largeur = 7;
|
let largeur = 7;
|
||||||
let number_mines = 10 ;
|
let number_mines = 10 ;
|
||||||
let first_click = true ;
|
let first_click = true ;
|
||||||
|
let arret=0;
|
||||||
|
let cases_restantes = hauteur*largeur - number_mines ;
|
||||||
|
|
||||||
|
|
||||||
function getRandomInt(maxi) {
|
function getRandomInt(maxi) {
|
||||||
|
@ -101,8 +90,7 @@ function sleep(ms){
|
||||||
async function chrono(){
|
async function chrono(){
|
||||||
let k=document.getElementById("temps").value;
|
let k=document.getElementById("temps").value;
|
||||||
const myButton = document.getElementById("fin_game");
|
const myButton = document.getElementById("fin_game");
|
||||||
let arret=0;
|
arret = 0 ;
|
||||||
myButton.addEventListener("click",() =>{arret=1;})
|
|
||||||
|
|
||||||
while(arret==!1) {
|
while(arret==!1) {
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
|
@ -111,6 +99,7 @@ async function chrono(){
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
async function reset(){
|
async function reset(){
|
||||||
|
|
||||||
|
@ -171,6 +160,12 @@ function selectImage(idCase) {
|
||||||
chrono() ;
|
chrono() ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (grille[y][x] === 9 && arret == 0) {
|
||||||
|
arret = 1;
|
||||||
|
alert("Vous avez perdu !");
|
||||||
|
MontrerMines();
|
||||||
|
}
|
||||||
|
|
||||||
if (grille[y][x] == 0) {
|
if (grille[y][x] == 0) {
|
||||||
for (var m = Math.max(0, y - 1); m < Math.min(hauteur, y + 2); m++) {
|
for (var m = Math.max(0, y - 1); m < Math.min(hauteur, y + 2); m++) {
|
||||||
for (var n = Math.max(0, x - 1); n < Math.min(largeur, x + 2); n++) {
|
for (var n = Math.max(0, x - 1); n < Math.min(largeur, x + 2); n++) {
|
||||||
|
@ -190,14 +185,11 @@ function changeImage(targetCase) {
|
||||||
if (!(targetCase.classList.contains("buttonFlagged"))) {
|
if (!(targetCase.classList.contains("buttonFlagged"))) {
|
||||||
targetCase.classList.add("buttonRevealed") ;
|
targetCase.classList.add("buttonRevealed") ;
|
||||||
targetCase.style.background= selectImage(targetCase.id) ;
|
targetCase.style.background= selectImage(targetCase.id) ;
|
||||||
const coords = targetCase.id.split("_");
|
|
||||||
const y = parseInt(coords[0]);
|
|
||||||
const x = parseInt(coords[1]);
|
|
||||||
|
|
||||||
if (grille[y][x] === 9) {
|
cases_restantes = cases_restantes - 1 ;
|
||||||
alert("Vous avez perdu !");
|
|
||||||
MontrerMines();
|
if (cases_restantes == 0 && arret == 0) {
|
||||||
} else if (jeuFini()) {
|
arret = 1 ;
|
||||||
alert("Félicitations ! Vous avez gagné !");
|
alert("Félicitations ! Vous avez gagné !");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -210,6 +202,8 @@ function resetJeu(mouseEvent) {
|
||||||
divJeu.removeChild(divJeu.children[0]) ;
|
divJeu.removeChild(divJeu.children[0]) ;
|
||||||
mouseEvent.target.removeEventListener("click",resetJeu) ;
|
mouseEvent.target.removeEventListener("click",resetJeu) ;
|
||||||
grilleButtons(hauteur, largeur) ;
|
grilleButtons(hauteur, largeur) ;
|
||||||
|
cases_restantes = hauteur*largeur - number_mines ;
|
||||||
|
arret = 1 ;
|
||||||
first_click = true ;
|
first_click = true ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue