From: Benjamin Auder Date: Tue, 17 Mar 2020 15:41:53 +0000 (+0100) Subject: Fix Antiking 1 notation X-Git-Url: https://git.auder.net/js/current/app_dev.php/index.css?a=commitdiff_plain;h=11482348f50058d235adb89bfc174a1da7c6abc4;p=vchess.git Fix Antiking 1 notation --- diff --git a/client/src/variants/Antiking1.js b/client/src/variants/Antiking1.js index 42450d17..ed6173e0 100644 --- a/client/src/variants/Antiking1.js +++ b/client/src/variants/Antiking1.js @@ -267,4 +267,27 @@ export const VariantRules = class Antiking1Rules extends ChessRules { static get SEARCH_DEPTH() { return 2; } + + // TODO: notation copied from Berolina + getNotation(move) { + const piece = this.getPiece(move.start.x, move.start.y); + if (piece == V.PAWN) { + // Pawn move + const finalSquare = V.CoordsToSquare(move.end); + let notation = ""; + if (move.vanish.length == 2) + //capture + notation = "Px" + finalSquare; + else { + // No capture: indicate the initial square for potential ambiguity + const startSquare = V.CoordsToSquare(move.start); + notation = startSquare + finalSquare; + } + if (move.appear[0].p != V.PAWN) + // Promotion + notation += "=" + move.appear[0].p.toUpperCase(); + return notation; + } + return super.getNotation(move); //all other pieces are orthodox + } }; diff --git a/client/src/variants/Berolina.js b/client/src/variants/Berolina.js index ae150957..06592244 100644 --- a/client/src/variants/Berolina.js +++ b/client/src/variants/Berolina.js @@ -148,7 +148,7 @@ export const VariantRules = class BerolinaRules extends ChessRules { notation = startSquare + finalSquare; } if (move.appear[0].p != V.PAWN) - //promotion + // Promotion notation += "=" + move.appear[0].p.toUpperCase(); return notation; }