X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FGrand.js;h=c910dd8e72a7e6a521d0500ab4182285195f28a1;hb=7ba4a5bc5b64e19a1e7f26aa232d5c50770d07ad;hp=d804f614586a6a38b84272541421a2d720275dfe;hpb=241bf8f2a9a2c48d793aeb0b1d20207f6371de70;p=vchess.git diff --git a/client/src/variants/Grand.js b/client/src/variants/Grand.js index d804f614..c910dd8e 100644 --- a/client/src/variants/Grand.js +++ b/client/src/variants/Grand.js @@ -307,8 +307,8 @@ export const VariantRules = class GrandRules extends ChessRules { static get VALUES() { return Object.assign( - ChessRules.VALUES, - { c: 5, m: 7 } //experimental + { c: 5, m: 7 }, //experimental + ChessRules.VALUES ); } @@ -316,10 +316,21 @@ export const VariantRules = class GrandRules extends ChessRules { return 2; } - static GenRandInitFen() { + static GenRandInitFen(randomness) { + if (!randomness) randomness = 2; + if (randomness == 0) { + return "rnbqkmcbnr/pppppppppp/10/10/10/10/10/10/PPPPPPPPPP/RNBQKMCBNR " + + "w 0 1111 - 00000000000000"; + } + let pieces = { w: new Array(10), b: new Array(10) }; // Shuffle pieces on first and last rank for (let c of ["w", "b"]) { + if (c == 'b' && randomness == 1) { + pieces['b'] = pieces['w']; + break; + } + let positions = ArrayFun.range(10); // Get random squares for bishops