diff options
author | Markus Uhlin <markus@nifty-networks.net> | 2024-03-17 16:01:18 +0100 |
---|---|---|
committer | Markus Uhlin <markus@nifty-networks.net> | 2024-03-17 16:01:18 +0100 |
commit | b4f0c4b8e310ddbe6bb205949d75f1ebb061b8fd (patch) | |
tree | b6ac496eb7b227bfb1e18b4e1d1f9792b583dfed | |
parent | a876a40a0978fea2f3c832413282d9c2b3dfe149 (diff) |
Reformatted possible_rook_moves()
-rw-r--r-- | FICS/movecheck.c | 147 |
1 files changed, 83 insertions, 64 deletions
diff --git a/FICS/movecheck.c b/FICS/movecheck.c index 50fa7c8..7e15acb 100644 --- a/FICS/movecheck.c +++ b/FICS/movecheck.c @@ -476,72 +476,91 @@ PRIVATE void possible_bishop_moves(game_state_t * gs, } } -PRIVATE void possible_rook_moves(game_state_t * gs, - int onf, int onr, - int *posf, int *posr, int *numpos) +PRIVATE void +possible_rook_moves(game_state_t *gs, int onf, int onr, int *posf, int *posr, + int *numpos) { - int f, r; + int f, r; - /* Left */ - f = onf; - r = onr; - while (1) { - f--; - if ((f < 0) || (f > 7)) - break; - if ((r < 0) || (r > 7)) - break; - if ((gs->board[f][r] != NOPIECE) && (iscolor(gs->board[f][r], gs->onMove))) - break; - add_pos(f, r, posf, posr, numpos); - if (gs->board[f][r] != NOPIECE) - break; - } - /* Right */ - f = onf; - r = onr; - while (1) { - f++; - if ((f < 0) || (f > 7)) - break; - if ((r < 0) || (r > 7)) - break; - if ((gs->board[f][r] != NOPIECE) && (iscolor(gs->board[f][r], gs->onMove))) - break; - add_pos(f, r, posf, posr, numpos); - if (gs->board[f][r] != NOPIECE) - break; - } - /* Up */ - f = onf; - r = onr; - while (1) { - r++; - if ((f < 0) || (f > 7)) - break; - if ((r < 0) || (r > 7)) - break; - if ((gs->board[f][r] != NOPIECE) && (iscolor(gs->board[f][r], gs->onMove))) - break; - add_pos(f, r, posf, posr, numpos); - if (gs->board[f][r] != NOPIECE) - break; - } - /* Down */ - f = onf; - r = onr; - while (1) { - r--; - if ((f < 0) || (f > 7)) - break; - if ((r < 0) || (r > 7)) - break; - if ((gs->board[f][r] != NOPIECE) && (iscolor(gs->board[f][r], gs->onMove))) - break; - add_pos(f, r, posf, posr, numpos); - if (gs->board[f][r] != NOPIECE) - break; - } + /* Left */ + f = onf; + r = onr; + while (1) { + f--; + + if (f < 0 || f > 7) + break; + if (r < 0 || r > 7) + break; + if (gs->board[f][r] != NOPIECE && iscolor(gs->board[f][r], + gs->onMove)) + break; + + add_pos(f, r, posf, posr, numpos); + + if (gs->board[f][r] != NOPIECE) + break; + } + + /* Right */ + f = onf; + r = onr; + while (1) { + f++; + + if (f < 0 || f > 7) + break; + if (r < 0 || r > 7) + break; + if (gs->board[f][r] != NOPIECE && iscolor(gs->board[f][r], + gs->onMove)) + break; + + add_pos(f, r, posf, posr, numpos); + + if (gs->board[f][r] != NOPIECE) + break; + } + + /* Up */ + f = onf; + r = onr; + while (1) { + r++; + + if (f < 0 || f > 7) + break; + if (r < 0 || r > 7) + break; + if (gs->board[f][r] != NOPIECE && iscolor(gs->board[f][r], + gs->onMove)) + break; + + add_pos(f, r, posf, posr, numpos); + + if (gs->board[f][r] != NOPIECE) + break; + } + + /* Down */ + f = onf; + r = onr; + while (1) { + r--; + + if (f < 0 || f > 7) + break; + if (r < 0 || r > 7) + break; + if (gs->board[f][r] != NOPIECE && iscolor(gs->board[f][r], + gs->onMove)) + break; + + add_pos(f, r, posf, posr, numpos); + + if (gs->board[f][r] != NOPIECE) + break; + } } PRIVATE void |