first commit
This commit is contained in:
28
CS2335/FinalSubmission/Design_Changes_P3.txt
Normal file
28
CS2335/FinalSubmission/Design_Changes_P3.txt
Normal file
@@ -0,0 +1,28 @@
|
||||
NOTE: The current design is UML documented in the currentDesign.mdl file
|
||||
which is there for your viewing pleasure with Rational Rose.
|
||||
|
||||
1. Physics Engine
|
||||
As you can see, the Physics Engine is heavily modified. This was done because
|
||||
PMD is a fickle lover, as such things needed to be moved around and rearranged.
|
||||
rayTracing was moved into separate functions, instead of overloading
|
||||
calculateNextPosition with every possible type of thing, it was decided to
|
||||
better move things into separate functions, hence all the new cnp* functions.
|
||||
These functions handle the specific things needed for given types of objects.
|
||||
For example, Lemmings are treated differently by the Physics Engine than
|
||||
Particles, though gravity and rayTracing are done the same between the two.
|
||||
THe Physics Engine also handles some of the more Physics related Lemming
|
||||
job types, such as Climber and Glider. It was deemed silly to use their given
|
||||
process() functions as this would become overly complicated, though their Job
|
||||
types still contain the process() function as well as having the Job classes
|
||||
with new private members to store various features. For example, the Bridger
|
||||
is treated exactly as a lemming, however his process function is called and
|
||||
a part of the brick is laid until all twelve bricks are laid. In his class
|
||||
he also has a "bricks" member which keeps track of the # of bricks laid.
|
||||
|
||||
2. Networking
|
||||
Due to a problem with the network games and one person winning before the other
|
||||
finished, it was necessary to create a LevelFinishMessage. This message informs
|
||||
the other player when they have finished so as to bring the player to the
|
||||
game stats screen. This message is pretty much a placeholder as it merely
|
||||
needs to exist in sending, not actually send any large amount of data.
|
||||
|
||||
Reference in New Issue
Block a user