iBreakout Touch is a classic game built with modern multi-touch fun.
(Background:) In Breakout, the player controls a small “paddle” which moves across the bottom of the playing area in response to user input. The objective is to use the paddle to destroy an array of “bricks” by bouncing a ball off of the paddle and the sides and top of the screen and towards the bricks. When the ball collides with a brick, the brick is removed from the playing area and the ball bounces away. The player attempts to remove all of the bricks from the screen in this way, without allowing the ball to touch the bottom of the screen, which results in loss of a life.
(What we will do:) In our breakout-inspired game, the basic objective is preserved—use a paddle to bounce a ball toward bricks. However, since our interface is multitouch, instead of having a single paddle at the bottom of the screen, we will allow the player to spawn balls and paddles at will using multitouch gestures: a flick of a finger creates a new ball and sends it flying across the screen. Two simultaneous touches within a certain distance of each other draws a paddle between those two points.
The game will require the player to clear the screen as fast as possible, and potentially race against the clock. This provides an incentive for the player to push themselves to the limits with regard to the number of balls in play.
The game will challenge the dexterity and reflexes of the user, as well as their decision-making skills and ability not to accidentally overwhelm themselves with too many balls.
Updated geometry stuff to refer to the new geometry header, instead of magic values or private constants. Interface elements (brick, ball, bat) are now responsible for calculating their own rectangles. Changed the form of the loops in drawRect:. Since the bricks now keep track of their own rectangles, there is no need to keep track of their coordinates--we can just iterate over the array (as was suggested on Saturday). Updated copyright to read "Team Dory" (from "cs354").
Added central geometry header to define all drawing values. This (when used) fixes the rightmost bricks being smaller than the rest (the coordinates of the play area, the brick area, and the screen did not match).
we have bricks