A project meant to serve as a way for me to learn how to make a game using the pygame module. This is intended to be a Tetris clone.
LEFT and RIGHT arrow keys to shift tetrimino left and right.
DOWN arrow key to speed up falling tetrimino.
Z or LCTRL keys to rotate tetrimino counter-clockwise.
X or UP keys to rotate tetrimino clockwise.
SPACE key to drop tetrimino, and LSHIFT to hold tetrimino.
ESCAPE key to pause.
- (Done) Grid collision detection and piece shifting.
- (Done) SRS implementation of rotation and spawn logic.
- (Done) Arika implementation of wall kicks.
- (Done) A ghost to predict where the piece will fall.
- (Done) Both soft and hard drop methods to rush the piece falling.
- (Done) Delayed Auto Shifting, and ARE, allowing DAS and Hold to be available during this time.
- (Done) Line clear in naive, sticky, and cascade methods.
- (Done) Score tracking system and a way to save and view high scores.
- (Needs Testing) Arcade and Timed modes of play.
- (Incomplete) Keyboard controlled menus, including a pause menu.
- (Unimplemented) Options menu that allows changing of gameplay, aesthetic, and sound volume.
- (Incomplete) Sound effects and background music.
- (Incomplete) Art for all game textures, menus, and the logo.
- Arcade Mode has not been sufficiently tested.
Let me know if there are any other problems!