Merge branch 'main' of https://git.etud.insa-toulouse.fr/bocquel/Projet_JS
This commit is contained in:
commit
1a122689f4
3 changed files with 70 additions and 29 deletions
|
@ -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>
|
||||||
|
|
49
demineur.js
49
demineur.js
|
@ -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;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
25
style.css
25
style.css
|
@ -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;
|
||||||
|
|
Loading…
Reference in a new issue