/**********************************| | Code pour interagir avec Pentis. | |**********************************/ console.log("Début."); /* Pour contrôler la visibilité de la grille. */ /* Texte interactif. */ var iciTexte = document.getElementById("iciTexte"); /* Lien hypertexte pour masquer la grille. */ var ici = document.getElementById("ici"); /* Cadre de la grille. */ var cadreGrille = document.getElementById("grille"); var grilleCachee = true;//Besoin de préciser ? function alterner(evt) { if(grilleCachee)//Si caché. { cadreGrille.style.display = "block"; iciTexte.innerText = "masquera la grille"; grilleCachee = false; } else//Si visible. { cadreGrille.style.display = "none"; iciTexte.innerText = "affichera la grille"; grilleCachee = true; } } /* Écoute des clics sur l'hypertexte "ici". */ ici.addEventListener("click", alterner); /******************************************************************************/ /* Début du tableau principal appelé la grille. */ var grille = [];//Tableau principal vide. const NB_L = 24;//Total de ligne. const NB_C = 40;//Total de colonnes. for(let l=0; l fc.x-50 && cy < fc.y+50 && cy > fc.y-50) { console.log(`Curseur dans les flèches (x=${cx} y=${cy}).`); } if(cx < fc.x+50 && cx > fc.x-50 && cy < fc.y+50 && cy > fc.y-50) { console.log(`Curseur dans les flèches (x=${cx} y=${cy}).`); } if(cx < fc.x+50 && cx > fc.x-50 && cy < fc.y+50 && cy > fc.y-50) { console.log(`Curseur dans les flèches (x=${cx} y=${cy}).`); } if(cx < fc.x+50 && cx > fc.x-50 && cy < fc.y+50 && cy > fc.y-50) { console.log(`Curseur dans les flèches (x=${cx} y=${cy}).`); } /* Si dans les cercles. */ if(cx < bc.x+40 && cx > bc.x-40 && cy < bc.y+40 && cy > bc.y-40) { console.log(`Curseur dans les cercles (x=${cx} y=${cy}).`); } /* Si dans les ellipses. */ if(cx < ec.x+40 && cx > ec.x-40 && cy < ec.y+20 && cy > ec.y-20) { console.log(`Curseur dans les ellipses (x=${cx} y=${cy}).`); } } /* Écouteur de position. */ document.querySelector("#toile").addEventListener("mousemove", suivre); /* Écouteur de clic. */ document.querySelector("#toile").addEventListener("click", action); /* Construction du tableau secondaire : * un pentomino est construit dans un * tableau mobile. */ var pento = {//Pentomino nul. l:0,//Ligne d'origine. c:0,//Colonne d'origine. mtx:[//Sous-tableau mobile. [0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0] ] }; nvPentomino(1,1,0,grille); tblEcrire(grille);//Matrice initiale. tblDessin(grille); var accesd = accesADroite(1,1,0,grille); var accesg = accesAGauche(1,1,0,grille); sprPentomino(1,1,0,grille); function essai(no) { sprPentomino(no,0,0,grille); nvPentomino(no+1,0,0,grille); tblEcrire(grille); tblDessin(grille); } var no=0; var boucle = window.setInterval( ()=>{no++; essai(no);}, 1000); window.setTimeout( ()=>{window.clearInterval(boucle);}, 64000); console.log("Fin.");