This project implements the classic Tetris game in C language following the original BrickGame console specifications. The implementation consists of two main components:
- A core game logic library using finite-state machines
- A terminal-based interface using ncurses
The game faithfully recreates the original Tetris experience with all standard pieces, controls, and mechanics.
- All 7 classic Tetris pieces (I, J, L, O, S, T, Z)
- Piece rotation and horizontal movement
- Hard drop (instant fall) mechanic
- Next piece preview
- Line clearing with proper block collapsing
- Game over when pieces reach the top
-
Start/Pause: 's' key
-
Quit: 'q' key
-
Move Left: left arrow key
-
Move Right: right arrow key
-
Soft Drop: down arrow key
-
Hard Drop: space bar
-
Rotate: up arrow key
-
Scoring system with progressive points for multiple lines
-
Persistent high score storage
-
Level progression with increasing speed
-
Clean terminal interface with color support
- GCC compiler (C11 standard)
- ncurses library
- check library for tests (optional)
git clone https://github.com/Deatherd/Brick-Game.git
cd Brick-Game/src
make tetris EXTENDED=1
./tetris