X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=public%2Fjavascripts%2Fvariants%2FAntiking.js;h=2821f3f5d9f4c8c2362b4533a0c0023973dd7751;hb=7931e479adf93c87771ded1892a0873af72ae46d;hp=ddfd9677003a9b6aa1c84c9337e7fa25553d74f4;hpb=7d6b0773c093ad4347ff8b444236e7d89b06977e;p=vchess.git diff --git a/public/javascripts/variants/Antiking.js b/public/javascripts/variants/Antiking.js index ddfd9677..2821f3f5 100644 --- a/public/javascripts/variants/Antiking.js +++ b/public/javascripts/variants/Antiking.js @@ -1,6 +1,5 @@ -class AntikingRules +class AntikingRules extends ChessRules { - // Path to pieces static getPpath(b) { return b[1]=='a' ? "Antiking/"+b : b; @@ -8,153 +7,183 @@ class AntikingRules static get ANTIKING() { return 'a'; } - // TODO: more subtle than that, require changing args: wp, bk and not just colors - canTake(color1, color2) + static get PIECES() { + return ChessRules.PIECES.concat([V.ANTIKING]); + } + + initVariables(fen) + { + super.initVariables(fen); + this.antikingPos = {'w':[-1,-1], 'b':[-1,-1]}; + const position = fen.split(" ")[0].split("/"); + for (let i=0; i0?antikingPos["w"]:"") + + "A" + (antikingPos["w"]<7?7-antikingPos["w"]:""); + const ranks23_white = (antikingPos["b"]>0?antikingPos["b"]:"") + "a" + + (antikingPos["b"]<7?7-antikingPos["b"]:"") + "/PPPPPPPP"; + let fen = pieces["b"].join("") + "/" + ranks23_black + + "/8/8/" + + ranks23_white + "/" + pieces["w"].join("").toUpperCase() + + " 1111"; return fen; } }