- if (this.board[ex][ey] == VariantRules.EMPTY)
- {
- // No capture, standard move construction
- return [super.getBasicMove(sx,sy,ex,ey,tr)];
- }
- let moves = []; //captures: generally 2 choices, unless 'tr' is specified or piece==king
- const startPiece = this.getPiece(sx,sy);
- const endPiece = this.getPiece(ex,ey);
- const startColor = this.getColor(sx,sy);
- const endColor = this.getColor(ex,ey);
- for (let piece of !!tr ? [tr] :
- (startPiece==VariantRules.KING ? VariantRules.KING : _.uniq([startPiece,endPiece])))
+ const piece = this.getPiece(sx,sy);
+ if (piece != VariantRules.KING)