X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=public%2Fjavascripts%2Fvariants%2FSwitching.js;fp=public%2Fjavascripts%2Fvariants%2FSwitching.js;h=af934f329a6eefc532113b71ad27d69c4b388290;hb=6752407b88b6d7678b9b19df4ffe1224d17625d7;hp=3ddf50322c500db93ac8c90343594283ff444cb6;hpb=44e87e497eeb05eb93164337da43d51a69a9c445;p=vchess.git diff --git a/public/javascripts/variants/Switching.js b/public/javascripts/variants/Switching.js index 3ddf5032..af934f32 100644 --- a/public/javascripts/variants/Switching.js +++ b/public/javascripts/variants/Switching.js @@ -6,6 +6,9 @@ class SwitchingRules extends ChessRules const c = this.getColor(x1,y1); //same as color at square 2 const p1 = this.getPiece(x1,y1); const p2 = this.getPiece(x2,y2); + const V = VariantRules; + if (p1 == V.KING && p2 == V.ROOK) + return []; //avoid duplicate moves (potential conflict with castle) let move = new Move({ appear: [ new PiPo({x:x2,y:y2,c:c,p:p1}), @@ -21,7 +24,6 @@ class SwitchingRules extends ChessRules // Move completion: promote switched pawns (as in Magnetic) const sizeX = VariantRules.size[0]; const lastRank = (c == "w" ? 0 : sizeX-1); - const V = VariantRules; let moves = []; if ((p1==V.PAWN && x2==lastRank) || (p2==V.PAWN && x1==lastRank)) {