Implementation Constraints

1. Make all blocks an object

2. Take a random value from the constructor and create the corresponding block shape.

3. Create a Tetris based on the contents of today’s class (to prevent cheating).

4. Implement a thread that determines the block destruction by checking the stacked blocks on a line-by-line basis.

5. Set the size of the whole plate to 20×40, and store the information in a two-dimensional array.

6. Use what you learned in class (class, inheritance, polymorphism, operator overloading, etc.).

Game Constraints

1. Implement basic game functions of Tetris

2. Obtain 10 points for each block broken.

3. When the game is over, record your score and show the total ranking.

4. Make a 1% chance of bomb items destroying all blocks.

5. Block color is specified randomly.

6. After 60 seconds of game time, enter the second level, enter the second level,

(See next page), the falling speed of the block is from one to two steps per second

Let the system accelerate once every 0.5 seconds.

Step 1 block Blocks added in Step 2