Commit | Line | Data |
---|---|---|
4ddf6f1a JB |
1 | /* |
2 | * ===================================================================================== | |
3 | * | |
4 | * Filename: othello.h | |
5 | * | |
6 | * Description: Header for othello board handling functions | |
7 | * | |
8 | * Version: 1.0 | |
9 | * Created: 25/04/2017 15:16:37 | |
10 | * Revision: none | |
11 | * Compiler: gcc | |
12 | * | |
13 | * Author: Jerome Benoit (fraggle), jerome.benoit@piment-noir.org | |
14 | * Organization: Piment Noir | |
15 | * | |
16 | * ===================================================================================== | |
17 | */ | |
18 | ||
19 | #ifndef OTHELLO_H | |
20 | #define OTHELLO_H | |
21 | ||
2e5c1894 | 22 | #include "constants.h" |
54f1c58c | 23 | #include "list.h" |
2e5c1894 | 24 | |
54f1c58c JB |
25 | struct shots_list { |
26 | struct list_head list; | |
27 | unsigned int*** pawn_array_member; | |
28 | }; | |
74e2b93b JB |
29 | |
30 | unsigned int current_player(unsigned int round_count); | |
a8b54576 | 31 | unsigned int eval_winner(unsigned int nb_white, unsigned int nb_black); |
74e2b93b JB |
32 | |
33 | int** init_pawns(unsigned int pawn_array[board_size][board_size]); | |
a8b54576 JB |
34 | unsigned int get_box_value(int y, int x, unsigned int pawn_array[board_size][board_size]); |
35 | int** set_pawn(int y, int x, unsigned int type, unsigned int pawn_array[board_size][board_size]); | |
74e2b93b | 36 | |
54f1c58c | 37 | bool is_valid_input(int y, int x, unsigned int pawn_array[board_size][board_size]); |
74e2b93b | 38 | bool is_box_type(int y, int x, unsigned int pawn_array[board_size][board_size], unsigned int type); |
54f1c58c | 39 | bool is_board_full(unsigned int pawn_array[board_size][board_size]); |
74e2b93b JB |
40 | |
41 | unsigned int count_pawn_type(unsigned int pawn_array[board_size][board_size], unsigned int type); | |
2e5c1894 | 42 | |
4ddf6f1a | 43 | #endif /* OTHELLO_H */ |