Bonjour à tous,

Je suis débutant en JavaScript et je dois réaliser un jeu
Il s'agit du jeu des allumet
Il y a un bouton "Initialiser" (avec la fonction initialiser()), un des joueurs en choisit quel nombre au départ, il permet aussi de recommencer une partie.
Puis il y a un bouton "Enlever" (avec la fonction enlever()), chaque joueur à leur tour enlève entre 1 à 3 allu.

J'ai 2 questions:
- Tout d'abord ma fonction enlever() ne fonctionne pas comme elle devrait, je vous demande de m'aider afin de savoir d'où pourrait provenir le bug?
Chaque clic sur le bouton Enlever active donc la fonction "enlever()".
Voici le code de la fonction en question :

On commence par le code HTML dans le body (je n'ai pas tout mit) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
        <p>
            <button type="submit" onclick="enlever()">Enlever</button><input type="text" id="alluEnlevees"/>
        </p>
        <p>
            <button type="submit" onclick="initialiser()">(Re)Initialiser</button><input type="text" value="2" id="nbAllu"/>
        </p>
        <script>
            function enlever() {
                var nbAlluEnlevees = document.getElementById("alluEnlevees").value;
                var nbAllu = document.getElementById("nbAllu").value;
// Image d'une flamme qui s'affiche à l'écran au tout début du jeu et qui se remplace par l'image du nombre d'allu tapé dans le champ Initialiser
                var flammeElt = document.getElementById("flamme");
 
                if ((nbAlluEnlevees == "") || (nbAlluEnlevees > 3) || (nbAlluEnlevees < 1)) {
                    alert("Veuillez entrer un chiffre compris entre 1 et 3");
                } else if (nbAllu < nbAlluEnlevees) {
                    alert("Veuillez choisir un chiffre inférieur");
                } else {
                    for (var i=nbAlluEnlevees-1; i>=0; i--) {
// On retire le dernier enfant, à chaque itération la fonction devrait enlever 1 image d'une allu mais ce n'est pas ce qui se passe
                        flammeElt.removeChild(flammeElt.lastChild);
                    }
                    nbAllu -= nbAlluEnlevees;
                }
                    alert("Il reste : " + nbAllu);
 
                    if (nbAllu == 0) {
//  Je n'ai pas encore initialisé de variable joueur.
                        flammeElt.innerHTML = "<p>Le " + "joueur" + " a gagné</p>";
                    }
            }
        </script>
Si quelqu'un pouvait me donner quelques pistes ça serait vraiment génial.

- Ensuite, comme le titre l'indique (jeu 2 joueurs) je souhaiterai que lorsqu'un joueur clic sur le bouton "Enlever" qui active la fonction enlever(), il faudrait que cela change de joueur pour pouvoir afficher qui est le gagnant soit le joueur1 ou le joueur2.
J'ai pensé à mettre une condition "if" avec une variable "joueur" qui varie entre 0 et 1, mais je ne sais pas comment faire cela.
Je dois déterminer quand un joueur clic sur le bouton pour savoir quand changer de joueur.
Avez-vous certaines idées?

Merci beaucoup à tous, j'attends avec impatience vos réponses.