Project #3 -
Corners Revisited - 5%
due by midnight, U Jun 25
Deduction for lateness is 10% per day for 5 days, then no credit.
Start early!
Version
1.0, last updated
06/07/2006
|
GRADING CRITERION: (0.4% for time
estimate, 4.6% for work)
- 75% correct execution
- 5% documentation
- 20% coding practices (maintainability etc.)
Using Microsoft Visual C#, modify the graphical user interface of the Corners
game
you created for Project 2 as described below.
RULES:
- The behavior and size of the game remain exactly the same, except as
noted below. This is not a group project; you are expected to work alone.
- Please fix any known bugs from your Project 3, and then revise the graphical user interface (GUI) of Corners as follows.
You must implement an additional graphical user interface (GUI) style that
uses PictureBox objects with a default image of a smiley face. The
former red buttons in the grid will be represented by a frowney face of a
different color. Below you can see two different graphics sets that you
might use (available from the RESOURCES section below):
- The program must be able to offer the user either GUI. Each time it starts,
the program must query the user about which kind of
interface to display, as follows:
If the user selects Yes, you'll display the original button interface; but if No, display the new picture interface.
Here's a revised Corners prototype (its game state does not save)
that implements this feature. Here's code for the dialog box above:
DialogResult result = MessageBox.Show("Click Yes for buttons (or No for pictures):)",
"Choose style", MessageBoxButtons.YesNo);
if (result == DialogResult.Yes
{
// do something to get a button GUI
}
else
{
// do something to get a picture GUI
}
- Any images used must be embedded in the assembly (i.e., image files must
not be separate files in the application folder).
- The extra credit portion of Project 3 is required for this project--the
game must include the "Resume last game on startup" option. The Resume option will save the state of the current game (if it
has not been won) and restore the game when the program is restarted later.
The option is persistent; if you exit the program between games,
the Score persists if the Resume option is selected.
For up to 1% extra credit to your course grade:
Add sounds to your game, but if you do, you must allow users an option to turn
sounds off. The amount of extra credit is up to the discretion of the
grader, based on how well the feature works and if it is well documented.
RESOURCES:
-
Here's a
sample project that displays a
bitmap in a PictureBox.
- Possible
bitmap files: smiley
| frowney
files |
smiley1
|
frowney1
- You may select
other bitmaps as long as they are 20x20 pixels per the "button" size in
Project 2.
GOALS:
- To practice refactoring code you wrote earlier.
- To see what it's like to have to modify or enhance your own code.
- To turn your initial prototype into a more mature Windows game application.
GETTING HELP:
If you need help, try (in preferred order):
- posting to the Discussion Group in Blackboard
- call or find me or a TA
- send email (last resort)
TURN-IN:
The turn-in procedure for programming assignments is as follows:
- Create a folder with your emailID as its name. The folder
I would create would be pgpalmer; yours will be different.
- Copy your Visual Studio solution and project, and all related files, into
this folder.
- Test your copied program thoroughly to make sure it works.
- When fully tested, zip up the entire folder, including all files
underneath the folder.
NOTE: Please do not use the "save full path info" option.
Test unarchiving the zip file to make sure it produces all your files and
directories, but in whatever folder the person unzipping chooses (such as, on
the Desktop).
If correct, log into Blackboard and turn in the
zip file (via file upload in your web browser).
Visitors:
