From eb460fbb161e76052b7bdd2c57afc65e2e99bc2e Mon Sep 17 00:00:00 2001 From: niliara-edu Date: Thu, 12 Dec 2024 13:51:59 +0100 Subject: place pieces --- src/engine/turns.js | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/engine/turns.js (limited to 'src/engine/turns.js') diff --git a/src/engine/turns.js b/src/engine/turns.js new file mode 100644 index 0000000..7026dcc --- /dev/null +++ b/src/engine/turns.js @@ -0,0 +1,35 @@ +import { board } from "../board.js" +import { Vector2 } from "../engine/visual/vector2.js" +import { Link } from "../link.js" +import { PLAYER } from "../constants.js" + +export let turn = "" + +export function nextTurn() { + turn = turn == PLAYER.BLACK ? PLAYER.WHITE : PLAYER.BLACK + placeLinks() +} + +function placeLinks() { + resetLink() + board.links = [...Array(board.size)].map(_ => Array(board.size)) + for (let row = 0; row < board.size; row++) { + for (let col = 0; col < board.size; col++) { + tryLink(new Vector2(row, col)) + } + } +} + +function resetLink() { + Array.from(board.links).forEach(x => { + Array.from(x).filter((x) => x !== undefined).map(y => { + y.removeLink() + }) + }) +} + +function tryLink(position) { + new Link({ + position: position, + }) +} -- cgit v1.2.3