Phase I - Tetris

Building on the basic framework presented in the design section we can extend the system to handle a simple falling blocks game such as Tetris. I've tried to keep the classes general enough so that a tetris clone made with these classes doesn't need to conform to a specific layout and play style. I've tried to make it open ended enough that developers can play around and come up with something interesting. For this reason I'll probably end up changing the CheckRow and RemoveRow functions from the BlockPile object, but I figured I'd just throw them in for now.

An additional note: the DisplayAreas at the top are very closely related to the derived Objects at the bottom of the diagram and really should have associations between them, but I though they cluttered the diagram too much and it was pretty obvious which Object would be contained in a given DisplayArea.

The lighter blocks are the added classes here. Any comments or suggestion about this architecture can be posed on the tetris forum. I plan on starting to code the skeleton as soon as possible so that I (and other interested people) can begin to put the GPI to good use making some games as soon as possible! I would like some input before I get too far, though, so if you have any comments (good or bad) please let me know. :)

Message Board
(and coming soon... some code)