X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FEightpieces.js;fp=client%2Fsrc%2Fvariants%2FEightpieces.js;h=42df93e3da04233415da1ed7e88150fc561d05d8;hb=7e476ce4b299c0a35529b80c730a452992453cc6;hp=9ca85956bbd39a66546b90e73a2da514c3e86800;hpb=7ebc0408a76b4a966273190a2ade49e0f97099be;p=vchess.git diff --git a/client/src/variants/Eightpieces.js b/client/src/variants/Eightpieces.js index 9ca85956..42df93e3 100644 --- a/client/src/variants/Eightpieces.js +++ b/client/src/variants/Eightpieces.js @@ -175,7 +175,8 @@ export class EightpiecesRules extends ChessRules { if (c == 'b') { // Check if white sentry is on the same color as ours. // If yes: swap bishop and sentry positions. - if ((pieces['w'].indexOf('s') - sentryPos) % 2 == 0) + // NOTE: test % 2 == 1 because there are 7 slashes. + if ((pieces['w'].indexOf('s') - sentryPos) % 2 == 1) [bishopPos, sentryPos] = [sentryPos, bishopPos]; } positions.splice(Math.max(randIndex, randIndex_tmp), 1); @@ -1030,6 +1031,13 @@ export class EightpiecesRules extends ChessRules { if (Object.keys(V.LANCER_DIRNAMES).includes(move.vanish[0].p)) // Lancer: add direction info notation += "=" + V.LANCER_DIRNAMES[move.appear[0].p]; + else if ( + move.vanish[0].p == V.PAWN && + Object.keys(V.LANCER_DIRNAMES).includes(move.appear[0].p) + ) { + // Fix promotions in lancer: + notation = notation.slice(0, -1) + "L:" + V.LANCER_DIRNAMES[move.appear[0].p]; + } return notation; } };