ajout perte de l'user
This commit is contained in:
parent
0342d7e75c
commit
8e63460a0e
1 changed files with 42 additions and 1 deletions
43
demineur.js
43
demineur.js
|
@ -13,12 +13,42 @@ class Case_grille {
|
||||||
|
|
||||||
let grille = [];
|
let grille = [];
|
||||||
let hauteur = 7;
|
let hauteur = 7;
|
||||||
let largeur = 14;
|
let largeur = 7;
|
||||||
let number_mines = 10 ;
|
let number_mines = 10 ;
|
||||||
let first_click = true ;
|
let first_click = true ;
|
||||||
|
|
||||||
|
|
||||||
|
function jeuFini() {
|
||||||
|
for (let i = 0; i < hauteur; i++) {
|
||||||
|
for (let j = 0; j < largeur; j++) {
|
||||||
|
const caseElement = document.getElementById(i + "_" + j);
|
||||||
|
const caseData = grille[i][j];
|
||||||
|
|
||||||
|
if (caseData === 9) { // Case contenant une mine
|
||||||
|
if (!caseElement.classList.contains("buttonFlagged")) {
|
||||||
|
return false; // Une mine n'est pas marquée
|
||||||
|
}
|
||||||
|
} else { // Case ne contenant pas de mine
|
||||||
|
if (!caseElement.classList.contains("buttonRevealed")) {
|
||||||
|
return false; // Une case non-mine n'est pas révélée
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true; // Toutes les conditions sont remplies
|
||||||
|
}
|
||||||
|
|
||||||
|
function MontrerMines() {
|
||||||
|
for (let i = 0; i < hauteur; i++) {
|
||||||
|
for (let j = 0; j < largeur; j++) {
|
||||||
|
if (grille[i][j] === 9) {
|
||||||
|
const mineCase = document.getElementById(i + "_" + j);
|
||||||
|
mineCase.style.background = "url('case_9.png')";
|
||||||
|
mineCase.classList.add("buttonRevealed");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function creerGrille(haut, larg, mine_nb, x_first, y_first) {
|
function creerGrille(haut, larg, mine_nb, x_first, y_first) {
|
||||||
grille.length = haut;
|
grille.length = haut;
|
||||||
|
@ -155,7 +185,18 @@ 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) {
|
||||||
|
alert("Vous avez perdu !");
|
||||||
|
MontrerMines();
|
||||||
|
} else if (jeuFini()) {
|
||||||
|
alert("Félicitations ! Vous avez gagné !");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue