A basic tetris clone done in Flutter as a personal learning project
- Flutter 1.7.8+hotfix.4
- frideos: ^0.7.0+1 - Helpers for managing streams (based on and compatible with rxDart)
- collection: ^1.14.11 - used to compare Lists and Maps
- vector_math: ^2.0.8 - used to manage block rotation
Compile and run file
[x] use random generator compliant with Tetris guidelines to generate block order
[x] on contact, allow delay before locking piece
[x] rotate piece
[x] wall & block detection
[x] wall & block detection on rotation
[x] hard drop
[x] fast drop
[x] t-spin
[x] ghost piece
[x] pause game
[] display next pieces
[] store and swap piece
[] change fall speed
[] toggle rotation direction
[] adjust piece spawn position to puzzle height
[] background music
[] sound effect
[] scores
[] save high score
[] themes
[x] start screen
[] settings screen
[] set speed
[] toggle ghost piece
[] game over screen
[] Refactor variable names for clarity
[x] DRY up code (sort of)
[x] Refactor Bloc
[] use provider library, or Didier Boelens's BlocProvider
[] write unit tests
[] Refactor proper Tetrimino class with named constructors
[] use mixins