X-Git-Url: https://git.auder.net/?p=vchess.git;a=blobdiff_plain;f=client%2Fsrc%2Fcomponents%2FBoard.vue;h=8b1055bd72a104be50ada23507138daac9bcb265;hp=c36ea8ae5894e6ffa8a086889d94326ddbfa4c45;hb=a6088c906bbe6fae95707dc7028e45023fe39981;hpb=50aed5a15e214d31b63f6320209ac14fe5c052cb diff --git a/client/src/components/Board.vue b/client/src/components/Board.vue index c36ea8ae..8b1055bd 100644 --- a/client/src/components/Board.vue +++ b/client/src/components/Board.vue @@ -2,6 +2,8 @@ // This can work for squared boards (2 or 4 players), with some adaptations (TODO) // TODO: for 3 players, write a "board3.js" +// TODO: current clicked square + moving square as parameters, + highlight + import { getSquareId, getSquareFromId } from "@/utils/squareId"; import { ArrayFun } from "@/utils/array"; @@ -9,9 +11,8 @@ export default { name: 'my-board', // Last move cannot be guessed from here, and is required to highlight squares // vr: object to check moves, print board... - // mode: HH, HC or analyze // userColor: for mode HH or HC - props: ["vr","lastMove","mode","orientation","userColor","vname"], + props: ["vr","lastMove","analyze","orientation","userColor","vname"], data: function () { return { hints: (!localStorage["hints"] ? true : localStorage["hints"] === "1"), @@ -98,7 +99,7 @@ export default { let cj = (this.orientation=='w' ? j : sizeY-j-1); let elems = []; if (this.vr.board[ci][cj] != V.EMPTY && (this.vname!="Dark" - || this.gameOver || this.mode == "analyze" + || this.gameOver || this.analyze || this.vr.enlightened[this.userColor][ci][cj])) { elems.push( @@ -144,8 +145,7 @@ export default { 'dark-square': (i+j)%2==1, [this.bcolor]: true, 'in-shadow': this.vname=="Dark" && !this.gameOver - && this.mode != "analyze" - && !this.vr.enlightened[this.userColor][ci][cj], + && !this.analyze && !this.vr.enlightened[this.userColor][ci][cj], 'highlight': showLight && !!lm && lm.end.x == ci && lm.end.y == cj, 'incheck': showLight && incheckSq[ci][cj], }, @@ -291,9 +291,7 @@ export default { this.selectedPiece.style.zIndex = 3000; const startSquare = getSquareFromId(e.target.parentNode.id); this.possibleMoves = []; - const color = this.mode=="analyze" || this.gameOver - ? this.vr.turn - : this.userColor; + const color = (this.analyze || this.gameOver ? this.vr.turn : this.userColor); if (this.vr.canIplay(color,startSquare)) this.possibleMoves = this.vr.getPossibleMovesFrom(startSquare); // Next line add moving piece just after current image