X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FCrazyhouse.js;h=fb8c74419b5e45c08844fa0681330b02184cf67a;hb=3a2a7b5fd3c6bfd0752838094c27e1fb6172d109;hp=16db148dba460ca06fa91c18d74bb5b1c11089cd;hpb=9d4a02185291aad8d8af5d35c1d6a808a1e11c9f;p=vchess.git diff --git a/client/src/variants/Crazyhouse.js b/client/src/variants/Crazyhouse.js index 16db148d..fb8c7441 100644 --- a/client/src/variants/Crazyhouse.js +++ b/client/src/variants/Crazyhouse.js @@ -28,22 +28,28 @@ export const VariantRules = class CrazyhouseRules extends ChessRules { }); } + getEpSquare(moveOrSquare) { + if (typeof moveOrSquare !== "object" || moveOrSquare.vanish.length > 0) + return super.getEpSquare(moveOrSquare); + // Landing move: no en-passant + return undefined; + } + static GenRandInitFen(randomness) { return ChessRules.GenRandInitFen(randomness) + " 0000000000 -"; } getFen() { return ( - super.getFen() + " " + this.getReserveFen() + " " + this.getPromotedFen() + super.getFen() + " " + + this.getReserveFen() + " " + + this.getPromotedFen() ); } getFenForRepeat() { return ( - this.getBaseFen() + "_" + - this.getTurnFen() + "_" + - this.getFlagsFen() + "_" + - this.getEnpassantFen() + "_" + + super.getFenForRepeat() + "_" + this.getReserveFen() + "_" + this.getPromotedFen() ); @@ -194,8 +200,8 @@ export const VariantRules = class CrazyhouseRules extends ChessRules { return true; } - updateVariables(move) { - super.updateVariables(move); + postPlay(move) { + super.postPlay(move); if (move.vanish.length == 2 && move.appear.length == 2) return; //skip castle const color = move.appear[0].c; if (move.vanish.length == 0) { @@ -212,8 +218,8 @@ export const VariantRules = class CrazyhouseRules extends ChessRules { else if (move.vanish.length == 2) this.reserve[color][move.vanish[1].p]++; } - unupdateVariables(move) { - super.unupdateVariables(move); + postUndo(move) { + super.postUndo(move); if (move.vanish.length == 2 && move.appear.length == 2) return; const color = this.turn; if (move.vanish.length == 0) { @@ -227,7 +233,6 @@ export const VariantRules = class CrazyhouseRules extends ChessRules { } static get SEARCH_DEPTH() { - // High branching factor return 2; }