X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=public%2Fjavascripts%2Fvariants%2FMagnetic.js;h=03912e7e81a32cf8bc3c80540f6505117e05cd6b;hb=1221ac47836806efb287b0323b92957d9129c653;hp=d6cf918cf51d7cdcea1665c0c112033363bdf50c;hpb=aea1443ebf56afb2c507c2830ac6b67b509778bc;p=vchess.git diff --git a/public/javascripts/variants/Magnetic.js b/public/javascripts/variants/Magnetic.js index d6cf918c..03912e7e 100644 --- a/public/javascripts/variants/Magnetic.js +++ b/public/javascripts/variants/Magnetic.js @@ -14,12 +14,13 @@ class MagneticRules extends ChessRules if (newMove_s.length == 1) moves.push(newMove_s[0]); else //promotion - moves = moves.concat(moves, newMove_s); + moves = moves.concat(newMove_s); }); return moves; } // Complete a move with magnetic actions + // TODO: job is done multiple times for (normal) promotions. applyMagneticLaws(move) { const V = VariantRules; @@ -43,8 +44,7 @@ class MagneticRules extends ChessRules if (this.getColor(i,j) != color) { // Attraction - if ((Math.abs(i-x)>=2 || Math.abs(j-y)>=2) - && this.getPiece(i,j) != V.KING) + if ((Math.abs(i-x)>=2 || Math.abs(j-y)>=2) && this.getPiece(i,j) != V.KING) { move.vanish.push( new PiPo({ @@ -112,7 +112,8 @@ class MagneticRules extends ChessRules // Scan move for pawn (max 1) on 8th rank for (let i=1; i