From 9977890deb98a67f7bff9f8449847a3ecbeebf18 Mon Sep 17 00:00:00 2001 From: pisouvigne Date: Fri, 10 Jul 2020 18:11:30 +0200 Subject: [PATCH] generateur + croisement --- site/vue/js/createElement.js | 24 +++++++++++++++--------- site/vue/js/func.js | 19 +++++++++++++++++++ site/vue/js/generateGame.js | 6 +++--- site/vue/js/init.js | 1 + site/vue/js/main.js | 2 ++ 5 files changed, 40 insertions(+), 12 deletions(-) diff --git a/site/vue/js/createElement.js b/site/vue/js/createElement.js index d12df16..c28f13c 100644 --- a/site/vue/js/createElement.js +++ b/site/vue/js/createElement.js @@ -28,16 +28,22 @@ function createEnd() { } -function createCircle(x, y) { - var circle = new Konva.Circle({ - x: x, - y: y, - radius: 10, - fill: 'black', - stroke: 'black', - strokeWidth: 4, +function createCircle(x, y, name) { + + name.forEach(function (idLine) { + var circle = new Konva.Circle({ + id: "circle" + idLine, + x: x, + y: y, + radius: 10, + fill: 'black', + stroke: 'black', + strokeWidth: 4, + }); + circles.push("circle" + idLine); + layer.add(circle); }); - layer.add(circle); + } function createSwitch(id, x, y) { diff --git a/site/vue/js/func.js b/site/vue/js/func.js index 5541d4e..d204768 100644 --- a/site/vue/js/func.js +++ b/site/vue/js/func.js @@ -228,10 +228,23 @@ function changeLineColorBlack(idLine) { setLineStateFalse(idLine); let line = stage.findOne("#" + idLine); line.stroke(colorLineInnactive); + console.log(idLine); + circles.forEach(function (circle) { + if (circle === "circle" + idLine) { + stage.findOne("#circle" + idLine).stroke(colorLineInnactive); + stage.findOne("#circle" + idLine).fill(colorLineInnactive); + } + }); } function changeLineColorYellow(idLine) { setLineStateTrue(idLine); + circles.forEach(function (circle) { + if (circle === "circle" + idLine) { + stage.findOne("#circle" + idLine).stroke(colorLineActive); + stage.findOne("#circle" + idLine).fill(colorLineActive); + } + }); let line = stage.findOne("#" + idLine); line.stroke(colorLineActive); } @@ -922,4 +935,10 @@ function flip() { element.style.transform = 'rotate(' + deg + 'deg)'; }); rotated = !rotated; +} + +function setCanvasScale(x, y) { + console.log(document.getElementsByTagName("canvas")); + var ctx = document.getElementsByTagName("canvas").getContext("2d"); + console.log(ctx); } \ No newline at end of file diff --git a/site/vue/js/generateGame.js b/site/vue/js/generateGame.js index 04c8d22..8037d1f 100644 --- a/site/vue/js/generateGame.js +++ b/site/vue/js/generateGame.js @@ -290,7 +290,7 @@ function createGameOne(niveau) { numberColonne2 = 1; timeEnd = 20; break; - //Fin premiere serie + //Fin premiere serie case 5: firstTime.push("inv"); isNotAllowed = true; @@ -542,12 +542,11 @@ function generate2(col, matchs, fork) { loEntre = findLogique(logiqueEntre[i].id); } logiques.forEach(function (logique) { - if (logique.name === logiqueFork.id) createCircle(logique.x + imageWidth + ((loEntre.x - findLogique(logiqueFork.id).x) / 100 * pourcentageBreak), findLogique(logiqueFork.id).y + imageHeight / 2); + if (logique.name === logiqueFork.id) createCircle(logique.x + imageWidth + ((loEntre.x - findLogique(logiqueFork.id).x) / 100 * pourcentageBreak), findLogique(logiqueFork.id).y + imageHeight / 2, logique.id3); }); fork.splice(fork.indexOf(element), 1); } }); - } } @@ -583,6 +582,7 @@ function generate2(col, matchs, fork) { initEndGame(); invertLine(); checkAllSortieLogique(); + console.log(circles); } function getNumberFork(arr, col) { diff --git a/site/vue/js/init.js b/site/vue/js/init.js index 3fb7835..d4e736d 100644 --- a/site/vue/js/init.js +++ b/site/vue/js/init.js @@ -8,6 +8,7 @@ function initAllSwitch(mode) { layer.draw(); lineUpdate(element); checkEnd(mode); + setCanvasScale(); }); switche.on('mouseover', function () { document.body.style.cursor = "pointer"; diff --git a/site/vue/js/main.js b/site/vue/js/main.js index 8598f7a..d81c5ba 100644 --- a/site/vue/js/main.js +++ b/site/vue/js/main.js @@ -13,6 +13,7 @@ var switchs = [], endLines = [], end, switchsInfo = [], switchsInfoCopy = [], + circles = [], lineRemove = []; var width = window.innerWidth - window.innerWidth / 100 * 30; var height = window.innerHeight / 2.5; @@ -57,6 +58,7 @@ height = window.innerHeight / 1.5; function resetAllTabs(save) { if (!save) { + circles = []; logiques = []; numberPerColonne = [];