Some fixes + work on Dynamo draft. Also listen for clicks in Board.vue
[vchess.git] / client / src / variants / Suction.js
index 2038e4f..aa34f6c 100644 (file)
@@ -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 &&