A clone of the classic game Tetris.
To play, compile Tetris.java and run.
Controls:
left/right arrow - move piece left and right
down arrow - soft drop
up arrow/x - rotate clockwise
z - rotate counterclockwise
space - hard drop
p - pause
What I Learned:
Using SwingWorker as a way to balance both game-loop changes and user input.
Using JPanel as a way to easily create resizeable grid GUIs.
The mechanics behind Tetris, including pivot points, spinning, and leveling mechanics.