mode perso ajout portes perso

master
pisouvigne 5 years ago
parent 5803efef3c
commit 30d8ee7f45

@ -59,7 +59,29 @@
<input type="number" id="colonne_number_setup_global_gen" value="10"> <input type="number" id="colonne_number_setup_global_gen" value="10">
</div><br> </div><br>
<p class="dys">Colonnes : <a id="colonnes_live"></a></p> <p class="dys">Colonnes : <a id="colonnes_live"></a></p>
<br> <div>
<p>Fonctions Logiques : </p>
<div>
<input type="checkbox" id="logique1" name="logique1" checked>
<label for="logique1">ET</label>
</div>
<div>
<input type="checkbox" id="logique2" name="logique2">
<label for="logique2">OU</label>
</div>
<div>
<input type="checkbox" id="logique3" name="logique3">
<label for="logique3">NON</label>
</div>
<div>
<input type="checkbox" id="logique4" name="logique4">
<label for="logique4">NON-ET</label>
</div>
<div>
<input type="checkbox" id="logique5" name="logique5">
<label for="logique5">NON-OU</label>
</div>
</div>
<button class="border background dys listenerHover" onclick="addGenForkInput()"> <button class="border background dys listenerHover" onclick="addGenForkInput()">
<a>Ajouter un fork </a> <a>Ajouter un fork </a>
<i style="margin-left:20px" class="fa fa-plus" aria-hidden="true"></i> <i style="margin-left:20px" class="fa fa-plus" aria-hidden="true"></i>
@ -98,29 +120,7 @@
</div> </div>
<hr id="hr"> <hr id="hr">
<div id="perso-setupContainer" class="dys"> <div id="perso-setupContainer" class="dys">
<div> <br>
<p>Fonctions Logiques : </p>
<div>
<input type="checkbox" id="logique1" name="logique1" checked>
<label for="logique1">ET</label>
</div>
<div>
<input type="checkbox" id="logique2" name="logique2">
<label for="logique2">OU</label>
</div>
<div>
<input type="checkbox" id="logique3" name="logique3">
<label for="logique3">NON</label>
</div>
<div>
<input type="checkbox" id="logique4" name="logique4">
<label for="logique4">NON-ET</label>
</div>
<div>
<input type="checkbox" id="logique5" name="logique5">
<label for="logique5">NON-OU</label>
</div>
</div><br>
<div> <div>
<label>Nombres de portes logiques : </label> <label>Nombres de portes logiques : </label>
<input type="number" id="colonne_number_setup_global" value="4"> <input type="number" id="colonne_number_setup_global" value="4">

@ -446,6 +446,18 @@ function generate2(col, matchs, fork) {
showDiv(document.querySelector('#playPage')); showDiv(document.querySelector('#playPage'));
resetAllTabs(false); resetAllTabs(false);
arrayPorte = [
[document.querySelector("#logique1").checked, "et"],
[document.querySelector("#logique2").checked, "ou"],
[document.querySelector("#logique3").checked, "inv"],
[document.querySelector("#logique4").checked, "etnon"],
[document.querySelector("#logique5").checked, "nonou"]
];
arrayPorte = arrayPorte.filter(function (e) {
if (e[0] === true) return e;
})
var numberCol = col.length; var numberCol = col.length;
var numberPerCol = []; var numberPerCol = [];
numberPerColonne = []; numberPerColonne = [];
@ -512,17 +524,16 @@ function generate2(col, matchs, fork) {
//Attribution des types //Attribution des types
//num = liste de comptatibilité //num = liste de comptatibilité
let num2 = getRandomArbitrary(0, 5); let num2 = getRandomArbitrary(0, arrayPorte.length);
for (x in listeLogiqueObj) { for (x in listeLogiqueObj) {
if (listeLogiqueObj[x].matchId1 !== null) { if (listeLogiqueObj[x].matchId1 !== null) {
if (getElementArray(listeLogiqueObj[x].matchId1, listeSame)[1] === null) { if (getElementArray(listeLogiqueObj[x].matchId1, listeSame)[1] === null) {
getElementArray(listeLogiqueObj[x].matchId1, listeSame)[1] = num2; getElementArray(listeLogiqueObj[x].matchId1, listeSame)[1] = arrayPorte[num2][1];
console.log(listeLogiqueObj[x].matchId2); console.log(listeLogiqueObj[x].matchId2);
if (listeLogiqueObj[x].matchId2 !== null && getElementArray(listeLogiqueObj[x].matchId2, listeSame)[1] === null) { if (listeLogiqueObj[x].matchId2 !== null && getElementArray(listeLogiqueObj[x].matchId2, listeSame)[1] === null) {
getElementArray(listeLogiqueObj[x].matchId2, listeSame)[1] = num2; getElementArray(listeLogiqueObj[x].matchId2, listeSame)[1] = arrayPorte[num2][1];
console.log("oui")
} }
num2 = getRandomArbitrary(0, 5); num2 = getRandomArbitrary(0, arrayPorte.length);
} else { } else {
listeSame[x] = getElementArray(listeLogiqueObj[x].matchId1, listeSame); listeSame[x] = getElementArray(listeLogiqueObj[x].matchId1, listeSame);
} }
@ -547,25 +558,9 @@ function generate2(col, matchs, fork) {
initTimer(); initTimer();
//creation logique //creation logique
listeLogiqueObj.forEach(function (logique) { listeLogiqueObj.forEach(function (logique) {
if (getTypeFromSameMatch(listeSame, logique.matchId1) === null) logique.type = getRandomArbitrary(0, 5); if (getTypeFromSameMatch(listeSame, logique.matchId1) === null) logique.type = arrayPorte[getRandomArbitrary(0, arrayPorte.length)][1];
else logique.type = getTypeFromSameMatch(listeSame, logique.matchId1); else logique.type = getTypeFromSameMatch(listeSame, logique.matchId1);
switch (logique.type) { insertLogiqueColonne(logique.id, logique.type, logique.col - 1);
case 0:
insertLogiqueColonne(logique.id, "et", logique.col - 1);
break;
case 1:
insertLogiqueColonne(logique.id, "ou", logique.col - 1);
break;
case 2:
insertLogiqueColonne(logique.id, "inv", logique.col - 1);
break;
case 3:
insertLogiqueColonne(logique.id, "nonou", logique.col - 1);
break;
case 4:
insertLogiqueColonne(logique.id, "etnon", logique.col - 1);
break;
}
}); });
var logiquesGen; var logiquesGen;

Loading…
Cancel
Save