The goal of this assignment is to give you experience creating a model which simulates some game physics for a simple game.
The game is played in a 2D universe with a floor at elevation y=0.
There are three kinds of objects:
Also create a quick screencast showing the code being tested.
Add links to both of these in your homework log.
3 = A level - create a model with clear, elegant code and excellent javadoc comments for the class and all public elements (constructors, methods, fields). The classes should all have a testThis method which runs a series of tests. Also create a text-based interface that lets the user play the game as described above with one level where they give commands to catch and/or throw a disk in increments of time dt.
2 = B level - create the model with good, well-documented code, and create a text-based interface that lets you step through the simulation in time steps of length dt (e.g. 0.1 seconds), and lets you give text based commands to move the object to the left or right or give it a velocity. After each time step the location of all objects is printed..
1 = C level - create a model, but with incorrect code and/or inadequate documentation and/or poor testing of the code.
0 = E level - you don't hand in a credible program ....
Of course, we don't expect to see any level 0 or 1 homeworks!