From a80c9c5bd5091bc7d08ee615e3df72f1081cb76a Mon Sep 17 00:00:00 2001 From: gwen Date: Thu, 29 Feb 2024 15:27:47 +0100 Subject: [PATCH] nettoyer code --- .../src/components/jeux/pendu/Pendu.vue | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/science-quest/src/components/jeux/pendu/Pendu.vue b/science-quest/src/components/jeux/pendu/Pendu.vue index 410b68b..b965add 100644 --- a/science-quest/src/components/jeux/pendu/Pendu.vue +++ b/science-quest/src/components/jeux/pendu/Pendu.vue @@ -28,24 +28,32 @@ export default{ //appeler l'API fetch(`${REST_API}/scientifiques?page=`+this.intAleatoire(this.api_pagesMaximum)).then(response=>{ response.json().then(json=>{ - //todo commenter ce truc - this.partieTerminee = false; - this.premierePartie = false; + //prendre le scientifique de la requete const arrayScientifique=json._embedded const scientifiqueADeviner=arrayScientifique[this.intAleatoire(arrayScientifique.length)] + //prendre le mot a deviner a partir du nom du scientifique this.motADeviner = scientifiqueADeviner.nom.toLowerCase() + " " + scientifiqueADeviner.prenom.toLowerCase() this.nbLettresADeviner = this.motADeviner.length + this.viesRestantes = 10; // TODO utiliser l'api - this.progression = "_".repeat(this.nbLettresADeviner); - this.lettresDejaDevine = ""; + //verifier que le mot a deviner ne contient pas des lettres exemptées + this.lettresDejaDevine = ""; this.motADeviner.split("").forEach(lettre=> this.regexExceptions.forEach(regex=>regex.test(lettre) ? this.lettresDejaDevine+=lettre /* faire jouer la lettre a la place de l'utilisateur */ : null) ) - + + //rafraichir la progression + this.progression = this.afficherProgression("") + + //demarrer le jeu + this.afficherLeJeu() }) }) - + }, + afficherLeJeu(){ + this.partieTerminee = false; + this.premierePartie = false; }, deviner: function (event) { //prendre la lettre depuis l'event @@ -54,7 +62,7 @@ export default{ event.target.value = ""; //envoyer lettreDevinee a l'api const oldprogression = this.progression; - this.progression = this.debug_letreDevinee(lettreDevinee); + this.progression = this.afficherProgression(lettreDevinee); // /!\ code temporaire, local uniquement : TODO remplacer avec l'api if (oldprogression == this.progression) { @@ -62,7 +70,7 @@ export default{ this.viesRestantes--; //l'api devrait aussi retourner le nombre de vies restantes if(this.viesRestantes<0){ this.partieTerminee = true - this.progression = this.debug_letreDevinee(lettreDevinee); + this.progression = this.afficherProgression(lettreDevinee); } } //fin code temporaire @@ -76,7 +84,7 @@ export default{ this.lettresDejaDevine += lettreDevinee; } }, - debug_letreDevinee: function (lettre) { + afficherProgression: function (lettre) { if (this.viesRestantes < 0) { return this.motADeviner; //plus de vies = fin de la partie, l'api retourne le mot qu'on devait trouver }