Met behulp van een aantal jest-testen ga je een interactief spelletje maken: galgje! De gebruiker kan letters raden en die via de terminal invoeren. Maar let op! Bij zeven foute letters is het game over!
| / |
|/ _o_
| O
| / \
|
===========
Je vind in deze repo drie belangrijke bestanden:
index.jswaarin je de starterskit vindt om galgje te maken- Testen die je gaan helpen om de rest van de logica te schrijven in
gamelogic.test.js - Het JavaScript bestand waar jij jouw game-logica gaat schrijven
gamelogic.js
Als je het project gecloned hebt naar jouw locale machine, installeer je eerst de node_modules door het volgende commando in de terminal te runnen:
npm install
Het aanmaken van een package.json en het installeren van Jest is al geregeld. Wanneer dit klaar is, kun je de de volgende commando's gebruiken:
npm run test // run jest once
npm run test:watch // run jest in watch mdoe
npm run start // start the gameWanneer je npm run start of de jest --watch mode hebt aangezet, zal deze blijven draaien tot je het proces uitdrukkelijk stopt. Je kunt het beindigen door:
- In de terminal te klikken
CTRL + C(voor zowel Windows als Mac gebruikers) in te voeren
- Installeer de repo en probeer de scripts uit
- Probeer het programma uit! Werkt het al?
- Lees de code goed door. Zet ter verduidelijking commentaar bij de al aanwezige uitdrukkingen of codegebruik (wat doen deze stukjes code?)
- Implementeer de game-logica stap voor stap door je te laten helpen door de tests! Dit doe je door het test-commando
npm run test:watchte gebruiken en te kijken hoe je de tests kunt laten slagen. - Het werkt het beste om te werken met een stappenplan. Je mag hiervoor het stappenplan op de branch
stappenplan(ingamelogic.js) gebruiken, maar het is uitdagender om je eigen stappenplan te schrijven! - Is dit helemaal gelukt? Ga dan verder met de functies in
index.jsen voeg de volgende functionaliteit toe:
- Zorg dat de gebruiker letters kan raden
- Houdt in de
guesses-array bij welke letters de gebruiker geraden heeft - Laat zien welke letters al geraden zijn (met
displayWordSoFar) - Heeft iemand alle letters geraden? Wuhuuu! Log dan dat ze gewonnen hebben
- Heeft iemand 7 letters fout geraden? Jammer! Log dan dat ze verloren hebben
- Stop het programma met
returnwanneer iemand gewonnen of verloren heeft - Heeft iemand nog niet gewonnen of verloren? Dan gaat het spel gewoon verder
Je mag zelf uit onderstaande doelen kiezen welke je het leukst vind, want waarschijnlijk is er niet genoeg tijd om ze allemaal te doen.
- Check of de gebruiker meer dan één letter tegelijk kiest (
amag wel,aemag niet!) - Geef een foutmelding wanneer iemand meer dan één letter kiest OF maak het onmogelijk om meer dan één letter tegelijk in te voeren
- Zorg ervoor dat gekke gebruikers het spel niet verliezen door hoofdletters te gebruiken (Een invoer van
Awordtaen het woordJavaScriptwordtjavascript) - Houd bij hoeveel foute letters iemand al heeft geraden
- Teken voor iedere fout een extra stukje galg:
1 fout
|
|
|
|
|
===========
7 fouten
__________
| / |
|/ _o_
| O
| / \
|
===========