summaryrefslogtreecommitdiff
path: root/src/chess.h
diff options
context:
space:
mode:
authorKai Stevenson <kai@kaistevenson.com>2023-03-19 23:20:53 -0700
committerKai Stevenson <kai@kaistevenson.com>2023-03-19 23:20:53 -0700
commite33dc4755fb08ed08f30b5e1af65457556d5bcb7 (patch)
treec075e9c4f076a7772eb5c0665fbd137e2fd6c3ab /src/chess.h
parent26321477ae47bbf5d89b651842d8295e9ea9ea5d (diff)
fscomch--communication between multiple chess processes
Diffstat (limited to 'src/chess.h')
-rw-r--r--src/chess.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/chess.h b/src/chess.h
new file mode 100644
index 0000000..1d88a6e
--- /dev/null
+++ b/src/chess.h
@@ -0,0 +1,17 @@
+#include "vector.h"
+#include "console.h"
+#include "chesshelpers.h"
+#ifndef CHESS
+#define CHESS
+vectorp_t get_pawn_moves(board_t board, vector_t position, int color);
+vectorp_t get_knight_moves(board_t board, vector_t position, int color);
+vectorp_t get_bishop_moves(board_t board, vector_t position, int color);
+vectorp_t get_rook_moves(board_t board, vector_t position, int color);
+vectorp_t get_queen_moves(board_t board, vector_t position, int color);
+vectorp_t get_king_moves(board_t board, vector_t position, int color);
+vectorp_t get_moves(board_t board, vector_t position, piece_t piece);
+vectorpp_t get_all_moves(board_t board, int color, int excludeKing);
+vector_t get_king_position(board_t board, int color);
+int is_in_check(board_t board, int color);
+vectorp_t get_moves_final(board_t board, vector_t position, piece_t piece);
+#endif