Exercise: Create an interface to play any game

This exercise is provided to allow potential course delegates to choose the correct Wise Owl Microsoft training course, and may not be reproduced in whole or in part in any format without the prior written consent of Wise Owl.

The answer to the exercise will be included and explained if you attend the Wise Owl course listed below!

Category ==> Visual C Sharp 2010  (65 exercises)
Topic ==> Interfaces  (2 exercises)
Level ==> Harder than average
Course ==> Adv C# | Classes & LINQ
Before you can do this exercise, you'll need to download and unzip this file (if you have any problems doing this, click here for help).

You need a minimum screen resolution of about 700 pixels width to see our exercises. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.

Create a new project called InterfaceGames.  Add all of the files in the above folder into your project apart from the images, then choose to add the owl images into the project's Resources folder:

Resources folder

Double-click on this folder to open it, then choose to add resources to it in a reasonably intuitive way.

You may well need to spend some time resolving compilation errors to do with namespaces and class names before continuing - nothing ever seems to import first time correctly!

Try running the project with 3 different start forms.  This is what you should see:

Start form What you should see
frmStart A form with two buttons on, to play Countdown or Pairs.
frmCountdownLetters A form for playing the letters game in Countdown.
frmPairsGame A form for playing pairs.

Write an interface so that the following code works (note that the games are quite basic, and aren't the point of this exercise)!

private void btnCountdown_Click(object sender, EventArgs e) {

// button to play Countdown

Countdown g = new Countdown();

RunGame(g);

}

 

private void btnPairs_Click(object sender, EventArgs e) {

// button to play Pairs

Pairs p = new Pairs();

RunGame(p);

}

 

private void RunGame(IGame game) {

// play any game which implements IGame interface

game.Play();

MessageBox.Show(game.Results);

}

You'll need to create an IGame interface and Countdown and Pairs classes which implement it.

Here's what you might see after playing Countdown:

Countdown letters

The system will display the letters chosen.

 

After playing Pairs, you might see a message like this:

Pairs message

Hopefully you'll improve on this, though!

 

If you have any spare time, you could always improve on the two games' code!

This page has 0 threads Add post