);
}
+ static get DarkBottomRight() {
+ return true;
+ }
+
// For space between corners:
static get NOTHING() {
return "xx";
getPotentialMovesFrom([x, y]) {
switch (this.getPiece(x, y)) {
- case V.CHAMPION:
- return this.getPotentialChampionMoves([x, y]);
- case V.WIZARD:
- return this.getPotentialWizardMoves([x, y]);
- default:
- return super.getPotentialMovesFrom([x, y]);
+ case V.CHAMPION: return this.getPotentialChampionMoves([x, y]);
+ case V.WIZARD: return this.getPotentialWizardMoves([x, y]);
+ default: return super.getPotentialMovesFrom([x, y]);
}
}
return moves;
}
- addPawnMoves([x1, y1], [x2, y2], moves, promotions) {
- let finalPieces = [V.PAWN];
+ addPawnMoves([x1, y1], [x2, y2], moves) {
const color = this.turn;
const lastRank = (color == "w" ? 1 : V.size.x - 2);
- if (x2 == lastRank) {
- // promotions arg: special override for Hiddenqueen variant
- if (!!promotions) finalPieces = promotions;
- else if (!!V.PawnSpecs.promotions) finalPieces = V.PawnSpecs.promotions;
- }
- let tr = null;
+ const finalPieces = (x2 == lastRank ? V.PawnSpecs.promotions : [V.PAWN]);
for (let piece of finalPieces) {
- tr = (piece != V.PAWN ? { c: color, p: piece } : null);
+ const tr = (piece != V.PAWN ? { c: color, p: piece } : null);
moves.push(this.getBasicMove([x1, y1], [x2, y2], tr));
}
}