Assignment 2: The Object of the Game
This is assignment is to be completed and submitted individually. You may not work with anyone else.
Due: Tuesday, February 12, 11:59:59 PM EST.
For this assignment, you must re-write a significant existing big-bang game. For full credit, your solution should be designed using classes and objects.
The game you will re-design is the simplified Space Invaders game as written by Austin and David in Fall 2017. The code is here. The code should be all you need, but there is a video of the code being written should you find it useful.
You should use the class/universe library instead of 2htdp/universe.
You do not need to implement any of the "main" functions other than game-main (although implementing the others may be helpful to try out simplified versions of the game on your way to a complete solution).
Your final code should not have any structure or function definitions and should intead have class definitions.
You will need to re-locate some constant definitions. If they involve calling constructors, they must appear below the relevant class definition. (But you can use these constant definitions within any method or test cases that appear in a class definition, even if above the constant definition.)
For large test cases, you may write them outside of the class definition and put tests in their own section.
When porting functions to methods, you may rename the methods so that they work with big-bang.
Submission
Use submit.cs.umd.edu to submit your solution as a single file called assign2.rkt. Either partner may submit a solution and we do not need both partners to submit. We will grade the latest submission by either partner that is submitted before the deadline.