this project has been discotinued - what you see is what you get! Perhaps I'll open this again if I have the time
Implementation of the original game written in C#, WPF, Prism 7.1
- will install under "C:\Program Files (x86)\Andrei Lucaci\Minesweeper":
-
Three original custom boards:
- Beginner: 8x8 with 10 mines
- Advanced: 16x16 with 40 mines
- Expert: 24x24 with 99 mines
-
Information:
- About us
- Rules
-
Header information:
- Number of mines (either valid or flagged) - left
-
Restart game - displays also game states - middle
- Smile - new / ongoing game
- Glasses (cool) - win
- x.x face (dead) - loose
-
Timer - right
-
Stats - after each game you get the stats:
The code is written in C# with WPF and Prism 7.1
The project structure is as follows:
-
Minesweeper.Engine:
- Holds the logic of the application, all the computations and calculations
-
Minesweeper.Infrastructure:
- Holds DTO's and configuration information globally available to all the application
-
Minesweeper.Models:
- Holds the DTO's of the application
-
Minesweeper.Ui:
- Handles all interaction of the ui
The dependency diagram shows something like this:
The code metrics shows information about the code. Currently the code's maintainability index is green, that is, it's not that of a spagetti code :)
-
a known issue is the slow loading time for the Expert games. The algorithm that generates the board still needs improvement. -
code issues: there are still code issues, which will be solved in time:under implementation
- add save / open games
- add records / time / configuration
- add amazed face to the left / right click
stability improvementsadd skinsfix code issues- redesign stats
- redesign pop-ups