NOTE: Paused in favour of working on #154 first, which is based on the work in this PR but removes the split cell complexity.
Fixes #41
This supercedes #147, taking an approach of abstracting different game implementations into their own packages, with custom implementations of Coord, Board, Minefield, Game, and Controller (using abstract base classes and mixins for code sharing, and the engine module to bring it all together).
[x] Reimplement board to use an abstract 'coord' type, so that code using the board doesn't have to check whether cells are split everywhere
[ ] Get chording working
[ ] Detect game being won
[ ] Add button to switch mode (put in 'experimental' for now)
[ ] Disable highscores, other features that aren't working in combination
NOTE: Paused in favour of working on #154 first, which is based on the work in this PR but removes the split cell complexity.
Fixes #41
This supercedes #147, taking an approach of abstracting different game implementations into their own packages, with custom implementations of
Coord
,Board
,Minefield
,Game
, andController
(using abstract base classes and mixins for code sharing, and theengine
module to bring it all together).