X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FHorde.js;h=aac4d27a4c111847cb4319ec5c966ae9692b726d;hb=af34341d92d47d14f396e7f4adb81f2a7e9d9a61;hp=e61803b3d480664419134da6c880779caa5ed7e0;hpb=f9385686d9434c607cdaa55e41a0425269db0815;p=vchess.git diff --git a/client/src/variants/Horde.js b/client/src/variants/Horde.js index e61803b3..aac4d27a 100644 --- a/client/src/variants/Horde.js +++ b/client/src/variants/Horde.js @@ -39,13 +39,27 @@ export class HordeRules extends ChessRules { if (randomness == 2) randomness--; const fen = ChessRules.GenRandInitFen(randomness); return ( - // 27 first chars are 3 rows + 3 slashes - fen.substr(0, 27) + // 20 first chars are 3 rows + 3 slashes + fen.substr(0, 20) // En passant available, but no castle: .concat("1PP2PP1/PPPPPPPP/PPPPPPPP/PPPPPPPP/PPPPPPPP w 0 -") ); } + filterValid(moves) { + if (this.turn == 'w') return moves; + return super.filterValid(moves); + } + + getCheckSquares() { + if (this.turn == 'w') return []; + return ( + this.underCheck('b') + ? [JSON.parse(JSON.stringify(this.kingPos['b']))] + : [] + ); + } + getCurrentScore() { if (this.turn == 'w') { // Do I have any unit remaining? If not, I lost.