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
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. :)
(and coming soon... some code)