Skip to content

lunarwhite/minesweeper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

minesweeper

Classic Microsoft Windows game, bulid with Java Swing.

.
│   README.md
├───doc
│       1-ProblemAnalysis.pdf
│       2-Design.pdf
│       3-ErrorHandling.pdf
├───image
├───res
└───src
    ├───bean
    │       HeroBean.java
    │       MineLabel.java
    ├───dialog
    │       AboutSweeping.java
    │       HeroDialog.java
    │       UserDefinedDialog.java
    ├───listener
    │       Listener.java
    │       UserDefinedListener.java
    ├───main
    │       MainFrame.java
    ├───panel
    │       BombjMenuBar.java
    │       BombjPanel.java
    │       FacejPanel.java
    ├───timer
    │       TimerListener.java
    └───tools
            LayBomb.java
            StaticTool.java

1 Overview

  • test and run:
    • download latest release and unzip
    • double-click minesweeper.jar in folder with \image
  • jdk: openjdk8-redhat

2 Documents

  • 1-ProblemAnalysis.pdf
    • Analyzing the Problem
    • Requirements Specification
    • Prototype
  • 2-Design.pdf
    • Data Structures
    • Algorithms
    • Modular organization
  • 3-ErrorHandling.pdf

3 Tool-list

  • Conditionals (if-else)
  • Complex conditionals (nested if-else)
  • Loops
  • Nested loops
  • User-defined methods
  • User-defined methods with parameters
  • User-defined methods with return values
  • Use of additional libraries. Example: Random, GUI.
  • Arrays
  • 2D Arrays
  • User-defined objects
  • User-defined objects where more than one instance of the object is created
  • Input validation: handle most common mistakes in input - and react usefully.
  • User-defined objects where more than one instance of the object is created
  • Use of flags other than to simply determine if a loop should repeat or not.
  • Use of try-catch to handle at least two checked exceptions.

4 Reference

5 Sceenshots

expert-mode

game-over

easy-mode win