Fix Ultima when no moves are available
[vchess.git] / public / javascripts / variants / Magnetic.js
index 4d83fad..b17bb74 100644 (file)
@@ -165,8 +165,8 @@ class MagneticRules extends ChessRules
        {
                super.updateVariables(move);
                const c = this.getColor(move.start.x,move.start.y);
-               if (c != this.getColor(move.end.x,move.end.y)
-                       && this.board[move.end.x][move.end.y] != VariantRules.EMPTY
+               if (this.board[move.end.x][move.end.y] != VariantRules.EMPTY
+                       && c != this.getColor(move.end.x,move.end.y)
                        && this.getPiece(move.end.x,move.end.y) == VariantRules.KING)
                {
                        // We took opponent king !
@@ -174,7 +174,7 @@ class MagneticRules extends ChessRules
                        this.kingPos[oppCol] = [-1,-1];
                        this.castleFlags[oppCol] = [false,false];
                }
-               // Did we move our (init) rooks or opponents' ones ?
+               // Did we magnetically move our (init) rooks or opponents' ones ?
                const firstRank = (c == "w" ? 7 : 0);
                const oppFirstRank = 7 - firstRank;
                const oppCol = this.getOppCol(c);