summaryrefslogtreecommitdiff
path: root/chesshelpers.h
blob: 523505a5e5ac6b2c5a1ebbb0b7ab23fb1849a0c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "vector.h"
#ifndef CHESS_HELPERS
#define CHESS_HELPERS
typedef enum {
	pawn = 1,
	knight = 2,
	bishop = 3,
	rook = 4,
	queen = 5,
	king = 6,
} piece_t;
typedef struct BoardState {
	int** pieces;
	int blackKingHasMoved;
	int whiteKingHasMoved;
	int lastPawnMove;
} board_t;
board_t init_board(int** board);
int in_board(vector_t position);
int is_empty(int** board, vector_t position);
int is_color(int** board, vector_t position, int color);
char* get_readable_coords(vector_t position);
char* get_move_name(int** board, vector_t origin, vector_t end);
#endif