import ChessRules from "/base_rules.js";
import AbstractAntikingRules from "/variants/_Antiking/class.js";
+import BerolinaPawnSpec from "/variants/_Berolina/pawnSpec.js";
export default class Antiking1Rules extends AbstractAntikingRules {
}
pieces(color, x, y) {
- const pawnShift = (color == "w" ? -1 : 1);
let res = super.pieces(color, x, y);
- res['p'].moves = [
- {
- steps: [[pawnShift, 1], [pawnShift, -1]],
- range: 1
- }
- ];
- res['p'].attack = [
- {
- steps: [[pawnShift, 0]],
- range: 1
- }
- ];
+ res['p'] = BerolinaPawnSpec(color);
return res;
}
genRandInitBaseFen() {
// Always deterministic setup
return {
- fen: "2prbkqA/2p1nnbr/2pppppp/8/8/PPPPPP2/RBNN1P2/aQKBRP2 w 0",
+ fen: "2prbkqA/2p1nnbr/2pppppp/8/8/PPPPPP2/RBNN1P2/aQKBRP2",
o: {"flags": "KAka"}
};
}
getFlagsFen() {
return (
- Array.prototype.concat.apply(
+ Array.prototype.concat.apply([],
['w', 'b'].map(c => {
const res = Object.keys(this.kingFlags[c]).join("");
return (c == 'w' ? res.toUpperCase() : res);