Basic Objects and their behaviors (Brainstorming):
Ball Paddles ScoreBoard Net
==== ======= ========== ===
ChangeSpeed MoveUp Init Draw
BouncePaddle MoveDown AddPlayer1 Erase
BounceWall CheckCollision AddPlayer2 Update
Reset Init HasEnded
Draw Draw GetWinner
Erase Erase Draw
Update Update Erase
Update
Numbers
=======
Draw
Erase
SetNumber
Ball, Paddles, ScoreBoard, and Net all share:
Draw, Erase, Update
Therefore, these all have a common base class:
GameElement