Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Victor Wu
- Period 1
- 11/26/19
- Project Blackjack
- */
- package blackjack;
- import java.util.*;
- public class Blackjack {
- public static void main(String[] args) {
- String[] rank = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
- String[] suit = {"Spade ", "Diamond ", "Heart ", "Club "};
- Scanner console = new Scanner(System.in);
- List<String> newDeck = new ArrayList<String>();
- newDeck = buildDeck(suit, rank);
- int playerTotal = 0;
- int dealerTotal = 0;
- List<String> playersCards = new ArrayList<String>();
- List<String> dealersCards = new ArrayList<String>();
- newDeck = shuffleDeck(newDeck);
- System.out.print("First card: ");
- playerTotal += draw(newDeck, playerTotal, playersCards);
- System.out.print("Second card: ");
- playerTotal += draw(newDeck, playerTotal, playersCards);
- System.out.println();
- System.out.println("Dealer showing: ");
- dealerTotal += draw(newDeck, dealerTotal, dealersCards);
- System.out.println("Dealer has: " + dealerTotal);
- boolean another_card = true;
- while (playerTotal < 21 && another_card){
- another_card = Hit(playerTotal, console);
- if (playerTotal > 21 || playerTotal == 21 || !another_card) {
- break;
- } else {
- playerTotal += drawCard(newDeck, dealerTotal, dealersCards);
- }
- for(int i = 0; i < playersCards.size(); i++){
- if (playersCards.get(i).isAce() && playerTotal > 21) {
- playerTotal -= 10;
- }
- }
- }
- while (dealerTotal < 17 && playerTotal < 21) {
- System.out.println("Dealer showing: " + dealerTotal);
- Card dealerCard = newDeck.remove(0);
- System.out.println("Dealer gets: ");
- dealerCard.printCard();
- dealerTotal += dealerCard.giveValue(dealerTotal);
- dealersCards.add(dealerCard);
- //doesn't work
- for(int i = 0; i < dealersCards.size(); i++){
- if (dealersCards.get(i).isAce() && dealerTotal > 21) {
- playerTotal -= 10;
- }
- }
- }
- System.out.println();
- money += winCheck(playerTotal, dealerTotal, roundBet);
- }
- public static int draw(List<String> newDeck, int playerTotal, List<String> playersCards){
- int total = 0;
- String player1 = newDeck.remove(0);
- player1.printCard();
- total += player1.giveValue(playerTotal);
- playersCards.add(player1);
- return total;
- }
- public static List<String> buildDeck(String[] suites, String[] name){
- List<String> deck = new ArrayList<String>();
- for (int i = 0; i < suites.length; i++){
- for (int j = 0; j < name.length; j++){
- String k = new (name[j], suites[i]);
- deck.add(k);
- }
- }
- return deck;
- }
- public static List<Card> shuffleDeck(List<Card> deck){
- List<Card> shuffledDeck = new ArrayList<Card>();
- int r = 0;
- while (deck.size() > 0){
- Random card = new Random();
- r = card.nextInt(deck.size());
- Card temp = deck.remove(r);
- shuffledDeck.add(temp);
- }
- return shuffledDeck;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement