Adapt WinBoard front-end to Mighty Lion
[xboard.git] / common.h
index f06fbcf..ec067ad 100644 (file)
--- a/common.h
+++ b/common.h
@@ -251,16 +251,16 @@ typedef enum {
     WhiteSilver, WhiteFalcon, WhiteLance, WhiteCobra, WhiteUnicorn, WhiteLion,
     WhiteTokin, WhiteDagger, WhitePCardinal, WhitePDragon, WhiteCat,
     WhitePSword, WhiteMonarch, WhiteMother, WhiteNothing, WhitePRook, WhitePDagger,
-    WhiteDolphin, WhiteVacant, WhiteHorned, WhiteEagle, WhiteSword,
-    WhiteSkip, WhiteCrown, WhiteHorse, WhiteDrunk, WhitePBishop, WhiteKing,
+    WhiteDolphin, WhiteStag, WhiteHorned, WhiteEagle, WhiteSword,
+    WhiteCrown, WhiteHCrown, WhiteHorse, WhiteDrunk, WhitePBishop, WhiteKing,
     BlackPawn, BlackKnight, BlackBishop, BlackRook, BlackQueen,
     BlackFerz, BlackAlfil, BlackAngel, BlackMarshall, BlackWazir, BlackMan,
     BlackCannon, BlackNightrider, BlackCardinal, BlackDragon, BlackGrasshopper,
     BlackSilver, BlackFalcon, BlackLance, BlackCobra, BlackUnicorn, BlackLion,
     BlackTokin, BlackDagger, BlackPCardinal, BlackPDragon, BlackCat,
-    BlackPSword, BlackMonarch, BlackMother, BlackNothin, BlackPRook, BlackPDagger,
-    BlackDolphin, BlackVacant, BlackHorned, BlackEagle, BlackSword,
-    BlackSkip, BlackCrown, BlackHorse, BlackDrunk, BlackPBishop, BlackKing,
+    BlackPSword, BlackMonarch, BlackMother, BlackNothing, BlackPRook, BlackPDagger,
+    BlackDolphin, BlackStag, BlackHorned, BlackEagle, BlackSword,
+    BlackCrown, BlackHCrown, BlackHorse, BlackDrunk, BlackPBishop, BlackKing,
     EmptySquare, DarkSquare,
     NoRights, // [HGM] gamestate: for castling rights hidden in board[CASTLING]
     ClearBoard, WhitePlay, BlackPlay, PromotePiece, DemotePiece /*for use on EditPosition menus*/
@@ -274,6 +274,7 @@ typedef enum {
 #define SHOGI          (int)EmptySquare + (int)
 #define CHUPROMOTED    ((int)WhitePDragon - (int)WhiteDragon)*(gameInfo.variant == VariantChu) + PROMOTED
 #define IS_SHOGI(V)    ((V) == VariantShogi || (V) == VariantChu)
+#define IS_LION(V)     ((V) == WhiteLion || (V) == BlackLion)
 
 
 typedef ChessSquare Board[BOARD_RANKS][BOARD_FILES];
@@ -289,7 +290,7 @@ typedef enum {
     WhitePromotion, WhiteNonPromotion,
     BlackPromotion, BlackNonPromotion,
     WhiteCapturesEnPassant, BlackCapturesEnPassant,
-    WhiteDrop, BlackDrop,
+    WhiteDrop, BlackDrop, FirstLeg,
     NormalMove, AmbiguousMove, IllegalMove, ImpossibleMove,
     WhiteWins, BlackWins, GameIsDrawn, GameUnfinished,
     GNUChessGame, XBoardGame, MoveNumberOne, Open, Close, Nothing,
@@ -303,7 +304,7 @@ typedef enum {
 } ColorClass;
 
 typedef enum {
-    SoundMove, SoundBell, SoundAlarm, SoundIcsWin, SoundIcsLoss,
+    SoundMove, SoundBell, SoundRoar, SoundAlarm, SoundIcsWin, SoundIcsLoss,
     SoundIcsDraw, SoundIcsUnfinished, NSoundClasses
 } SoundClass;
 
@@ -353,6 +354,7 @@ typedef enum {
     VariantSChess,
     VariantGrand,
     VariantSpartan,
+    VariantLion,
     VariantUnknown       /* Catchall for other unknown variants */
 } VariantClass;
 
@@ -401,6 +403,7 @@ typedef enum {
   "seirawan",\
   "grand",\
   "spartan",\
+  "lion",\
   "unknown" \
 }
 
@@ -536,6 +539,7 @@ typedef struct {
     char *soundSeek;
     char *soundMove;     // [HGM] IMPORTANT: order must be as in SoundClass
     char *soundBell;
+    char *soundRoar;
     char *soundIcsAlarm;
     char *soundIcsWin;
     char *soundIcsLoss;