Exercice JavaScript

muzan0jackson Messages postés 19 Statut Membre -  
jordane45 Messages postés 40050 Statut Modérateur -
Bonjour. Je suis bloqué dans les deux dernières questions de mon travaille.
Les voici :
1) Modifier la fonction de vérification pour qu'elle joue le son "échec.mp3" si c'est une réponse fausse et le son "bravo.mp3 si c'est une réponse juste.
2) Si l'on clique plusieurs fois de suite sur une bonne réponse, on continue à engranger des points. On voudrait corriger ce fonctionnement et faire en sorte que chaque réponse juste oblige le joueur à recliquer sur le bouton "jouer".

Merci d'avance !!!

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Le script :

// sons est un tableau qui contient les id des sons disponibles
sons = ["agneau", "tigre", "canard", "lapin", "tarentule", "chaton", "suricate", "ecureuil", "koala"];
// memoire est un "tableau" qui va contenir le son voulu à l'index 0, le nombre de coups à l'index 1 et le nombre de coups réussi à l'index 2
memoire = ["aucun_choix", 0, 0];

function verifier(nom) {
	/* Fonction qui vérifie si le joueur a bien cliqué sur la bonne image */
	document.getElementById(nom).play(); // Joue un son dont le id correspond à nom
	memoire[1] = memoire[1] + 1; // on incrémente l'index 1 de memoire
	document.getElementById('coups').innerHTML = memoire[1]
	if (nom == memoire[0]) {
		memoire[2] = memoire[2] + 1 ;
		document.getElementById('points').innerHTML = memoire[2];
	}
}

function choisir_un_son_au_hasard(){
	/* Fonction qui choisit et joue un son parmi sons et place l'id dans memoire[0] 
	.. effet de bord : modifie l'index 0 de memoire en y plaçant "agneau" ou autre ...
	*/
	var longueur = sons.length;
	var index_aleatoire = 1 + Math.floor(Math.random() * longueur) ; // entre 0 et (longueur-1)
	memoire[0] = sons[index_aleatoire]; // on place l'id sélectionné dans son_voulu[0]
	document.getElementById(memoire[0]).play(); // on joue le son pour que le joueur le retrouve 
}

function demarrage(){
	document.getElementById('coups').innerHTML = memoire[1]; // affichage initial du nombre de coups
	document.getElementById('points').innerHTML = memoire[2]; // affichage initial du nombre de points
}	

window.addEventListener("load", demarrage);

1 réponse

jordane45 Messages postés 40050 Statut Modérateur 4 754
 
Bonjour,

Tu dis "bloquer" ... mais... qu'as tu essayé ?
pour rappel : https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
0
muzan0jackson Messages postés 19 Statut Membre
 
J'ai fait :
// sons est un tableau qui contient les id des sons disponibles
sons = ["agneau", "tigre", "canard", "lapin", "tarentule", "chaton", "suricate", "ecureuil", "koala"];
// memoire est un "tableau" qui va contenir le son voulu à l'index 0, le nombre de coups à l'index 1 et le nombre de coups réussi à l'index 2
memoire = ["aucun_choix", 0, 0];

function verifier(nom) {
	/* Fonction qui vérifie si le joueur a bien cliqué sur la bonne image */
	document.getElementById(nom).play(); // Joue un son dont le id correspond à nom
	memoire[1] = memoire[1] + 1; // on incrémente l'index 1 de memoire
	document.getElementById('coups').innerHTML = memoire[1]
	if (nom == memoire[0]) {
		memoire[2] = memoire[2] + 1 ;
		document.getElementById('points').innerHTML = memoire[2];
	}
   if (nom == document.getElementById) {
       play ("bravo.mp3)
   }
  else {
        play("échec.mp3)
  }

function choisir_un_son_au_hasard(){
	/* Fonction qui choisit et joue un son parmi sons et place l'id dans memoire[0] 
	.. effet de bord : modifie l'index 0 de memoire en y plaçant "agneau" ou autre ...
	*/
	var longueur = sons.length;
	var index_aleatoire = 1 + Math.floor(Math.random() * longueur) ; // entre 0 et (longueur-1)
	memoire[0] = sons[index_aleatoire]; // on place l'id sélectionné dans son_voulu[0]
	document.getElementById(memoire[0]).play(); // on joue le son pour que le joueur le retrouve 
}

function demarrage(){
	document.getElementById('coups').innerHTML = memoire[1]; // affichage initial du nombre de coups
	document.getElementById('points').innerHTML = memoire[2]; // affichage initial du nombre de points
}	

window.addEventListener("load", demarrage);
0
jordane45 Messages postés 40050 Statut Modérateur 4 754 > muzan0jackson Messages postés 19 Statut Membre
 
Ton if ligne 15 est totalement faux...
Et puis . Ne l'as tu pas déjà ligne 11 ?
0