- Aysia Brown
- Tina Myers
- Dina Ayoub
- Matt Ravenmoore
- REST API
- PORT
- MONGODB_URI
- BOT_TOKEN
- take Heroku deployment link 'https://latte-blackjack.herokuapp.com' and add the following:
- "/game" to start the game. Take the dealer ID provided, and use in the following commands
- add a player (or multiple players if preferred): 'https://latte-blackjack.herokuapp.com/join/{dealerid}/{userid}'
- begin the actual game 'https://latte-blackjack.herokuapp.com/next/{dealerid}'
- each player sets a bet in a query string (repeat for all players): 'https://latte-blackjack.herokuapp.com/next/{dealerid}/bets?amount={amount-between-5-and-50}'
- deal the cards: 'https://latte-blackjack.herokuapp.com/next/{dealerid}'
- allow the player to hit or stand (until the player chooses stand or the player busts/gets 21): 'https://latte-blackjack.herokuapp.com/next/{dealerid}/{hit-or-stand}'
- when all players have reached stand/bust/blackjack, move to dealer turn: 'https://latte-blackjack.herokuapp.com/next/{dealerid}'
- dealer turn will automatically hit if total is under 17, or stand if 17 or over. Dealer could also bust. 'https://latte-blackjack.herokuapp.com/next/{dealerid}'
- players will get paid out for their winnings (if the player won or pushed). Banks will be updated, win/loss/push totals will be updated: 'https://latte-blackjack.herokuapp.com/next/{dealerid}'
- if a player wishes to leave the game, they must type this before the next round begins: 'https://latte-blackjack.herokuapp.com/leave/{dealerid}/{playerid}'
- next round will start with: 'https://latte-blackjack.herokuapp.com/next/{dealerid}'
- to run tests, use the command 'npm test'
- Can create a new dealer object
- Can correctly throw an error if we try to start a game without any players
- Can ask low bank players to buyin before start of hand
- Can add a player to the game for next round
- Can start a game using the start function
- Can place bets for all non-dealers players
- Can remove a player from the game for next round
- Can deal a hand to each player
- Can playerturn hit - add a card to the current Player's hand
- Can playerturn stand - stop adding cards to the player's hand on stand
- Can have dealer hit when their hand total is < 17
- Can have dealer bust when their hand total > 21
- Can have dealer stand when their hand total is >= 17 & <21
- Can payout players correctly when dealer stands >=17 & <21
- Can start a game using the next function
- Can place bets for all non-dealers players
- Can deal a hand to each player
- Can playerturn hit - add a card to the current Player's hand
- Can playerturn stand after each player's turn - stop adding cards to the player's hand on stand
- Can have dealer hit when their hand total is < 17
- Can have dealer stand when their hand total is >= 17 & <21
- Can payout players correctly when dealer stands >=17 & <21
- Can create a new card object
- Can instantiate a new deck of cards
- Can create a new hand object
- Can add a card to a hand
- Can add multiple cards to a hand
- Can get the count of a hand with a face (K/Q/J)
- Can get the count of a blackjack hand with a face (K/Q/J) and an ace
- Can get the count of a hand with a face (K/Q/J) and ace and number
- Can get the count of a hand with two aces
- Can get the count of a hand with two aces and a card
- Can create a new player object
- Can create a new shoe object
- Can fill the shoe with cards
- Can get one card from the shoe
- Can refill the shoe when shuffled
- Can re-shuffle when <20% of the deck remains
- Can create & save a new user
- Can retrieve an existing user
- Can update a player