Several small improvements + integrate options + first working draft of Cwda
[vchess.git] / client / src / variants / Madrasi.js
index 54c1862..e16d78f 100644 (file)
@@ -1,8 +1,9 @@
 import { ChessRules } from "@/base_rules";
 
 export class MadrasiRules extends ChessRules {
+
   isImmobilized(sq) {
-    const oppCol = V.GetOppCol(this.turn);
+    const oppCol = V.GetOppCol(this.getColor(sq[0], sq[1]));
     const piece = this.getPiece(sq[0], sq[1]);
     let steps = [];
     switch (piece) {
@@ -24,8 +25,8 @@ export class MadrasiRules extends ChessRules {
         steps = V.steps[V.ROOK].concat(V.steps[V.BISHOP]);
         break;
     }
-    return super.isAttackedBySlideNJump(
-      sq, oppCol, piece, steps, [V.KING, V.PAWN, V.KNIGHT].includes(piece))
+    const nbSteps = [V.KING, V.PAWN, V.KNIGHT].includes(piece) ? 1 : null;
+    return super.isAttackedBySlideNJump(sq, oppCol, piece, steps, nbSteps);
   }
 
   getPotentialMovesFrom([x, y]) {
@@ -61,4 +62,5 @@ export class MadrasiRules extends ChessRules {
     // Connected kings paralyze each other
     return false;
   }
+
 };