diff --git a/2023-24-01-05/Megoldás/script.js b/2023-24-01-05/Megoldás/script.js index 1559d93..9924f0f 100644 --- a/2023-24-01-05/Megoldás/script.js +++ b/2023-24-01-05/Megoldás/script.js @@ -1,10 +1,12 @@ -document.addEventListener("DOMContentLoaded", ()=>{ +var rules = [[1, 2], [1, -2], [-1, 2], [-1, -2], [-2, 1], [-2, -1], [2, 1], [2, -1]] + +document.addEventListener("DOMContentLoaded", () => { var blocks = Array.from(document.getElementsByClassName("c")); var matrix = []; - for(var i = 0; i < 8; i++){ + for (var i = 0; i < 8; i++) { var rav = []; - for(var j = 0; j < 8; j++){ - rav.push(blocks[i*8+j]); + for (var j = 0; j < 8; j++) { + rav.push(blocks[i * 8 + j]); } matrix.push(rav); } @@ -12,17 +14,25 @@ document.addEventListener("DOMContentLoaded", ()=>{ for (var i = 0; i < matrix.length; i++) { for (var j = 0; j < matrix[i].length; j++) { matrix[i][j].addEventListener("click", (function (ci, cj) { - return function (){ - try{ - var flag = true; - if(matrix[ci +1][cj+2].children.length == 0) flag = false; - if(matrix[ci -1][cj-2].children.length == 0) flag = false; - if(matrix[ci +2][cj+1].children.length == 0) flag = false; - if(matrix[ci -2][cj-1].children.length == 0) flag = false; - console.log(flag) - }catch{} + return function () { + var flag = true; + var newloc = []; + for (var j = 0; j < rules.length; j++) { + try { + if (matrix[ci + rules[j][0]][cj + rules[j][1]].children.length != 0) { + flag = false; + newloc = [ci + rules[j][0], cj + rules[j][1]]; + } + } + catch { } + } + if (!flag) { + var paci = matrix[newloc[0]][newloc[1]].children[0].cloneNode(true); + matrix[newloc[0]][newloc[1]].children[0].remove(); + this.appendChild(paci); + } } - })(i , j)); + })(i, j)); } } }); \ No newline at end of file