correction selection qui clignote + message page d'accueil supprime

master
theo 4 years ago
parent a6b72639da
commit 17614d63b4

@ -1,4 +1,4 @@
<?php <?php
session_start(); session_start();
require("ConnexionBDD.php"); require("ConnexionBDD.php");
?> ?>
@ -18,7 +18,7 @@ require("ConnexionBDD.php");
<link rel="stylesheet" href="css/Resp3.css"> <link rel="stylesheet" href="css/Resp3.css">
<link rel="stylesheet" href="css/phone.css"> <link rel="stylesheet" href="css/phone.css">
<script type="text/javascript" src="js/main2.js"></script> <script type="text/javascript" src="js/main.js"></script>
<script type="text/javascript" src="js/menu.js"></script> <script type="text/javascript" src="js/menu.js"></script>
<script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/jquery.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@simonwep/pickr/dist/pickr.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/@simonwep/pickr/dist/pickr.min.js"></script>
@ -982,12 +982,14 @@ require("ConnexionBDD.php");
<div id="ActualiserID"> <div id="ActualiserID">
<p>C</p> <p> </p>
</div> </div>
<script> <script>
$(document).ready(function(){ $(document).ready(function(){
setInterval(function(){ setInterval(function(){
if(selectionMode==4 && document.getElementById("pageAccueil").style.visibility == "hidden") {
$("#ActualiserID").load('ActualiserIDPartie.php'); $("#ActualiserID").load('ActualiserIDPartie.php');
}
}, 500); }, 500);
}); });
</script> </script>

@ -16,20 +16,126 @@ var selectionMode = 0;
var selectionDiemension = 0; var selectionDiemension = 0;
var allModeFrench = ["Match à Point", "Mode Timer", "Infini", "Bac", "MultiJoueur"]; // Défini tout les modes de Jeu en français var allModeFrench = ["Match à Point", "Mode Timer", "Infini", "Bac", "MultiJoueur"]; // Défini tout les modes de Jeu en français
var allModeEngl = ["Point Match", "Timer mode", "Infini", "Bac", "MultiPlayer"]; // Défini tout les modes de Jeu en Anglais var allModeEngl = ["Point Match", "Timer mode", "Infini", "Bac", "MultiPlayer"]; // Défini tout les modes de Jeu en Anglais
var tab2=[];
var modelangue = false; var modelangue = false;
var offreSWISH = false; var offreSWISH = false;
var carteselectPos = [];
var lesPoints = 0; //Points du Joueur1 var lesPoints = 0; //Points du Joueur1
function majSizeCard(column) { function majSizeCard(column) {
var newTailleOrdi = column * 3.3 + 1; var newTailleOrdi = column * 3.3 + 1;
var newTailleTablette = newTailleOrdi; var newTailleTablette = newTailleOrdi
document.documentElement.style.setProperty('--taille', newTailleOrdi + "vw"); document.documentElement.style.setProperty('--taille', newTailleOrdi + "vw");
document.documentElement.style.setProperty('--tailleTablette', newTailleTablette + "vw"); document.documentElement.style.setProperty('--tailleTablette', newTailleTablette + "vw");
} }
function lancerGameMulti() {
creePartieClassique3_4();
document.getElementById("pageAccueil").style.visibility = "hidden";
//document.getElementById("PageLobbyMulti").style.visibility = "hidden";
document.getElementById("pageGame").style.visibility = "visible";
document.getElementById("idGameMulti").style.visibility = "visible";
document.getElementById("progressbar").style.visibility = "hidden";
//Suprimer les paarties précédantes
/*
$(document).ready(function () {
//alert("Clean bases")
$("#div1").load('cleanBase.php')
});
*/
//Créer les 16 lignes dans la base pour les 16 cartes de la partie
//Génère l'idPartie
//Envoyer les 16 cartes
listecartes=[];
for (var i = 0; i < deckPartie.length; i++) {
var ajt = deckPartie[i].getMatrice[0] + deckPartie[i].getMatrice[1] + deckPartie[i].getMatrice[2];
listecartes.push(ajt);
//console.log(ajt);
}
$(document).ready(function () {
var cartestables = listecartes;
$.ajax({
data: {
cartestables: cartestables
},
type: "post",
url: "envoyercartes.php",
success: function (data) {
console.log("====Les cartes ont été envoyés (lancerpartie)===")
}
});
});
}
function ConvertInttoCarte(ListeDesCartes){
//console.log("LC",ListeDesCartes);
if(ListeDesCartes.length==0){
console.log("Vide");
}
var lescartes=[]; //Liste des cartes
for(let j =0 ; j<ListeDesCartes.length;j++){
var lesfigure=[]; //Liste figures de la carte
//pb?
for (let i = 0; i < ListeDesCartes[j].length; i++) {
if(ListeDesCartes[j][i]==1){
var premierefigure= new Figure(TypeFigure.Petit,FormeFigure.Rond,Math.floor(i/4),(i%4));
lesfigure.push(premierefigure);
//console.log("cc1",j," ",i);
}
else if(ListeDesCartes[j][i]==2){
var deuxiemefigure = new Figure(TypeFigure.Moyen,FormeFigure.Rond,Math.floor(i/4),(i%4));
lesfigure.push(deuxiemefigure);
//console.log("cc2",j," ",i);
}
}
//pb?
var carte= new Carte(lescartes.length,lesfigure,4,3);
//console.log("MAMAN2",j," ",carte);
lescartes.push(carte);
}
//console.log("LC2",lescartes);
deckPartie = lescartes;
afficherCartes(deckPartie);
console.log("--Conversion réussie--");
// console.log("CARTES SELECTS : ",carteselectPos);
reselectCartes();
}
function reselectCartes() {
if (carteselectPos != [] && carteselectPos!=null) {
// console.log("cartesPOS: ",carteselectPos);
carteselectPos.forEach((pos) => {
var lacarte = "card"+pos;
var numeroCarte = pos;
//console.log("lacarte: ",lacarte);
//console.log(deckPartie[numeroCarte].get);
document.getElementById(lacarte).style.boxShadow = "0 0 1vw red, 0 0 1vw red";
});
}
else {
for (var i=0; i<deckPartie.length;i++) {
var lacarte = "card"+i;
var numeroCarte = i;
//console.log("lacarte: ",lacarte);
//console.log(deckPartie[numeroCarte].get);
document.getElementById(lacarte).style.boxShadow = "";
}
}
}
function rejoindreGameMulti () {
creePartieClassique3_4();
document.getElementById("pageAccueil").style.visibility = "hidden";
//document.getElementById("PageLobbyMulti").style.visibility = "hidden";
document.getElementById("pageGame").style.visibility = "visible";
document.getElementById("idGameMulti").style.visibility = "visible";
document.getElementById("progressbar").style.visibility = "hidden";
}
function modePrec() { function modePrec() {
if(!modelangue){ if(!modelangue){
if (selectionMode == 0) { if (selectionMode == 0) {
@ -155,7 +261,15 @@ class Carte {
this.identifiant = id; this.identifiant = id;
this.row = nbRow; this.row = nbRow;
this.column = nbColumn; this.column = nbColumn;
this.Matrice = creaMatrice(nbRow, nbColumn); this.Matrice = creaMatriceVierge(nbRow, nbColumn);
for (var i = 0; i < allFigure.length; i++) {
if (allFigure[i].type[0] == TypeFigure.Petit) {
this.Matrice[allFigure[i].X][allFigure[i].Y] += 1;
} else {
this.Matrice[allFigure[i].X][allFigure[i].Y] += 2;
}
}
this.SesFigures = []; this.SesFigures = [];
for (var i = 0; i < allFigure.length; i++) { for (var i = 0; i < allFigure.length; i++) {
this.SesFigures.push(allFigure[i]); this.SesFigures.push(allFigure[i]);
@ -176,7 +290,7 @@ class Carte {
divcase.className = "item-form"; divcase.className = "item-form";
var ajoute = true; var ajoute = true;
for (var j = 0; j < this.SesFigures.length; j++) { for (var j = 0; j < this.SesFigures.length; j++) {
if (i == this.SesFigures[j].pos) { if (i == this.SesFigures[j].X + (this.SesFigures[j].Y * 3)) {
try { try {
ajoute = false; ajoute = false;
var uneFigure = new Figure(this.SesFigures[j].type, this.SesFigures[j].forme, this.SesFigures[j].X, this.SesFigures[j].Y); var uneFigure = new Figure(this.SesFigures[j].type, this.SesFigures[j].forme, this.SesFigures[j].X, this.SesFigures[j].Y);
@ -196,24 +310,55 @@ class Carte {
this.link.onclick = function selectioncarte() { this.link.onclick = function selectioncarte() {
var macarte = this.id; var macarte = this.id;
var lacarte = "card" + macarte; var lacarte = "card" + macarte;
for (var i = 0; i < deckPartie.length; i++) { for (var i = 0; i < deckPartie.length; i++) {
if (this.id == deckPartie[i].identifiant) { if (this.id == deckPartie[i].identifiant) {
var laCarte = deckPartie[i];//Carte liee avec le code HTML if (carteselectPos.includes(i)) {
carteselectPos.splice(carteselectPos.indexOf(i), 1);
} else {
if(carteselectPos.length<5) {
carteselectPos.push(i);
} }
} }
}
}
//console.log("cartesPOS: ",carteselectPos);
var laCarte;
for (var i = 0; i < deckPartie.length; i++) {
if (this.id == deckPartie[i].identifiant) {
laCarte = deckPartie[i];//Carte liee avec le code HTML
}
}
//cas où la carte a déjà été cliqué
if (document.getElementById(lacarte).style.boxShadow != "") { if (document.getElementById(lacarte).style.boxShadow != "") {
var pos = carteselect.indexOf(laCarte); var pos = carteselect.indexOf(laCarte);
carteselect.splice(pos, 1); carteselect.splice(pos, 1);
document.getElementById(lacarte).style.boxShadow = ""; document.getElementById(lacarte).style.boxShadow = "";
} }
//cas où la carte n'a pas déjà été cliqué
else { else {
if (carteselect.length < 5) { if (carteselect.length < 5) {
carteselect.push(laCarte); carteselect.push(laCarte);
document.getElementById(lacarte).style.boxShadow = "0 0 1vw red, 0 0 1vw red"; document.getElementById(lacarte).style.boxShadow = "0 0 1vw red, 0 0 1vw red";
} }
else else
window.alert("Selection Trop Grande !"); window.alert("5 max !");
} };
// for( var i =0; i < carteselectPos.length;i++){
// carteselect=[];
// //var carte = tab2[1];
// //console.log(carteselectPos[i]);
// //carteselect.push(carte);
// console.log(tab2[carteselectPos[i]]);
// var slt = ConvertUneCarte(tab2[carteselectPos[i]]);
// console.log("C'est moi",slt.getMatrice);
// }
}; };
} }
@ -912,13 +1057,13 @@ function journuit() {
function lancerpartie() { function lancerpartie() {
lesPoints = 0; lesPoints = 0;
goAide();
document.getElementById("progressbar").style.visibility = "hidden"; document.getElementById("progressbar").style.visibility = "hidden";
var ready = true; var ready = true;
//fonction de creation de partie a changer en fonction du test voulu //fonction de creation de partie a changer en fonction du test voulu
if (selectionMode == 0) { if (selectionMode == 0) {
goAide();
if (selectionDiemension == 0) { if (selectionDiemension == 0) {
creePartieClassique3_4(); creePartieClassique3_4();
majSizeCard(3); majSizeCard(3);
@ -942,6 +1087,7 @@ function lancerpartie() {
} }
} else if (selectionMode == 1) { } else if (selectionMode == 1) {
goAide();
document.getElementById("progressbar").style.visibility = "visible"; document.getElementById("progressbar").style.visibility = "visible";
decompte(); decompte();
if (selectionDiemension == 0) { if (selectionDiemension == 0) {
@ -958,6 +1104,7 @@ function lancerpartie() {
majSizeCard(2); majSizeCard(2);
} }
} else if (selectionMode == 2) { } else if (selectionMode == 2) {
goAide();
if (selectionDiemension == 0) { if (selectionDiemension == 0) {
creePartieInfini(4, 3); creePartieInfini(4, 3);
majSizeCard(3); majSizeCard(3);
@ -973,6 +1120,10 @@ function lancerpartie() {
} }
} else if (selectionMode == 3) { } else if (selectionMode == 3) {
bacASable(); bacASable();
}else if(selectionMode == 4){
document.getElementById("pageAccueil").style.visibility = "hidden";
//document.getElementById("PageLobbyMulti").style.visibility = "visible";
} }
if (ready) { if (ready) {
document.getElementById("pageAccueil").style.visibility = "hidden"; document.getElementById("pageAccueil").style.visibility = "hidden";
@ -997,11 +1148,7 @@ function rechargerGAME() {
function redistribuerPlateau() { function redistribuerPlateau() {
lesPoints -= 5; lesPoints -= 5;
goAide();
document.getElementById("affPoints").textContent = 'Score : ' + lesPoints; document.getElementById("affPoints").textContent = 'Score : ' + lesPoints;
while (carteselect.length != 0) {
carteselect.shift();
}
if (selectionMode == 0) { if (selectionMode == 0) {
redistribuer(); redistribuer();
} else if (selectionMode == 1 || selectionMode == 2) { } else if (selectionMode == 1 || selectionMode == 2) {
@ -1015,9 +1162,82 @@ function redistribuerPlateau() {
} }
} }
} }
if(selectionMode == 4){
redistribuerMulti();
}
afficherCartes(deckPartie); afficherCartes(deckPartie);
} }
function redistribuerMulti() {
carteselect=[];
carteselectPos=[];
reselectCartes();
deckPartie = [];
for (var i = 0; i < 16; i++) {
var index = getRandom(0, TasDuJEU.length - 1)
var dejaPresente = false;//Permet de savoir si la carte est deja dans la liste
for (var j = 0; j < deckPartie.length; j++) {
if (TasDuJEU[index].identifiant == deckPartie[j].identifiant) {
dejaPresente = true;
}
}
while (dejaPresente == true) {
index = getRandom(0, TasDuJEU.length - 1)
dejaPresente = false;//Permet de savoir si la carte est deja dans la liste
for (var j = 0; j < deckPartie.length; j++) {
if (TasDuJEU[index].identifiant == deckPartie[j].identifiant) {
dejaPresente = true;
}
}
}
deckPartie.push(copieCarte(TasDuJEU[index]));
}
//Envoyer les 16 cartes du plateau
listecartes=[];
var uneMatrice;
var ajt;
/*
for (var i = 0; i < deckPartie.length; i++) {
var ajt = deckPartie[i].getMatrice[0] + deckPartie[i].getMatrice[1] + deckPartie[i].getMatrice[2];
listecartes.push(ajt);
console.log(ajt);
}*/
for (var j = 0; j < deckPartie.length; j++) { //Pour toutes les cartes de deckPartie
uneMatrice = creaMatriceVierge(deckPartie[j].row, deckPartie[j].column); //Création d'une matrice vierge ( Tableau 2D avec que des 0)
for (var i = 0; i < deckPartie[j].SesFigures.length; i++) { //Pour chaque figure présente dans la carte
if (deckPartie[j].SesFigures[i].type == TypeFigure.Petit) { //Check de la taille de la figure et adaptation de la valeur dans la matrice
uneMatrice[deckPartie[j].SesFigures[i].X][deckPartie[j].SesFigures[i].Y] = 1;
} else if (deckPartie[j].SesFigures[i].type == TypeFigure.Moyen) {
uneMatrice[deckPartie[j].SesFigures[i].X][deckPartie[j].SesFigures[i].Y] = 2;
}
}
ajt = uneMatrice[0]+uneMatrice[1]+uneMatrice[2];//une fois matrice vierge complétée on transforme ça en data
listecartes.push(ajt);
//console.log(ajt);
}
//console.log("LISTE BUG2 ",listecartes);
$(document).ready(function () {
var cartestables = listecartes;
$.ajax({
data: {
cartestables: cartestables
},
type: "post",
url: "envoyercartes.php",
success: function (data) {
console.log("====Les cartes ont été envoyés (redistribuer)===")
}
});
});
}
function redistribuer() { function redistribuer() {
deckPartie = []; deckPartie = [];
for (var i = 0; i < 16; i++) { for (var i = 0; i < 16; i++) {
@ -1297,7 +1517,154 @@ function creePartieInfini3_2(nbRow, nbColum) {
} }
} }
function MaFonction() {
var copyText = document.getElementById("Monidpartie");
copyText.select();
copyText.setSelectionRange(0, 99999);
document.execCommand("copy");
}
function testerCartesMulti() {
//try {
if (carteselect.length == 0) {
window.alert("Selection Vide test pour jeu classique");
return;
} else if (carteselect.length < 2) {
window.alert("Selection Trop Petite");
return;
} else {
var copie = [];
for (var i = 0; i < carteselect.length; i++) {
copie.push(copieCarte(carteselect[i]));
}
var tab = [];
tab = AssemblageARBRE(copie, copieCarte(carteselect[0]));
var solution = true;
var tabCode = [];
for (var i = 0; i < tab.length; i++) {
tabCode.push(tab[i].code);
}
for (var i = 0; i < tab.length; i++) {
if (tab[i].code == carteselect.length) {
solution = false;
cpt = cpt + 20 * copie.length;
lesPoints += carteselect.length;
document.getElementById("affPoints").textContent = 'Score : ' + lesPoints;
var new2Cartes=changerlesCartesDeTasDeJeuMulti();
}
}
if (solution) {
document.getElementById("affSolution").textContent = 'Aucune solution trouvée...';
}
if (!solution) {
document.getElementById("affSolution").textContent = 'Assemblage de ' + copie.length + ' cartes trouvé ! Il reste encore ' + TasDuJEU.length + ' cartes !';
carteselectPos=[];
carteselect=[];
reselectCartes();
}
}
/*} catch (e) {
window.alert(e);
}*/
//Envoyer les 16 cartes du plateau
listecartes=[];
var ajt;
/*
for (var i = 0; i < deckPartie.length; i++) {
var ajt = deckPartie[i].getMatrice[0] + deckPartie[i].getMatrice[1] + deckPartie[i].getMatrice[2];
listecartes.push(ajt);
console.log(ajt);
}*/
for (var j = 0; j < deckPartie.length; j++) { //Pour toutes les cartes de deckPartie
var uneMatrice = creaMatriceVierge(deckPartie[j].row, deckPartie[j].column); //Création d'une matrice vierge ( Tableau 2D avec que des 0)
//CODE A RISQUE
for (var i = 0; i < deckPartie[j].SesFigures.length; i++) { //Pour chaque figure présente dans la carte
if (deckPartie[j].SesFigures[i].type[0] == TypeFigure.Petit) { //Check de la taille de la figure et adaptation de la valeur dans la matrice
uneMatrice[deckPartie[j].SesFigures[i].X][deckPartie[j].SesFigures[i].Y] = 1;
} else if (deckPartie[j].SesFigures[i].type[0] == TypeFigure.Moyen) {
uneMatrice[deckPartie[j].SesFigures[i].X][deckPartie[j].SesFigures[i].Y] = 2;
}
}
//
ajt = uneMatrice[0]+uneMatrice[1]+uneMatrice[2];//une fois matrice vierge complétée on transforme ça en data
listecartes.push(ajt);
//console.log(ajt);
}
//console.log("LISTE BUG1: ",listecartes);
$(document).ready(function () {
var cartestables = listecartes;
$.ajax({
data: {
cartestables: cartestables
},
type: "post",
url: "envoyercartes.php",
success: function (data) {
console.log("====Les cartes ont été envoyés (valider cartes)===")
}
});
});
}
function changerlesCartesDeTasDeJeuMulti() {
var new2cartes = [];
// Pour toutes les cartes selectionnées
while (carteselectPos.length != 0) {
// //Enlever la carte dans le tas du jeu
// var unIndex = TasDuJEU.indexOf(carteselect[0]);
// TasDuJEU.splice(unIndex, 1);
//si il reste plus de 16 cartes
if (TasDuJEU.length > 16) {
//On prend une autre carte aléatoire dans tas du jeu
var index2 = getRandom(0, TasDuJEU.length - 1)
//var dejaPresente = false;
//Permet de savoir si la carte est deja dans la liste
// for (var j = 0; j < deckPartie.length; j++) {
// if (TasDuJEU[index2].identifiant == deckPartie[j].identifiant) {
// dejaPresente = true;
// }
// }
deckPartie[carteselectPos[0]]=TasDuJEU[index2];
TasDuJEU.splice(index2,1);
//on recommmence jusqu'à obtenri une carte pas dans le tas de jeu
// while (dejaPresente == true) {
// index2 = getRandom(0, TasDuJEU.length - 1)
// dejaPresente = false;//Permet de savoir si la carte est deja dans la liste
// for (var j = 0; j < deckPartie.length; j++) {
// if (TasDuJEU[index2].identifiant == deckPartie[j].identifiant) {
// dejaPresente = true;
// }
// }
// }
// unIndex = deckPartie.indexOf(carteselect[0]);
// deckPartie[unIndex] = TasDuJEU[index2];
// new2cartes.push(TasDuJEU[index2]);
} else {
// si il y a moins de 16 cartes on enlève juste
deckPartie.splice(carteselect[0],1);
// unIndex = deckPartie.indexOf(carteselect[0]);
// deckPartie.splice(unIndex, 1);
}
carteselectPos.shift();
carteselect.shift();
}
afficherCartes(deckPartie);
return new2cartes;
}
function creePartieClassique3_2() { function creePartieClassique3_2() {
TasDuJEU = genererTouteslesCartes3_2Possibles(); TasDuJEU = genererTouteslesCartes3_2Possibles();
deckPartie = []; deckPartie = [];
@ -1495,7 +1862,7 @@ function afficherCartes(Liste) {
document.getElementById("containcards").firstElementChild.remove(); document.getElementById("containcards").firstElementChild.remove();
} }
for (var i = 0; i < Liste.length; i++) { for (var i = 0; i < Liste.length; i++) {
document.getElementById("containcards").appendChild(Liste[i].link); document.getElementById("containcards").appendChild(copieCarte(Liste[i]).link);
} }
} }
@ -2369,12 +2736,17 @@ function decompte() {
} }
function testerLesCartes() { function testerLesCartes() {
goAide();
if (selectionMode == 0) { if (selectionMode == 0) {
goAide();
testPourJeuClassique(); testPourJeuClassique();
} else if (selectionMode == 1 || selectionMode==2) { } else if (selectionMode == 1 || selectionMode==2) {
goAide();
testPourJeuInfini(); testPourJeuInfini();
} }
if( selectionMode == 4){
testerCartesMulti();
}
} }

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save