CHECKDTA.H
资源名称:MSDN_VC98.zip [点击查看]
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:3k
源码类别:
Windows编程
开发平台:
Visual C++
- // Some more defines
- #define PLAYER1 BLACK
- #define PLAYER2 RED
- // Game type definitions
- #define GAME_CHECKERS 0
- #define GAME_GIVEAWAY 1
- // Cursor states
- #define UNDEFINED_CURSOR -1
- #define NORMAL_CURSOR 1
- #define RESIZE_CURSOR 2
- #define RESIZE_RANGE 10 // How far from bottom right should resize
- // cursor be shown.
- // Data structures for Checkers.
- struct rGameStateRec
- {
- int iPlayerTurn; // Who's turn
- BOOL fPlayAsForm; // If we are currently a form
- BOOL fInitDone; // Game initialization over (when to use timer).
- BOOL fContinuable; // Is the turn continuable?
- BOOL fSetupMode; // Game in setup mode? Need for button processing
- BOOL fThinking; // Is the computer thinking?
- BOOL fPaused; // Is the game paused?
- BOOL fGameInProgress; // Did the game start? How to react to "File:New"
- BOOL fLMouseButtonDown; // Is the left mouse button currently down?
- BOOL fRMouseButtonDown; // Is the right mouse button currently down?
- BOOL fMoveInProgress; // Is the user in the middle of a move?
- BOOL fComputerBusy; // Is the computer thinking?
- BOOL fGameOver; // Is the game over?
- BOOL fMouseResizeInProgress; // Is the user resizing the board with the mouse?
- int iCursorState; // What state is the cursor in (resize, normal?)
- };
- struct rPlayerRec
- {
- int iPlayerType; // (ENUM) Human/Computer/Network
- int iUseOpeningBook; // (BOOL) Use the opening-book moves
- int iMemPositions; // (BOOL) Use memorized positions?
- int iUseMoveTheory; // (BOOL) Use move theory?
- int iUseMoveShuffling; // (BOOL) Use move shuffling
- int iUseEqualMoveSkipping; // (BOOL) Use Equal move skipping
- long lUseGoodMoveSkipping; // (LONG) Use Good move skipping
- int iMaxRecursionDepth; // (LONG) Max recursion depth
- int iUseAlphaBetaPruning; // (BOOL) Use alpha-beta pruning
- long lAlphaPruningOriginalDepth; // (LONG) Alpha pruning original depth
- long lAlphaPruningWidth; // (LONG) Alpha pruning width
- };
- struct rCheckConfigRec
- {
- int iGameType; // (INT) enum game type (Checkers/FoxGoose)
- int iMustJump; // (BOOL) Player must jump when available?
- int iBoardFlipped; // (BOOL) Board flipped?
- int iSquareSize; // (INT) Size of board square
- int iSetupPurgeBoards; // (BOOL) Purge boards after setup?
- int iMaxMoves;
- struct rPlayerRec rPlayer[3]; // Config info for players
- };