return ret;
}
-int evalmaxjumps (board_t *board, int x, int y, int id)
-{
- int maxjumps = 0;
- if (getvalue (board, x, y) != ((id == 0) ? '1' : '0')) {
- return 0;
- }
-
- int m;
- for (m = 0; m < 4; m++) {
- if (testjump (board, x, y, m)) {
- board_t *newboard = copyboard (board);
- int nx = x;
- int ny = y;
- dopetjump (newboard, &nx, &ny, m);
- int nb = 1 + evalmaxjumps (newboard, nx, ny, id);
- maxjumps = max (nb, maxjumps);
- freeboard (newboard);
- }
- }
- return maxjumps;
-}
-
int testqueenmove (board_t *board, int xcursor, int ycursor, int queen, int mode)
{
int ret = 0;
int testalljumps (board_t *board, int x, int y);
-int evalmaxjumps (board_t *board, int x, int y, int id);
-
int testqueenmove (board_t *board, int xcursor, int ycursor, int queen, int mode);
int testqueenjump (board_t *board, int xcursor, int ycursor, int mode);