Please place a * in each box at the start of each line to indicate if you completed this task. You must not make any other changes [*] Does it compile with mvn compile? [*] Does it run with mvn javafx:run? [*] Play a piece in a valid location [*] Reject a piece in an invalid location [*] A new random piece each time [*] Lines are cleared [*] Score, Level, Lives shown in the UI [*] Scoring works [*] Multiplier works [*] Level works [*] Background music [*] Menu screen present and functioning [*] Menu screen uses animations and visual effects [*] Menu screen works [*] Instructions screen [*] Instructions screen shows blocks [*] Challenge screen shows current piece [*] Current piece updates on play [*] Escape navigates back [*] Challenge screen shows next piece [*] Piece can be rotated [*] Piece can be swapped [*] Sound effects added [*] Keyboard support for move and drop [*] Blocks are not just coloured squares [*] Placement circle shown on current piece [*] Blocks are placed on their centre [*] Hover effect on blocks [*] Fade out effect when blocks cleared [*] Countdown shown in UI [*] Countdown animates [*] Countdown changes when time nearly out [*] Life lost and new piece when timer expires [*] Game over when no more lives left [*] Game goes to Scores screen on Game Over [*] Scores read from file [*] Scores saved to file [*] New score prompts for name [*] New score inserted into score list [*] High Score to beat shown in Challenge screen [*] Online scores shown in Score screen [*] Lobby updates games as new ones created [*] Can create a game [*] Can join a game [*] Can send a chat message [*] Can receive a chat message [*] Can start a game (if host) [*] Game starts when not host [*] Error states handled [*] Can play a multiplayer game with a friend/second client [*] Scores update during multiplayer game [*] Eliminated players shown during multiplayer game [*] Scores shows multiplayer game scores [*] Good level of challenge, number of extensions, technical achievement [*] Code is commented with javadoc and line comments and of good quality and structure [*] Clear understanding of code and application demonstrated in video