X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FRecycle.js;h=de0ff5017b9cef5fa255a77ab757d29b1792e532;hb=4313762da3237b04f204e121a20cab3ba7bb5dd2;hp=d23a78c27e5143de54805a44b15ba610be3603a4;hpb=e50a802531b99829c533f22ecd21e359e7e1e049;p=vchess.git diff --git a/client/src/variants/Recycle.js b/client/src/variants/Recycle.js index d23a78c2..de0ff501 100644 --- a/client/src/variants/Recycle.js +++ b/client/src/variants/Recycle.js @@ -2,6 +2,7 @@ import { ChessRules, PiPo, Move } from "@/base_rules"; import { ArrayFun } from "@/utils/array"; export class RecycleRules extends ChessRules { + static get PawnSpecs() { return Object.assign( {}, @@ -27,8 +28,8 @@ export class RecycleRules extends ChessRules { ); } - static GenRandInitFen(randomness) { - return ChessRules.GenRandInitFen(randomness) + " 0000000000"; + static GenRandInitFen(options) { + return ChessRules.GenRandInitFen(options) + " 0000000000"; } getFen() { @@ -85,6 +86,14 @@ export class RecycleRules extends ChessRules { return this.board[i][j].charAt(1); } + getPPpath(m) { + if (m.vanish.length == 2 && m.appear.length == 2) { + // Castle: show castle symbol + return "Coregal/castle"; + } + return super.getPPpath(m); + } + // Used by the interface: getReservePpath(index, color) { return color + V.RESERVE_PIECES[index]; @@ -227,4 +236,5 @@ export class RecycleRules extends ChessRules { move.appear[0].p != V.PAWN ? move.appear[0].p.toUpperCase() : ""; return piece + "@" + V.CoordsToSquare(move.end); } + };