Application for minesweeper, JAVA Programming

Assignment Help:

This program will help you start doing GUI programming, and is a good example of 2D arrays. Mine Sweeper is a classic game that is played on a 2D grid of cells. At the beginning of the game, all of the cells are "covered", and some of them have mines in them. The goal of the player is to uncover all of the cells that are not mines without detonating a mine. This happens when the player tries to uncover a cell with a mine in it.

Instructions:

1. Write GUI application that plays the game of mine sweeper. One way to do this would be to have the main application extend JFrame. The cells of the mine field could then be JButtons in a Grid layout.

2. A cell should exist in two states, covered and uncovered. In the "covered" state, the cell is blank. In the "uncovered" state, a "mine" cell shows an asterisk (*), or a picture of a mine. An uncovered "clear" cell displays the number of neighbor cells that are mines (or is blank if there are no neighboring mines).

3. Left clicking on a covered cell uncovers it.

4. Right clicking on a covered cell toggles a flag indicating that the user thinks there is a mine in that location.

5. When the user uncovers a clear cell that has no neighboring mines, all of it's neighbors are also uncovered. If any of the neighbors have no neighboring mines, their neighbors are uncovered as well, and so on.

6. If the user tries to uncover a mine cell, the mine explodes, and the player loses the game.

7. Optional: Use images to indicate mines, and flags. Make some kind of explosion special effect. Allow the user to restart the game after winning or losing. Allow the user to specify the size of the minefield, and the number of mines in it.

Assignment checklist:

  • Write a mine sweeper program.
  • Make sure the program compiles and runs from the command line without modification.
  • Include your source, executable files and report in your turnin.
  • Zip all of your files in a SINGLE .zip file and turn it in to the D2L dropbox.

Related Discussions:- Application for minesweeper

What are the principle concepts of oops, What are the principle concepts of...

What are the principle concepts of OOPS? Principle concepts upon that object oriented programming and design rest. They are: Abstraction: Abstraction refers to the act of

Calculate Bill program, Notice that each row now has the type of customer a...

Notice that each row now has the type of customer and the additional data needed. calculateBill remains the same in Customer.  However, the calculateBill in Corporate will add a

Illustrate the parser method, Illustrate the parser method The below ta...

Illustrate the parser method The below table summarizes the parser methods available to a java programmer.

Need professional framework coder with coding experience, Need Professional...

Need Professional Framework Coder with Video Coding Experience? Project Description: Professional Framework Coder with Video Coding experience. You must know API, Java, C++,

I need java coding, I need Java coding Need to develop a website. Requir...

I need Java coding Need to develop a website. Require Java coder's urgently. Skills required: HTML, Graphic Design, Java, PHP, Website Design

Developed an asteroids game, In the previous assignments, we have developed...

In the previous assignments, we have developed an Asteroids game. In this assignment, we are going to use the same codebase to develop a different gameplay. The inspiration for thi

What is an applets, What is an Applets? Applets: These are small java...

What is an Applets? Applets: These are small java programs. They can send from one to another computer over internet by using Applet Viewer which supports java. Applets

Explain identifiers in java, Explain Identifiers in Java ? Identifiers ...

Explain Identifiers in Java ? Identifiers are the names of variables, classes, methods, packages and interfaces. Unlike literals they are not the things themselves, only ways o

Explain the library java.lang.math, Explain the library java.lang.Math ? ...

Explain the library java.lang.Math ? The Java class library is huge. We will not cover it all presently. In fact, the remaining eight classes will focus mostly on the class lib

Preemptive scheduling and time slicing, In pre-emptive scheduling, the high...

In pre-emptive scheduling, the highest priority task implements until it enters the waiting or dead states or a higher priority task comes into existence. In time slicing, a tas

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd