PFC/Omweso/src/omweso.h

00001 #ifndef STDOMWESO_H
00002 #define STDOMWESO_H
00003 
00004 #ifndef DATADIR
00005 #define DATADIR "."
00006 #endif
00007 #define DEFSTRINGIFY(x) #x
00008 #define DEFTOSTRING(x) DEFSTRINGIFY(x)
00009 
00010 #define DATAFOLDER(x)    DEFTOSTRING(DATADIR)"/"x
00011 
00012 
00013 #define   AI_HUMAN                                0
00014 #define   AI_SIMPLE                               1
00015 #define   AI_NEGAMAX                              2
00016 #define AI_ALPHABETA                         3
00017 #define AI_SCOUT                                  4
00018 
00019 
00020 #define AI_MAXDEPTH                          15
00021 
00022 #define AI_HUMAN_EVAL                        0
00023 #define AI_RANDOM_EVAL                  1
00024 #define AI_MATERIAL_EVAL           2
00025 #define AI_DISPERSION_EVAL         3
00026 #define AI_MOBILITY_EVAL           4
00027 #define AI_REACH_EVAL                        5
00028 
00029 
00030 #define AI_COMBINED_EVAL           6
00031 
00032 
00033 #define   PL_PLAYER1                              0
00034 #define   PL_PLAYER2                              1
00035 
00036 #define   CUR_WIDTH                               46
00037 #define   CUR_HEIGHT                              60
00038 
00039 #define   CELL_WIDTH                              58
00040 #define   CELL_HEIGHT                             78
00041 #define   CELL_BORDER                             4
00042 #define   CELL_SPACING                       4
00043 
00044 #define   CELL_STATUS_NORM              0
00045 #define   CELL_STATUS_GREEN             1
00046 #define   CELL_STATUS_RED                    2
00047 #define CELL_STATUS_CYAN           3
00048 
00049 #define   CELL_ACTION_CANCEL       4
00050 #define   CELL_ACTION_MOVEL             5
00051 #define   CELL_ACTION_MOVER             6
00052 #define   CELL_ACTION_SELECT       7
00053 #define   CELL_ACTION_CAPTURE      8
00054 #define   CELL_ACTION_PUT                    9
00055 #define   CELL_ACTION_TAKE              10
00056 #define   CELL_ACTION_NONE              11
00057 
00058 #define   BRD_NUM_SIDES                      2
00059 #define   BRD_ROWS_PER_PLAYER      2
00060 #define   BRD_MAX_COLS_PER_PLAYER       8
00061 #define   BRD_MAX_ROWS_PER_PLAYER       2
00062 #define   BRD_SIDE_NORTH                0
00063 #define   BRD_SIDE_SOUTH                1
00064 #define BRD_INNER_ROW                        0
00065 #define BRD_OUTER_ROW                        1
00066 
00067 
00068 #define BRD_STATUS_READY                0
00069 #define BRD_STATUS_SOWING                    1
00070 #define BRD_STATUS_ERRORMOVE       2
00071 #define BRD_STATUS_CHAINMOVE       3
00072 #define BRD_STATUS_CAPTURE              4
00073 #define BRD_STATUS_REENTER_CAPTURE 5
00074 #define BRD_STATUS_REVSOWING       6
00075 #define BRD_STATUS_PCANNOTMOVE     7
00076 
00077 #define BRD_SOWING_SPEED_USLOW     200
00078 #define BRD_SOWING_SPEED_SLOW      135
00079 #define BRD_SOWING_SPEED_NORM      75
00080 #define BRD_SOWING_SPEED_FAST      30
00081 #define BRD_SOWING_SPEED_ULTRA     0
00082 
00083 #define BRD_MAX_UNDO_MOVES         100
00084 
00085 #define   OWGFX_BACKGROUND              0
00086 #define   OWGFX_CURSOR                       1
00087 #define   OWGFX_CELL                              2
00088 #define   OWGFX_PLAYERMARKER       0
00089 #define   OWGFX_GAMEWON                      1
00090 
00091 #define OWINPUT_MOUSEDELAY         25 // 25 frames
00092 
00093 #define OWGAME_MENU_APP                 0
00094 #define OWGAME_MENU_APP_NEWGAME         1
00095 #define OWGAME_MENU_SETUPBOARD          2
00096 #define OWGAME_MENU_PLY                           3
00097 #define OWGAME_MENU_MAI                           4
00098 #define OWGAME_MENU_BAT                           5
00099 
00100 #define OWGAME_MENU_APP_COMMANDS                       10
00101 #define OWGAME_MENU_APP_NEWGAME_COMMANDS     5
00102 #define OWGAME_MENU_SETUPBOARD_COMMANDS      7
00103 #define OWGAME_MENU_PLY_COMMANDS                       8
00104 #define OWGAME_MENU_MAI_COMMANDS                       9
00105 #define OWGAME_MENU_BAT_COMMANDS                       9
00106 
00107 #define OWGAME_STATUS_STOPPED           0
00108 #define OWGAME_STATUS_RUNNING           1
00109 #define OWGAME_STATUS_CREATED           2
00110 #define OWGAME_STATUS_WON                         3
00111 #define OWGAME_STATUS_PLAYING           4
00112 
00113 typedef struct {
00114      int x; int y;
00115      int boardside;
00116 } cellXY;
00117 
00118 typedef struct {
00119      int x; int y;
00120      int boardside;
00121      int dir; // 1:move -1:rcapture
00122 } ow_move;
00123 
00124 typedef struct {
00125      int x; int y;
00126      int boardside;
00127      int dir; // 1:move -1:rcapture
00128      int veval;
00129 } ow_move_eval;
00130 
00131 #endif
00132 

Generated on Sun Jun 22 13:45:46 2008 for Omweso by  doxygen 1.5.3