Fix Vchess variant
[vchess.git] / client / src / variants / Vchess.js
index 4e84eb0..c11cce4 100644 (file)
@@ -9,9 +9,28 @@ export class VchessRules extends ChessRules {
     );
   }
 
+  isAttackedByPawn(sq, color) {
+    return this.isAttackedBySlideNJump(
+      sq,
+      color,
+      V.PAWN,
+      V.steps[V.BISHOP],
+      "oneStep"
+    );
+  }
+
   getNotation(move) {
     let notation = super.getNotation(move);
-    // TODO: if capture backwards, add an indication 'b'
+    // If pawn captures backward, add an indication 'b'
+    if (
+      move.appear[0].p == V.PAWN &&
+      (
+        (move.appear[0].c == 'w' && (move.end.x - move.start.x > 0)) ||
+        (move.appear[0].c == 'b' && (move.end.x - move.start.x < 0))
+      )
+    ) {
+      notation += 'b';
+    }
     return notation;
   }
 };