- Manages core game mechanics and state
- Controls block movement, rotation, and placement
- Handles scoring system and level progression
- Manages audio (music and sound effects)
- Controls game speed based on score
- Implements random block generation
- Score increases based on lines cleared
- Supports multiple block types unlocked by score
- Implements 30x30 game grid
- Handles row clearing mechanics
- Manages cell states and colors
- Features gradient cell rendering
- Provides collision detection
- Includes grid glow effects
- Tracks cleared row count
- Implements various block shapes (L, J, I, O, T, S, Z, C, V, II)
- Handles block rotation and movement
- Manages block positioning
- Provides collision checking
- Supports preview landing position
- Features color-based rendering
- Implements block validation
- Manages high score system
- Stores player names, scores, and levels
- Saves/loads scores to/from file
- Displays top 5 scores
- Implements score sorting
- Prevents duplicate entries
- Maximum 10 entries storage
- Handles GIF animations
- Controls frame timing
- Supports looping animations
- Manages texture loading/unloading
- Scales animations to screen size
- Implements game intro animation
- Controls splash screen timing
- Handles screen transitions
- Manages animation frames
- Supports screen scaling
- Defines game color palette
- Provides 16 unique colors
- Includes various blue shades
- Supports color management
- Used for block and UI rendering
- Manages grid coordinates
- Handles block positioning
- Supports movement calculations
| Key | Action |
|---|---|
| ←/→ | Move Left/Right |
| ↑ | Rotate Block |
| ↓ | Move Down |
| ENTER | Start Game |
| ESC | Exit Game |
- RayLib Graphics Library
- C++ Compiler
- Audio Support
- Minimum 30x30 display resolution
- Background music
- Rotation sound effects
- Line clear sounds
- Game over sound
Made with 🎮 by YoRu