X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=common.h;fp=common.h;h=6ba5774cb87a3b92333c69706d69fb257c1b5636;hb=7693c7936daeb938298191577545323f382ef3a4;hp=498bf387d0885efa7b27ef833df0494c317aa8c7;hpb=ff23924264802924788f2a15c73a8d058e90432e;p=xboard.git diff --git a/common.h b/common.h index 498bf38..6ba5774 100644 --- a/common.h +++ b/common.h @@ -320,11 +320,12 @@ typedef enum { /* [HGM] some macros that can be used as prefixes to convert piece types */ #define WHITE_TO_BLACK (int)BlackPawn - (int)WhitePawn + (int) #define BLACK_TO_WHITE (int)WhitePawn - (int)BlackPawn + (int) -#define PROMOTED (int)WhiteDragon - (int)WhiteRook + (int) -#define DEMOTED (int)WhiteRook - (int)WhiteDragon + (int) +#define PROMO (int)WhiteDragon - (int)WhiteRook + (int) +#define PROMOTED(X) (promoPartner[X]) +#define DEMOTED(X) (promoPartner[X]) #define SHOGI (int)EmptySquare + (int) -#define CHUPROMOTED ((int)WhitePDragon - (int)WhiteDragon)*(gameInfo.variant == VariantChu) + PROMOTED -#define CHUDEMOTED ((int)WhiteDragon - (int)WhitePDragon)*(gameInfo.variant == VariantChu) + DEMOTED +#define CHUPROMOTED(X) (promoPartner[X]) +#define CHUDEMOTED(X) (promoPartner[X]) #define IS_SHOGI(V) ((V) == VariantShogi || (V) == VariantChu) #define IS_LION(V) ((V) == WhiteLion || (V) == BlackLion)