import { placeOnBoard } from "./engine/visual/placeOnBoard.js" import { Vector2 } from "./engine/visual/vector2.js" import { board } from "./board.js" import { ASSETS_BLACK, ASSETS_WHITE, PLAYER } from "./constants.js" export class Stone { constructor({ team = PLAYER.BLACK, position = new Vector2(0, 0), }) { this.team = team this.position = position this.create_span() board.stones[position.y][position.x] = this this.update() } create_span() { this.span = document.createElement("span") this.span.className = `stone` let img = document.createElement("img") img.src = this.team == PLAYER.BLACK ? ASSETS_BLACK : ASSETS_WHITE this.span.appendChild(img) document.body.appendChild(this.span) } update() { let response = placeOnBoard({ position: this.position, board_size: board.size, }) this.span.style.left = response.left this.span.style.top = response.top this.span.style.width = this.span.style.height = response.size } }