aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/tak.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/include/tak.c b/include/tak.c
index d8d0a8e..ef4fc7d 100644
--- a/include/tak.c
+++ b/include/tak.c
@@ -297,8 +297,9 @@ check_road_colour(const enum COLOUR colour) {
// First left-to-right
dfs_pntr = 0;
for (uint8_t y=0; y<board_size; y++) {
- if ( COUNT_AT(THE_COORDS(0, y)) &&
- (colours[THE_COORDS(0, y)] & 1) == colour) {
+ if ( COUNT_AT(THE_COORDS(0, y))
+ && (colours[THE_COORDS(0, y)] & 1) == colour
+ && STONE_AT(THE_COORDS(0, y)) != STONE_STANDING ) {
dfs_stack[dfs_pntr++] = THE_COORDS(0, y);
celldat[THE_COORDS(0, y)] |= DFS_MASK;
}
@@ -312,8 +313,9 @@ check_road_colour(const enum COLOUR colour) {
// Then bottom-to-top
dfs_pntr = 0;
for (uint8_t x=0; x<board_size; x++) {
- if ( COUNT_AT(THE_COORDS(x, 0)) &&
- (colours[THE_COORDS(x, 0)] & 1) == colour) {
+ if ( COUNT_AT(THE_COORDS(x, 0))
+ && (colours[THE_COORDS(x, 0)] & 1) == colour
+ && STONE_AT(THE_COORDS(x, 0)) != STONE_STANDING ) {
dfs_stack[dfs_pntr++] = THE_COORDS(x, 0);
celldat[THE_COORDS(x, 0)] |= DFS_MASK;
}