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) {
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]) {
// Connected kings paralyze each other
return false;
}
+
};