X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FOrdamirror.js;h=21aebaaf00f13407d66a429227a1325cbf4ecb7b;hb=4313762da3237b04f204e121a20cab3ba7bb5dd2;hp=d79d8c5f85ed94e1619ba1a82349797b8a115018;hpb=f0d7f75fad99b004400490b5fccf20d410cd56e4;p=vchess.git diff --git a/client/src/variants/Ordamirror.js b/client/src/variants/Ordamirror.js index d79d8c5f..21aebaaf 100644 --- a/client/src/variants/Ordamirror.js +++ b/client/src/variants/Ordamirror.js @@ -4,6 +4,7 @@ import { ArrayFun } from "@/utils/array"; import { randInt } from "@/utils/alea"; export class OrdamirrorRules extends OrdaRules { + static get PawnSpecs() { return Object.assign( {}, @@ -24,14 +25,14 @@ export class OrdamirrorRules extends OrdaRules { return "Orda/" + b; } - static GenRandInitFen(randomness) { - if (randomness == 0) + static GenRandInitFen(options) { + if (options.randomness == 0) return "lhafkahl/8/pppppppp/8/8/PPPPPPPP/8/LHAFKAHL w 0 ah -"; let pieces = { w: new Array(8), b: new Array(8) }; // Shuffle pieces on first (and last rank if randomness == 2) for (let c of ["w", "b"]) { - if (c == 'b' && randomness == 1) { + if (c == 'b' && options.randomness == 1) { pieces['b'] = pieces['w']; break; } @@ -105,17 +106,9 @@ export class OrdamirrorRules extends OrdaRules { getPotentialFalconMoves(sq) { const onlyMoves = this.getSlideNJumpMoves( - sq, - V.steps[V.ROOK].concat(V.steps[V.BISHOP]), - null, - { onlyMove: true } - ); + sq, V.steps[V.ROOK].concat(V.steps[V.BISHOP]), null, { onlyMove: true }); const onlyTakes = this.getSlideNJumpMoves( - sq, - V.steps[V.KNIGHT], - "oneStep", - { onlyTake: true } - ); + sq, V.steps[V.KNIGHT], "oneStep", { onlyTake: true }); return onlyMoves.concat(onlyTakes); } @@ -132,7 +125,7 @@ export class OrdamirrorRules extends OrdaRules { isAttackedByFalcon(sq, color) { return this.isAttackedBySlideNJump( - sq, color, V.FALCON, V.steps[V.KNIGHT], "oneStep"); + sq, color, V.FALCON, V.steps[V.KNIGHT], 1); } static get VALUES() { @@ -145,4 +138,5 @@ export class OrdamirrorRules extends OrdaRules { k: 1000 }; } + };