In this week's assignment, you will create a hangman command-line game using constructor functions.
The completed game should meet the following criteria:
-
The completed game should be able to receive user input using the
inquirer
orprompt
npm packages. -
Feel free to use as many different types of constructor functions as you are able to, but at a minimum, you must create the following constructor functions:
-
Word: Used to create an object representing the current word the user is attempting to guess. This should contain word specific logic and data.
-
Letter: Used for each letter in the current word. Each letter object should either display an underlying character, or a blank placeholder (such as an underscore), depending on whether or not the user has guessed the letter. This should contain letter specific logic and data.
-
You must keep track of the user's remaining guesses and prompt the user if they would like to end the game if none remain.
-
Each constructor function should be in it's own file and be exported and required wherever needed.
-
Look into function prototypes and use them for a few of your constructor's methods.
-
Since this assignment is a command-line application, you don't need to deploy it anywhere. You will, however, be required to upload it to Github.
-
Remember to include a
package.json
file containing your project dependencies in your Github repo!
Attempt to complete homework assignment as described in instructions. If unable to complete certain portions, please pseudocode these portions to describe what remains to be completed.
Add a README.md
to your repository describing the project. Here are some resources for creating your README.md
. Here are some resources to help you along the way:
After completing the homework please add the piece to your portfolio. Make sure to add a link to your updated portfolio in the comments section of your homework so the TAs can easily ensure you completed this step when they are grading the assignment. To receive an 'A' on any assignment, you must link to it from your portfolio.
If you have any questions about this project or the material we have covered, please post them in the community channels in slack so that your fellow developers can help you! If you're still having trouble, you can come to office hours for assistance from your instructor and TAs.
Good Luck!