X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FSuction.js;h=aa34f6c7f6efc17df189a8e60618aebef4f1a580;hb=616561273f216debfeab7f5fc532d0b0a8bc8e2d;hp=2038e4f800155441c80a6b1834d75d1e6062245b;hpb=6f2f94374f1e73c375edf732d9425e575e81fff7;p=vchess.git diff --git a/client/src/variants/Suction.js b/client/src/variants/Suction.js index 2038e4f8..aa34f6c7 100644 --- a/client/src/variants/Suction.js +++ b/client/src/variants/Suction.js @@ -29,8 +29,8 @@ export class SuctionRules extends ChessRules { static IsGoodFen(fen) { if (!ChessRules.IsGoodFen(fen)) return false; const fenParts = fen.split(" "); - if (fenParts.length != 6) return false; - if (fenParts[5] != "-" && !fenParts[5].match(/^([a-h][1-8]){2}$/)) + if (fenParts.length != 5) return false; + if (fenParts[4] != "-" && !fenParts[4].match(/^([a-h][1-8]){2}$/)) return false; return true; } @@ -96,7 +96,7 @@ export class SuctionRules extends ChessRules { Math.abs(epSquare.y - y) == 1 ) { let enpassantMove = this.getBasicMove([x, y], [epSquare.x, epSquare.y]); - const oppCol = V.GetOppCol(color); + const oppCol = V.GetOppCol(this.turn); enpassantMove.vanish.push({ x: x, y: epSquare.y, @@ -121,7 +121,7 @@ export class SuctionRules extends ChessRules { // Does m2 un-do m1 ? (to disallow undoing captures) oppositeMoves(m1, m2) { return ( - m1 && + !!m1 && m2.vanish.length == 2 && m1.start.x == m2.start.x && m1.end.x == m2.end.x &&