1. <html>
  2. <head>
  3. <title> Taquin </title>
  4. <script language="JavaScript">
  5. function papillon(a,b){
  6. var morceau = (a+1)+b*4;
  7. var uneImage = "papill" + morceau + ".JPG";
  8. return uneImage;
  9. }
  10. function numero_id(a,b){
  11. var nb = eval( (b+a)+a*4)
  12. return nb;
  13. }
  14. function proximite(colonne,ligne){
  15. if (vide[0] == colonne) {
  16. if ( vide[1] == eval( ligne + 1) || vide[1] == eval( ligne - 1)) {
  17. return 1; //le vide et l'image sont sur la même colonne
  18. }
  19. else {
  20. return 0;
  21. }
  22. }
  23. else {
  24. if (vide[1] == ligne) {
  25. if ( vide[0] == eval( colonne + 1) || vide[0] == eval( colonne - 1)) {
  26. return 2;//le vide et l'image sont sur la même ligne
  27. }
  28. else {
  29. return 0;
  30. }
  31. }
  32. else {
  33. return 0;
  34. }
  35. }
  36. }
  37. function echanger (colonne,ligne){
  38. var source = document.getElementById(numero_id(colonne,ligne)).src;
  39. var neant = document.getElementById(numero_id(vide[0],vide[1])).src;
  40. document.getElementById(numero_id(colonne,ligne)).src = neant;
  41. document.getElementById(numero_id(vide[0],vide[1])).src = source;
  42. vide[0] = colonne;
  43. vide[1] = ligne;
  44. function cliquer(colonne,ligne){
  45. var p = proximite(colonne,ligne) ;
  46. if ( p == 0) {
  47. window.alert("Mouvement impossible");
  48. }
  49. else {
  50. echanger(colonne,ligne);
  51. };
  52. }
  53. function onMelange( F ) { for (var i= 1 ; i<= parseInt(F) ; i++){ var Direction = '0'; var Cx ; var Cy ; while ( Direction == '0') { Direction = Hazard( vide[0] , vide[1] ); } switch (Direction) { case '1': //deplacer le vide vers le haut Cx = vide[0]; Cy =vide[1]-1; break; case '2': //deplacer le vide vers le bas Cx = vide[0]; Cy =vide[1]+1; break; case '3': //deplacer le vide vers la droite Cx = vide[0]+1; Cy =vide[1]; break; case '4': //deplacer le vide vers la gauche Cx = vide[0]-1; Cy =vide[1]; break; } ; echanger(Cx,Cy); } }
  54. //melanger les images un peu 1, moyennement 2, beaucoup 3, on deplace la case vide
  55. function onMelange( F ) {
  56. for (var i= 1 ; i<= parseInt(F) ; i++){var Direction = '0';var Cx ;var Cy ;
  57. while ( Direction == '0') {Direction = Hazard( vide[0] , vide[1] ); }
  58. switch (Direction) {case '1': //deplacer le vide vers le haut
  59. Cx = vide[0];
  60. Cy =vide[1]-1;
  61. break;
  62. case '2': //deplacer le vide vers le bas
  63. Cx = vide[0];
  64. Cy =vide[1]+1;
  65. break;
  66. case '3': //deplacer le vide vers la droite
  67. Cx = vide[0]+1;
  68. Cy =vide[1];
  69. break;
  70. case '4': //deplacer le vide vers la gauche
  71. Cx = vide[0]-1;
  72. Cy =vide[1];
  73. break;
  74. } ;echanger(Cx,Cy); } }
  75. //melanger les images un peu 1, moyennement 2, beaucoup 3, on deplace la case vide
  76. function onMelange( F ) {
  77. for (var i= 1 ; i<= parseInt(F) ; i++){var Direction = '0';var Cx ;var Cy ;
  78. while ( Direction == '0') {Direction = Hazard( vide[0] , vide[1] ); }
  79. switch (Direction) {case '1': //deplacer le vide vers le haut
  80. Cx = vide[0];
  81. Cy =vide[1]-1;
  82. break;
  83. case '2': //deplacer le vide vers le bas
  84. Cx = vide[0];
  85. Cy =vide[1]+1;
  86. break;
  87. case '3': //deplacer le vide vers la droite
  88. Cx = vide[0]+1;
  89. Cy =vide[1];
  90. break;
  91. case '4': //deplacer le vide vers la gauche
  92. Cx = vide[0]-1;
  93. Cy =vide[1];
  94. break;
  95. } ;echanger(Cx,Cy); } }
  96. var limiteX = 3; //colonnes 0 à limiteX
  97. var limiteY = 3; //lignes 0 à limiteY
  98. var vide = new Array(limiteX,limiteY);//position de la case vide
  99. //le reseau de cases est fixe
  100. //les images sont mobiles et attribuées temporairement à une case
  101. //parties et fonctions à rajouter ici dans l'ordre
  102. </script>
  103. </head>
  104. <body>
  105. <form>
  106. <table>
  107. <script language="JavaScript">
  108. for (var i =0 ; i<=limiteX ; i++){
  109. document.write(" <tr> ");
  110. for (var j=0 ; j<=limiteY ; j++){
  111. var LeMorceau = papillon(j,i) ;
  112. document.write("<td > <img id="+numero_id(i,j)+" src=' "+LeMorceau+" ' onClick='javascript:cliquer("+i+","+j+")' > </td>");
  113. }
  114. document.write(" </tr> </br>");
  115. }
  116. </script>
  117. </table></br>
  118. <p> Choisir la difficult&eacute </p>
  119. <select name="choix" >
  120. <option value='30'> facile </option>
  121. <option value='45'> moyen </option>
  122. <option value='60'> difficile </option>
  123. </select>
  124. <input type="button" value="Valider" onClick="javascript:onMelange(choix.value)"/>
  125. </form>
  126. </body>
  127. </html>

TAQUIN ETRE2EN1