08 Prove : Milestone - Skeet
Overview
To help you stay on track to finishing the Skeet project, you are required to meet certain milestone deliverables. You are encouraged to get further on the project, but this submission is a minimum standard to make sure you are on track.
Refer to the Skeet project description for the details of this project.
Requirements
For this milestone, you need to first, get the provided code to compile and then, implement bullets firing correctly, and a single "normal" bird flying across the screen.
You should recognize that a bullet and a bird have many things in common, and create a base class with these common elements that they can both derive from.
Important: Use a Bird Pointer
For reasons that will become apparent next week, in order to accommodate the three different types of birds, the game class will need to have a pointer to a bird (Bird*) and dynamically allocate it on the heap. To make sure you are on the right track, for this milestone you MUST store your bird as a Bird*.
Thus, at a minimum, you should have the following:
- A base class for flying objects.
- A class for a bullet
- A class for a bird
- Have separate files for the above mentioned classes, and a makefile that correctly builds everything in the Linux Lab environment
- Demonstrate the rifle taking aim and firing bullets in the correct direction
- Demonstrate bullets flying across the screen
- Demonstrate a bird flying across the screen
- Use a
Bird*for your bird
The following are not specifically required at this point (although having them done already would be a great thing!):
- All three types of birds
- Bullets / birds dying when they collide
- Bullets / birds dying when they leave the screen
- Scoring
Helpful Hints:
- Don't forget to make use of the Point and Velocity classes from the Moon Lander project.
- It is much easier to start bullets at the corner of the screen (inside the rifle) than at the tip of the barrel, and this will be sufficient as long as the angle is correct.
Submission
Regardless of the approach you take for your personal development, your program must be able to run in the Linux Lab environment.
- When complete, if necessary, copy your code to the Linux Lab and ensure that it compiles.
- Open the makefile and ensure that it has the proper information in the header (i.e., your name, class, instructor).
- Make sure the name of the assignment is "Milestone 08, Skeet" (not Assignment 08, or Project 08).
- Create a tar file with all of your files and submit it. For example:
- There is no testBed script for this assignment.