Yes, I really prefer mine better to be honest. Anyhow, that wasted a lot of time, I threw in the code to check for the game over condition (if the next piece already collides with something on the grid when it is first brought into play), and the gameState now has three options: 0 for no game started yet, 1 for game in progress, and 2 for game over. This should probably be re-written as an enum.