The web page shall contain a table with multiple cells nicely positioned on the page. For example, 100 cells,
5x20 or 4x25. Choose 20 phrases, such as your favorite proverbs or in any category, each as a string literal prestored
in a JavaScript array. Randomly choose one from the 20 phrases and have the content filled characterby-
character in the cells of the table (one character per cell). Set the initial visibility of the characters as hidden
(Hint: you may define each cell as a button or as a span element to make it responsible to the onclick event).
Unoccupied cells must be displayed in different color/background to look different from occupied cells.
2. Allow a player to reveal letters in the phrase. Player can reveal (flip) one letter by clicking an unrevealed
occupied cell. Alternative, player can input a letter in a text field and reveal all the same letter in the phrase.
For example, the player inputs letter “e”, all es in the phrases are revealed. Make no change if no such a letter
in the phrase. Different ways to reveal letter corresponds different game play. You can choose one or
implement both.
3. Limit the number of revealed cells, or the percentage of revealed cells to the total number of occupied cells. If
the difficulty level is considered, the number or the percentage can be adjusted based on the difficulty. The
difficulty level is optional. You can implement just one level or multiple levels.
4. When the number of revealed occupied cells reaches the limits, a message shall immediately be prompted,
saying something like "You have no more letters to flip, please make your guess NOW!” (After the player
confirms OK, a textarea is immediately showed up for input).
5. Allow a smart player to guess before flipping the limited number of cells, e.g., always providing the "Make
your guess NOW” button to allow early guess. Once the player clicks the button, a textarea is showed up for
input
6. In either case (4 or 5), a textarea is showed up for the player to type in his/her guess of the phrase
(this textarea widget should NOT be prematurely displayed on the page).
7. Then, the web page checks and confirms whether the guess is correct or not. If the guess is incorrect, let the
player choose to either continue (can try at most two more times) or give up, then reveals the puzzle (by
flipping the remaining letters of the partially revealed phrase). If the guess is correct, then grades the player
based on the number of unrevealed characters. For example, if a player has 5 characters left un-flipped and
provided a correct guess, the player receives 5 points. The web page should display the progress and score for
the player.
8. The player can choose to continue with the next phrase after putting a correct guess or giving up a difficult
one. The next phrase will again be randomly chosen from the 20 phrases.
9. Finally, you need to put a title for your game page, like "Someone’s Puzzle Page"(put your own name there).
Also, provide a short description of the rules for playing this game, e.g., "To play this game, you can reveal a
certain number of the characters of each phrase before make a guess. The more characters you left
unrevealed before you make a correct guess, the more scores you will be awarded."