X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=variants%2FBalaklava%2Fclass.js;h=1ee2dd72b8987dc006640cd05c869e09909e8aae;hb=3232aba3419f129c70d5edd9a4ded1fefc146ea0;hp=ad189cb0a740f4e381a3f5524fd23a71e9aed0cf;hpb=7c03823594cef3ce6e8da7ac1d7d3504c73695a9;p=xogo.git diff --git a/variants/Balaklava/class.js b/variants/Balaklava/class.js index ad189cb..1ee2dd7 100644 --- a/variants/Balaklava/class.js +++ b/variants/Balaklava/class.js @@ -13,7 +13,7 @@ export default class BalaklavaRules extends ChessRules { pieces(color, x, y) { let res = super.pieces(color, x, y); - const knightSpec = res['n']; + const knightSpecMoves = res['n'].both; delete res['n']; res['m'] = { "class": "mammoth", @@ -28,17 +28,26 @@ export default class BalaklavaRules extends ChessRules { } ] }; - ['p', 'r', 'b', 'm', 'q'].forEach(p => res[p].moves = knightSpec.moves); + ['p', 'r', 'b', 'm', 'q'].forEach(p => { + if (!res[p].moves) + res[p].moves = []; + Array.prototype.push.apply(res[p].moves, knightSpecMoves); + }); return res; } genRandInitBaseFen() { const s = FenUtil.setupPieces( - ['r', 'm', 'b', 'q', 'k', 'b', 'm', 'r'], {diffCol: ['b']}); + ['r', 'm', 'b', 'q', 'k', 'b', 'm', 'r'], + { + randomness: this.options["randomness"], + diffCol: ['b'] + } + ); return { fen: s.b.join("") + "/pppppppp/8/8/8/8/PPPPPPPP/" + s.w.join("").toUpperCase(), - o: {} + o: {flags: s.flags} }; }