X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FHamilton.js;h=f8669b7ed4f5239ad421cd45b5264a1b48313625;hb=b21e0e3a8f4af5c04b39c034d13bbb4e1e2abf18;hp=08994e3340d49b0d5750d5b4c516d85e59a12db1;hpb=90df90bca1a993930a0e1a07a1b4990dd538c6e2;p=vchess.git diff --git a/client/src/variants/Hamilton.js b/client/src/variants/Hamilton.js index 08994e33..f8669b7e 100644 --- a/client/src/variants/Hamilton.js +++ b/client/src/variants/Hamilton.js @@ -2,6 +2,7 @@ import { ChessRules, Move, PiPo } from "@/base_rules"; import { randInt } from "@/utils/alea"; export class HamiltonRules extends ChessRules { + static get HasFlags() { return false; } @@ -10,11 +11,15 @@ export class HamiltonRules extends ChessRules { return false; } + get showFirstTurn() { + return true; + } + static get HOLE() { return "xx"; } - hoverHighlight(x, y) { + hoverHighlight() { return this.movesCount == 0; } @@ -46,7 +51,7 @@ export class HamiltonRules extends ChessRules { for (let i = 0; i < row.length; i++) { if (['x'].concat(V.PIECES).includes(row[i].toLowerCase())) sumElts++; else { - const num = parseInt(row[i]); + const num = parseInt(row[i], 10); if (isNaN(num)) return false; sumElts += num; } @@ -133,6 +138,9 @@ export class HamiltonRules extends ChessRules { for (let psq of move.appear) board[psq.x][psq.y] = psq.c + psq.p; } + postPlay() {} + postUndo() {} + getCheckSquares() { return []; } @@ -154,4 +162,5 @@ export class HamiltonRules extends ChessRules { // First game move: return "N@" + V.CoordsToSquare(move.end); } + };