X-Git-Url: http://winboard.nl/cgi-bin?p=xboard.git;a=blobdiff_plain;f=moves.c;h=a5ec9559293c79bd1fbd5301f35bffe192c6a70f;hp=cc3343b872937ea005c8f7c3d6aaf5d2f3395267;hb=a757b3271db7ac0bfeb15fd68ea36b17be9e1e0a;hpb=6341a1e8f282d099affed789a69bad4660fe9cdc diff --git a/moves.c b/moves.c index cc3343b..a5ec955 100644 --- a/moves.c +++ b/moves.c @@ -1179,6 +1179,12 @@ GenPseudoLegal (Board board, int flags, MoveCallback callback, VOIDSTAR closure, case WhiteFerz: case BlackFerz: + if(gameInfo.variant == VariantXiangqi && ff != BOARD_WIDTH>>1) { + int rt = (piece == BlackFerz ? BOARD_HEIGHT-2 : 1); + int ft = BOARD_WIDTH>>1; + if(!SameColor(board[rf][ff], board[rt][ft])) + callback(board, flags, NormalMove, rf, ff, rt, ft, closure); + } else /* [HGM] support Shatranj pieces */ Ferz(board, flags, rf, ff, callback, closure); break;