X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FRecycle.js;h=e31badbe7e400134933ada7ed159e2597d793002;hb=13102cabeb4e8c626f1c849369785c174f7aa512;hp=50ccd74e7d3997ec40d139cb460fc5ca5e79d7a6;hpb=241bf8f2a9a2c48d793aeb0b1d20207f6371de70;p=vchess.git diff --git a/client/src/variants/Recycle.js b/client/src/variants/Recycle.js index 50ccd74e..e31badbe 100644 --- a/client/src/variants/Recycle.js +++ b/client/src/variants/Recycle.js @@ -14,18 +14,27 @@ export const VariantRules = class RecycleRules extends ChessRules { static ParseFen(fen) { const fenParts = fen.split(" "); return Object.assign(ChessRules.ParseFen(fen), { - reserve: fenParts[5], + reserve: fenParts[5] }); } - static GenRandInitFen() { - return ChessRules.GenRandInitFen() + " 0000000000"; + getEpSquare(moveOrSquare) { + if (typeof moveOrSquare !== "object" || moveOrSquare.vanish.length > 0) + return super.getEpSquare(moveOrSquare); + // Landing move: no en-passant + return undefined; + } + + static GenRandInitFen(randomness) { + return ChessRules.GenRandInitFen(randomness) + " 0000000000"; } getFen() { - return ( - super.getFen() + " " + this.getReserveFen() - ); + return super.getFen() + " " + this.getReserveFen(); + } + + getFenForRepeat() { + return super.getFenForRepeat() + "_" + this.getReserveFen(); } getReserveFen() {