Ok so my university has assigned me the task of creating a brick breaker game for android phones (full spec below).
What I would simply like to know is which design pattern I should be using to structure my program?
If I should be using more than one which should I use and for which aspects (i.e. which parts of the program) should I use them in?
o Have functionality to start and stop games on screen (i.e. a splash screen to control game play)
o Display the score while playing
o Have a Paddle to keep ball(s) alive.
o Controlled by touches on the screen and/or sensors within the phone
o The player will lose a "life" if the paddle doesn't keep it alive. (Try different breakout games for inspiration.)
o Have a Ball (more balls will attract a higher mark)
o The ball bounces off walls except for the wall with the paddle
o When the ball hits a box it is removed for a reward (score)
o Have Boxes
o More than one box to be removed (for a reward in score)
o More than one game level, with different layouts and numbers of boxes.
o Levels must be created in a dynamic manner, so that new levels can be created easily.
o Use Multiple Threads
To receive high marks. One must:
o Add multi-phone / multiplayer functionality (using TCP networking) with two players playing against (or collaborate with) each other simultaneously, i.e. two paddles on-screen simultaneously, one controlled by each player (worth max. 15%).