Jeopardy
Jeopardy! The great American quiz show has been a staple of network television since the 60s. In this project we will be creating our own Jeopardy games that will run in the browser using the awesome powers of HTML, and JavaScript!
The game of Jeopardy consists of several teams that copmete to earn points by selecting questions of varying points values from a board. The board is a 6 X 6 square with each column representing a category, and the first row containing the titles of each category, and every row after being incresingly difficult questions (with correspondingly higher point values) for their categories
We are going to make a slightly smaller version of Jeopardy with only four categories, but still five levels of questions. You may create a game with the full six categories if you want, but we recommend you do that after you've succesfully completed all the stories for the four category game. (We want you to be focused on writing code, not questions.)
We also recommend you start with it being a two player game until you reach the story to add multiple teams. It will help you focus more on creating a solid set of game rules before extending them to cover more teams.
Stories
Start Game
Given the game has not been started
When the user clicks 'Start Game'
Then the 'Start Game' button is disabled ("grayed out")
And the status area contains "Team One's turn"
Select a Question
Given an empty board, and team one is currently up
When the user selects a card
Then the score on the card is replaced by a question
And The "Submit Answer" button is enabled
And the "Pass Question" button is enabled
Pass a Question
Given a question has been chosen
When the user clicks on the "Pass Question" button
Then the next team gets an opportunity to answer the question
Answer a Question Correctly
Given a question has been chosen
When the user submits an answer
And the answer is correct
Then the game awards the player's team 100 points
And the card is removed from the board
And the current team does not change
Respect the Row
When the user submits an answer
And the answer is correct
Then the game awards the amount of points appropriate for the card's row to the guesser's team
Answer a Question Incorrectly
Given a question has been answered
And the answer is incorrect
When the user submits the answer
Then the game subtracts the points value of the card from the player's score
And the next team gets an opportunity to answer the question
Only Allow One Question
Given a card has been selected
When the user tries to pick a new card
Then the question does not change
And the game alerts the player that they must answer, or pass the question
Score Board
Given the game has been started
Then the game should display each team's current score on the page
Winner
Given the final question is selected
When the question is answered
Then the game declares the team with the highest score the winner
And the game prompts the user to reset the board
Multiple Teams
Given the game has not been started
When the user clicks "Start Game"
Then the game should ask how many teams are playing
And create that number of teams for score tracking
Say my Name!
Given the game has been started
When the user enters the number of teams that are playing
Then the game should allow the user(s) to set their team names
Icebox
Jeopardy formatted answers
Given a question has been selected
When the user submits an answer
Then the game should check if the answer is formatted like a question
And if it's not prompt the user to answer with a question
And allow the user to try again
Double Jeopardy
Given the game has been started
One question should be set as the "Double Jeopardy" question
When the Double Jeopardy question is chosen
Then the game prompts the player to enter a wager
And awards or subtracts points based on the wager when the question is answered
And the turn does not pass regardless of if the answer was correct, or incorrect
Time Out!
Given a game has been started
When the user selects a question
Then a clock should be displayed, counting down from two minutes
And when the time runs out
Then the turn passes to the next team
And the score remains the same
And the clock resets
Random Questions
Given a game has been completed
When the user resets the board
Then generate a new set of questions, and/or categories to be used for the next game