Features
- Three Difficulty Levels: Beginner, Intermediate, Expert
- Mine Detection: Click to reveal cells, right-click to flag
- Auto-Reveal: Automatically opens adjacent cells when appropriate
- Timer: Tracks game duration
- Smile Face: Shows game status (playing, won, died)
- Mine Counter: Displays remaining mines
- Mobile Detection: Blocks mobile devices (mouse-only game)
Component Structure
Location:src/WinXP/apps/Minesweeper/index.jsx
Configuration
Game Settings
Fromconfig.js:
App Settings
Fromapps/index.jsx:
Mobile Detection
Minesweeper blocks mobile devices since it requires mouse interaction:Dropdown Menus
FromdropDownData.js:
Game Menu
- New (F2) - Start new game
- Separator
- Beginner - Switch to 9x9 grid with 10 mines
- Intermediate - Switch to 16x16 grid with 40 mines
- Expert - Switch to 16x30 grid with 99 mines
- Custom… - Custom grid configuration
- Separator
- Marks (?) - Toggle question mark feature (checked)
- Color - Toggle color mode (checked)
- Sound - Toggle sound effects
- Separator
- Best Times… - View high scores
- Separator
- Exit - Close game
Help Menu
- Contents (F1) - Help documentation
- Search for Help on… - Search help topics
- Using Help - Help system tutorial
- Separator
- About Minesweeper - Version info
Game State Management
The game uses a reducer pattern for state management:Cell States
Each cell can be in one of these states:- cover: Hidden, clickable
- flag: Right-clicked once, marked as mine
- unknown: Right-clicked twice, marked with ”?”
- open: Revealed, shows number or empty
- mine: Revealed mine (on game over)
- die: The mine that was clicked (red background)
- misflagged: Flagged but not a mine (on game over)
