nougatine0179 | Bonjour à tous,
Je conçois un petit jeu de memory tout simple mais je bloque littéralement car le script ne démarre pas on dirait.
Je ne sais plus quoi faire.
Voici un extrait du fichier html (la div contenant mes cartes) :
Voici mon script sur un fichier .js que j'ai inclus dans le head de mon fichier html :
Code :
- // JavaScript Document
- var cartes = new Array (12);
- var repere = new Array (12);
- var gravure = new Array (12);
- var nbrecarte = cartes.length;
- var chemin = "images/";
- var clic = 0;
- var essai = 0;
- var trouve = 0;
- var melanger = 0;
- //cette fonction est appelée dans la fonction mélange//
- function installation()
- {
- //On reprécise la class du tableau html //
- document.getElementById('jeu').className = "tablejeu";
- // parcours du tableau des cartes de dos //
- for(var dos=0 ; dos<nbrecarte ; dos++);
- //on instruit les propriétés de l'image du dos //
- {
- document.images[dos].src = cartes[dos];
- document.images[dos].src = "dos.jpg";
- //on instruit la visibilité des boutons et images qui devront disparaitre//
- document.getElementsByTagName('td')[dos].style.visibility = "visible";
- }
- //on installe les compteurs, c'est un peu superflu car ils sont déjà déclarés //
- essai = 0;
- trouve = 0;
- }
- //_______________________________________________________________________//
- //_______________________________________________________________________//
- function melange()
- {
- // //
- melanger = 1;
- installation();
- for (indice=0 ; indice<=nbrecarte; indice++)
- {
- repere[indice]= 0;
- }
- //toutes le cases du tab repere sont égales à zero//
- var face= 0;
- while (face < nbrecarte )
- {
- //toutes le cases du tab repere sont égales à zero//
- numero = Math.floor (nbrecarte * Math.random());
- numero++;
- //
- if (repere[numero] == 0)
- {
- gravure[face] = numero;
- cartes[face] = chemin + numero + ".jpg" ;
- //document.images[face].src = cartes[face] ; //
- repere[numero] = 1 ;
- face++;
- }
- }
- }
- //_____________________________________________________________________//
- //_______________________________________________________________________//
- function recuperer(numero)
- {
- if (melanger == 1)
- {
- document.images[numero].src = cartes[numero];
- if ( clic == 0 )
- {
- facea = gravure[numero];
- n1 = numero;
- }
- if ( clic == 1 )
- {
- faceb = gravure[numero];
- n2 = numero;
- clic = -1;
- agiretcompter(facea,faceb,n1,n2);
- }
- clic++;
- }
- else
- {
- alert ("Commencez la partie en cliquant sur JOUER" );
- }
- }
- //_______________________________________________________________________//
- //_______________________________________________________________________//
- function changerClass(){
- //On recupere l'element html dans le document//
- var e = document.getElementById("jeu" );
- //on modifie sa classe css pour changer l'image de fond du jeu//
- e.className = 'nouvelletable';
- }
- //________________________________________________________//
- function agiretcompter(facea,faceb,n1,n2)
- {
- if (facea == faceb )
- {
- alert ("Attention il ne faut pas cliquer 2 fois sur la même image" );
- }
- if ( (facea == (faceb - nbrecarte/2)) || (faceb == (facea - gravure.length/2)))
- {
- trouve++;
- essai++;
- window.setTimeout('document.getElementsByTagName("td" )[n1].style.visibility = "hidden"',400);
- window.setTimeout('document.getElementsByTagName("td" )[n2].style.visibility = "hidden"',400);
- }
- else
- {
- window.setTimeout('document.images[n1].src = "dos.jpg"',300);
- window.setTimeout('document.images[n2].src = "dos.jpg"',300);
- essai++;
- }
- if (trouve == nbrecarte/2 )
- {
- alert('Bravo c\'est gagné en : \n ' + essai + ' coups ');
- window.setTimeout('changerClass()',100);
- melanger = 0;
- }
- }
|
Message édité par nougatine0179 le 15-05-2012 à 12:09:11
|