X-Git-Url: https://git.auder.net/?p=vchess.git;a=blobdiff_plain;f=client%2Fsrc%2Fbase_rules.js;h=37e756e9d141f8018e29103b5ac3e9ffc98b6abe;hp=e142839997a1572b5ec441126cb3d71ef0ab8989;hb=0d5335de5c94d780e03ac0aa3279b731c69455cc;hpb=58bf4670c6bf01d94fe1f798cd5d63493d15e196 diff --git a/client/src/base_rules.js b/client/src/base_rules.js index e1428399..37e756e9 100644 --- a/client/src/base_rules.js +++ b/client/src/base_rules.js @@ -224,9 +224,11 @@ export const ChessRules = class ChessRules { const s = move.start, e = move.end; if ( - Math.abs(s.x - e.x) == 2 && s.y == e.y && - (move.appear.length > 0 && move.appear[0].p == V.PAWN) + Math.abs(s.x - e.x) == 2 && + // Next conditions for variants like Atomic or Rifle, Recycle... + (move.appear.length > 0 && move.appear[0].p == V.PAWN) && + (move.vanish.length > 0 && move.vanish[0].p == V.PAWN) ) { return { x: (s.x + e.x) / 2, @@ -941,6 +943,7 @@ export const ChessRules = class ChessRules { } // Stop at the first move found + // TODO: not really, it explores all moves from a square but one would suffice. atLeastOneMove() { const color = this.turn; for (let i = 0; i < V.size.x; i++) {