Closed

Write some Software

This project received 3 bids from talented freelancers with an average bid price of $1017 USD.

Get free quotes for a project like this
Employer working
Project Budget
$10 - $30 USD
Total Bids
3
Project Description

Asteroid game

Example solution

Description:

simple Asteroid game

asteroids are moving randomly on the screen

space ship is moved with arrow keys

Functionality:

Window:

fixed size 700 x 500

top menu with 'File' and 'Help' buttons

board is filling rest of window

no icon and custom text on top title bar

Top menu

'File' has two children: 'New game' and 'Exit'

'New game' initializes new game

'Exit' closes the form

'Help' has one child: 'About'

'About' displays message box with custom text, custom caption and only 'OK' button

Game board

Black background filling all remaining space of window

25 asteroids moving randomly on the board

asteroid: circle, radius 20px, background Grey

space ship moved by pressing arrow keys

space ship: square, size 25px, background Blue

when asteroid fly of the board it is no longer visible and is not replaced by a new one

space ship and asteroids do not interact in any way

all objects can be "drawn" as labels (no real drawing is required)

Additional constrains:

before form is closed (by 'Exit', 'X' or Alt+F4) it prompts user for confirmation by message box

all message boxes are dialog windows: while they are open main window is blocked

when message box is displayed game pauses

Hints:

FormClosing

[url removed, login to view]()

[url removed, login to view]

[url removed, login to view]

[url removed, login to view]

[url removed, login to view]

[url removed, login to view]

GraphicsPath

[url removed, login to view]

Random

Timer

Points:

proper main window, message boxes (except pausing game) and blank board: 4 points

proper board with all constrains and message boxes pausing game: 4 points

Windows Forms part 2

Example solution

Resources

Functionality:

Window:

Custom background

Asteroids and spaceship drawn with supplied graphics

Board has Context Menu (right- click) with 2 options - 'Ennable immortality' and 'Disable immortality'

Top menu

New item 'Window' with two children - 'Background' and 'Reset'

'Background' stops the game and shows file dialog with filters for Image files and custom title

Chosen file becomes background of board - it is stretched to size of board

'Reset' resets background to default

Bottom menu strip with information about time in seconds

Game board

space ship moved by pressing arrow keys but now pressing an arrow accelerates or decelerates spaceship in proper direction

both asteroids and spaceship can fly over one edge of the board and appear on the other edge (they should slide through edge)

when immortality is enabled spaceship don't interact with asteroids

when immortality is disabled collision of spaceship and asteroids can occur and then message box is shown with information of how long player played

Additional constrains:

In this part 'drawing' with controls is FORBIDDEN one has to use proper drawing methods of Graphics object

There is no visible flickering (use double buffering)

all functionality of part one should be present

when all windows, message boxes and context menu are shown game should pause

when player dies the message box shows 'GAME OVER' title and information with time of game

after 'GAME OVER' massage box, new game is started with enabled immortality, timer reset

Hints:

Open file dialog

Context menu strip

Simple drawing with GDI:

Step 1: Load proper bitmap from file:

Image bmp = new Bitmap("[url removed, login to view]");

Step 2: Put PictureBox control named 'box' on form.

Step 3: Draw with 'bmp' on 'box' using double buffering:

Image buf = (Image)[url removed, login to view]();

using (Graphics g = [url removed, login to view](buf))

{

[url removed, login to view](Black);

[url removed, login to view](bmp, 0, 0);

}

[url removed, login to view] = buf;

Above sample code will make picureBox black and draw [url removed, login to view] picture in left up corner.

Points:

asteroids and spaceship drawn with graphics - 2p

asterids and spaceship can fly through edges - 2p

spaceship is controlled properly with arrows (accelerating and decelerating) - 2p

proper context menu with enabling and disabling items and bottom strip with time info - 2p

collicion detecting, message box with time information and starting new game - 2p

changing and reseting background - 2p

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online