This commit is contained in:
Bocquel Raphael 2025-01-01 19:02:51 +01:00
commit 1a122689f4
3 changed files with 70 additions and 29 deletions

View file

@ -28,7 +28,7 @@
Mines restantes:10 Mines restantes:10
</div> </div>
<div class="item_nav"> <div class="item_nav">
<button id="options-button">Options</button> <button id="options-button" onclick="options()">Options</button>
</div> </div>
</nav> </nav>
@ -39,10 +39,10 @@
</div> </div>
<!-- <button id="debut_game" class="game_button" onclick="chrono()">GO!</button>--> <!-- <button id="debut_game" class="game_button" onclick="chrono()">GO!</button>-->
<button id="fin_game" class="game_button" onclick="reset()">RESET</button> <button id="fin_game" class="game_button" onclick="resetJeu()">Abandon</button>
<div id="cookies-popup" class="popup"> <div id="cookies-popup" class="popup">
<div class="popup-content"> <div id="cookies-popup-content">
<h2>Bonjour !</h2> <h2>Bonjour !</h2>
<p>Voulez vous des cookies?</p> <p>Voulez vous des cookies?</p>
@ -52,14 +52,21 @@
</div> </div>
<div id="options-popup" class="popup"> <div id="options-popup" class="popup">
<div class="popup-content"> <div id="options-popup-content">
<h2>Options</h2> <h2>Options</h2>
<label for="hauteur">Hauteur:</label> <label for="hauteur">Hauteur:</label>
<input type="number" id="hauteur" value="7"> <input type="number" id="hauteur" value="7">
<br>
<label for="largeur">Largeur:</label> <label for="largeur">Largeur:</label>
<input type="number" id="largeur" value="7"> <input type="number" id="largeur" value="7">
<label for="nombre_mines">Nombre de mines:</label> <label for="nombre_mines">Nombre de mines:</label>
<input type="number" id="nombre_mines" value="10"> <input type="number" id="nombre_mines" value="10">
<br>
<label for="nombre_mines">Nombre de mines:</label>
<input type="number" id="nombre_mines" value="10">
<br><br>
<button id="save-options">Sauvegarder</button> <button id="save-options">Sauvegarder</button>
<button id="close-options">Fermer</button> <button id="close-options">Fermer</button>
</div> </div>

View file

@ -10,21 +10,45 @@ let cases_restantes = hauteur*largeur - nombre_mines ;
//Assignation de leurs fonctions aux différents boutons //Assignation de leurs fonctions aux différents boutons
document.getElementById('options-button').addEventListener('click', () => { function gererOptions() {
document.getElementById('options-popup').classList.add('show'); const newHauteur = parseInt(document.getElementById('hauteur').value);
}); const newLargeur = parseInt(document.getElementById('largeur').value);
const newNumberMines = parseInt(document.getElementById('nombre_mines').value);
if (newHauteur > 12 || newLargeur > 12) {
alert("Les dimensions ne doivent pas dépasser 12x12.");
return;
}
const maxMines = newHauteur * newLargeur - 1;
if (newNumberMines < 1 || newNumberMines > maxMines) {
alert(`Le nombre de mines doit être entre 1 et ${maxMines}.`);
return;
}
hauteur = newHauteur;
largeur = newLargeur;
nombre_mines = newNumberMines;
document.getElementById('options-popup').classList.remove('show');
resetJeu();
}
function options() {
document.getElementById("options-popup").classList.add("show");
document.getElementById('close-options').addEventListener('click', () => { document.getElementById('close-options').addEventListener('click', () => {
document.getElementById('options-popup').classList.remove('show'); document.getElementById('options-popup').classList.remove('show');
}); });
document.getElementById('save-options').addEventListener('click', () => { // Ajout de l'écouteur d'événement
hauteur = parseInt(document.getElementById('hauteur').value); document.getElementById('save-options').addEventListener('click', gererOptions);
largeur = parseInt(document.getElementById('largeur').value); }
nombre_mines = parseInt(document.getElementById('nombre_mines').value);
document.getElementById('options-popup').classList.remove('show'); // Exemple de suppression de l'écouteur d'événement
resetJeu(); document.getElementById('save-options').removeEventListener('click', gererOptions);
});
document.getElementById("fin_game").addEventListener("click", resetJeu) ; document.getElementById("fin_game").addEventListener("click", resetJeu) ;
@ -124,11 +148,7 @@ async function chrono(){
} }
} }
async function reset(){
document.getElementById("temps").value=0;
}
@ -228,6 +248,7 @@ function resetJeu() {
cases_restantes = hauteur*largeur - nombre_mines ; cases_restantes = hauteur*largeur - nombre_mines ;
arret = 1 ; arret = 1 ;
premier_click = true ; premier_click = true ;
document.getElementById("temps").value=0;
} }

View file

@ -18,13 +18,18 @@
} }
#jeu{ #jeu{
display: flex; display: flex;
justify-content: left; justify-content: center;
align-items: center;
border-width: 2px; border-width: 2px;
border-style: double; border-style: double;
width: 49%; width: 50%;
max-width: 600px;
background-color: #fff; background-color: #fff;
border-radius: 10px;
box-shadow: 13px 12px 20px 18px rgba(0, 0, 0, 0.2);
padding: 20px;
margin: 50px auto auto ;
} }
#grille { #grille {
@ -60,13 +65,13 @@
transition: visibility 0.3s, opacity 0.3s; transition: visibility 0.3s, opacity 0.3s;
} }
#cookies-popup.show,#options-popup.show { .popup.show{
visibility: visible; visibility: visible;
opacity: 1; opacity: 1;
} }
.popup-content { #cookies-popup-content {
background-color: #fff; background-color: #fff;
padding: 20px; padding: 20px;
border-radius: 10px; border-radius: 10px;
@ -75,7 +80,15 @@
max-width: 400px; max-width: 400px;
width: 100%; width: 100%;
} }
#options-popup-content {
background-color: #fff;
padding: 30px;
border-radius: 10px;
text-align: center;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
max-width: 400px;
width: 100%;
}
#accept-button, #refuse-button, #save-options, #close-options { #accept-button, #refuse-button, #save-options, #close-options {
background-color: #007BFF; background-color: #007BFF;
color: #fff; color: #fff;