X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FAllmate.js;h=728de25fc790f5be6c4c55d7a5f0557d34a07929;hb=4404e58c0a30105472942367dce894223b05c7fe;hp=5636f5682194bf9128dbab0a64b71bf633dee642;hpb=23ecf00824691b5622b468e0409fc543c87d75dc;p=vchess.git diff --git a/client/src/variants/Allmate.js b/client/src/variants/Allmate.js index 5636f568..728de25f 100644 --- a/client/src/variants/Allmate.js +++ b/client/src/variants/Allmate.js @@ -5,10 +5,6 @@ export const VariantRules = class AllmateRules extends ChessRules { return false; } - canTake(sq1, sq2) { - return false; //Captures handled differently - } - getCheckSquares() { // No notion of check return []; @@ -20,6 +16,10 @@ export const VariantRules = class AllmateRules extends ChessRules { getPotentialMovesFrom([x, y]) { let moves = super.getPotentialMovesFrom([x, y]); + // Remove standard captures (without removing castling): + moves = moves.filter(m => { + return m.vanish.length == 1 || m.appear.length == 2; + }); // Augment moves with "mate-captures": // TODO: this is coded in a highly inefficient way...