X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FThreechecks.js;h=3aa6db9860db5679e59b842a2d13ce6cf3582136;hb=3a2a7b5fd3c6bfd0752838094c27e1fb6172d109;hp=78aaf1f8b3c1069ca279a47f35a9bb5180f68c9c;hpb=1051336271ad4d4128ef1f66953f54973601d774;p=vchess.git diff --git a/client/src/variants/Threechecks.js b/client/src/variants/Threechecks.js index 78aaf1f8..3aa6db98 100644 --- a/client/src/variants/Threechecks.js +++ b/client/src/variants/Threechecks.js @@ -27,13 +27,13 @@ export const VariantRules = class ThreechecksRules extends ChessRules { getPpath(b) { // TODO: !!this.checkFlags condition for printDiagram, but clearly not good. // This is just a temporary fix. - if (b[1] == 'k' && this.checkFlags && this.checkFlags[b[0]] > 0) + if (b[1] == 'k' && !!this.checkFlags && this.checkFlags[b[0]] > 0) return "Threechecks/" + b[0] + 'k_' + this.checkFlags[b[0]]; return b; } - updateVariables(move) { - super.updateVariables(move); + postPlay(move) { + super.postPlay(move); // Does this move give check? const oppCol = this.turn; if (this.underCheck(oppCol)) @@ -47,17 +47,15 @@ export const VariantRules = class ThreechecksRules extends ChessRules { return super.getCurrentScore(); } - static GenRandInitFen() { - const randFen = ChessRules.GenRandInitFen(); + static GenRandInitFen(randomness) { // Add check flags (at 0) - return randFen.replace(" w 0 1111", " w 0 111100"); + return ChessRules.GenRandInitFen(randomness).slice(0, -2) + "00"; } getFlagsFen() { let fen = super.getFlagsFen(); // Add check flags - for (let c of ["w", "b"]) - fen += this.checkFlags[c]; + for (let c of ["w", "b"]) fen += this.checkFlags[c]; return fen; }