&& move.appear[1].p == V.KING)
{
// Switch with the king; not castle, and not handled by main class
- const color = this.getColor(move.start.x, move.start.y);
+ const color = move.vanish[0].c;
this.kingPos[color] = [move.appear[1].x, move.appear[1].y];
}
}
if (move.appear.length == 2 && move.vanish.length == 2
&& move.appear[1].p == V.KING)
{
- const color = this.getColor(move.start.x, move.start.y);
+ const color = move.vanish[0].c;
this.kingPos[color] = [move.appear[0].x, move.appear[0].y];
}
}
if (move.appear[0].p == V.KING && move.appear[1].p == V.ROOK)
return (move.end.y < move.start.y ? "0-0-0" : "0-0");
// Switch:
- const startSquare =
- String.fromCharCode(97 + move.start.y) + (V.size.x-move.start.x);
- const finalSquare =
- String.fromCharCode(97 + move.end.y) + (V.size.x-move.end.x);
- return "S" + startSquare + finalSquare;
+ return "S" + V.CoordsToSquare(move.start) + V.CoordsToSquare(move.end);
}
}
+
+const VariantRules = SwitchingRules;