]> git.notmuchmail.org Git - dvonn/blobdiff - dvonn-board.h
Add a new dvonn_board_cell_owned_by function
[dvonn] / dvonn-board.h
index 2971a2738e31262c5658b8c944a74933c81d7f81..71923011e0ce07611de88a10454009e4d6f0137a 100644 (file)
@@ -88,4 +88,30 @@ dvonn_board_move (dvonn_board_t *board,
                int x2, int y2,
                char **error);
 
+/* Pass rather than moving, allowing the turn to pass to the
+ * opponent. This should only be allowed if there are no legal moves,
+ * but that is not yet enforced. Returns TRUE if the pass succeeds. */
+int
+dvonn_board_pass (dvonn_board_t *board);
+
+/* Is the cell at (x,y) occupied by a piece. Returns FALSE for all
+ * out-of-bounds coordinates. */
+dvonn_bool_t
+dvonn_board_cell_occupied (dvonn_board_t *board,
+                          int x, int y);
+
+/* Is the cell at (x,y) occupied by a piece (or stack) with the given
+ * player's piece at the top. Returns FALSE for all out-of-bounds
+ * coordinates. */
+dvonn_bool_t
+dvonn_board_cell_owned_by (dvonn_board_t *board,
+                          int x, int y, dvonn_player_t player);
+
+/* Is the cell at (x,y) surrounded by other pieces, (such that it is
+ * not legal for a piece at (x,y) to move. */
+dvonn_bool_t
+dvonn_board_cell_surrounded (dvonn_board_t *board,
+                            int x, int y);
+
+
 #endif