As homework, you are going to re-create the game Text Twist. The original (http://zone.msn.com/en/texttwist/, or gameplay video) is an old-school Flash app... we want to bring it into this decade and port to JavaScript. Spend a bit of time playing it to get the feel (warning: addictive). The requirements:
- two sets of letters
- get a single set working first
- the dictionaries can be small - just enough to show that the game works
- should be trivial to add additional sets
- which set is used for each game (random vs. strict ordering): coder’s choice
- letters from set displayed in random order at the start of each game
- game should be playable with keyboard only (you might use jQuery keypress/keydown)
- display a player’s progress within a game, either similar to the Yahoo implementation (empty boxes on the left), or in a different creative way
- a countdown showing the time remaining (time limit up to you)
- a way to reset the game when it ends
- use at least one of the Contructor, Factory or Module patterns
- commented, well-structured code
Bonus points:
- additional sets of letters
- automated tests
- "twist" functionality (reshuffling the letters mid-game)
- animations (using JavaScript or CSS3)
- variations or enhancements to the gameplay (please provide a written explanation of the expected behavior)
You are welcome to publish on the web (think of your own name), but please email files/folder/.zip of all necessary files to instructor (alf9 [at] nyu [dot] edu) by the start of the final session. You will also have the option to demo your game to the class.