Mangala skips the opponent's store, but Board.move dropped a stone in every pit and store. Moves with enough stones to pass it gave the opponent a stone and ended one pit too early, so captures and extra turns were decided on the wrong pit. Board.getSowingPath now computes the pits a move sows into, and Board.move and core's getSowingPath (the web board's move preview) both use it. Game step indexes are now always within the board. |
||
|---|---|---|
| .. | ||
| game_rules | ||
| Board.test.ts | ||
| MancalaGame.test.ts | ||
| TestUtil.ts | ||