/Tetris

Software Development IV - assignment

Primary LanguageC#

Check the Wiki for more information on how this game is being made.

Tetris

Tetris is a popular retro game, where a random sequence of pieces composed of four square blocks fall down the playing grid. The object of the game is to manipulate these pieces, by moving each one sideways and rotating it counterclockwise by 90 degree units in order to create a horizontal line of blocks without gaps. When such a line is created, it disappears, and any block above the deleted line will fall.

If you have never played Tetris before, take a look at http://en.wikipedia.org/wiki/Tetris.

There are seven pieces in Tetris, each composed of four blocks and with its own colour. When the game starts, an empty board is displayed; the standard board is 10 x 20 cells. A Tetris piece, chosen randomly from the seven possible Tetris pieces, appears at the top of the board as the piece in play. The • dot in the pieces above is not seen on the screen; it indicates the square that will be placed in the cell at the top row and sixth column to the right. This piece should fall by moving down the board, one row at a time. A piece cannot fall into a square already occupied by a previously fallen piece (i.e., the pile). When a piece can fall no further, it stops moving.

Pieces can be rotated or moved left/right, while they are falling as long as they do not fall out of the grid. Left/right movement shifts the piece one square. Rotation is counter-clockwise by ninety degrees. The diagram below shows the rotations of the pieces; you will notice that the • dot also indicates the centre of the rotation. The player can also drop the piece to the floor / pile. By dropping a piece, the piece simply free-falls down as far as it can.

###Language C#

###Version 1.0 (+) Library for business class
(+) Business Classes structure (found in wiki)
(+) Unit Testing Project & Corresponding classes (in the works)

###Version 2.0 (+) Logic Completed
(+) Unit Testing Structure
(+) Required unit testing complete

###Version 3.0 (+) Add a MonoGame Project
(+) Add a Tetris icon