Advertisement
wuvic21

Untitled

Dec 5th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.07 KB | None | 0 0
  1. /*
  2. Victor Wu
  3. Period 1
  4. 11/26/19
  5. Project Blackjack
  6. */
  7. package blackjack;
  8.  
  9. import java.util.*;
  10.  
  11. public class Blackjack {
  12. public static void main(String[] args) {
  13. String[] rank = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
  14. String[] suit = {"Spade ", "Diamond ", "Heart ", "Club "};
  15. Scanner console = new Scanner(System.in);
  16. List<String> newDeck = new ArrayList<String>();
  17. newDeck = buildDeck(suit, rank);
  18. int playerTotal = 0;
  19. int dealerTotal = 0;
  20. List<String> playersCards = new ArrayList<String>();
  21. List<String> dealersCards = new ArrayList<String>();
  22. newDeck = shuffleDeck(newDeck);
  23. System.out.print("First card: ");
  24. playerTotal += draw(newDeck, playerTotal, playersCards);
  25.  
  26. System.out.print("Second card: ");
  27. playerTotal += draw(newDeck, playerTotal, playersCards);
  28. System.out.println();
  29.  
  30. System.out.println("Dealer showing: ");
  31. dealerTotal += draw(newDeck, dealerTotal, dealersCards);
  32. System.out.println("Dealer has: " + dealerTotal);
  33. boolean another_card = true;
  34. while (playerTotal < 21 && another_card){
  35. another_card = Hit(playerTotal, console);
  36. if (playerTotal > 21 || playerTotal == 21 || !another_card) {
  37. break;
  38. } else {
  39. playerTotal += drawCard(newDeck, dealerTotal, dealersCards);
  40. }
  41.  
  42. for(int i = 0; i < playersCards.size(); i++){
  43. if (playersCards.get(i).isAce() && playerTotal > 21) {
  44. playerTotal -= 10;
  45. }
  46. }
  47. }
  48. while (dealerTotal < 17 && playerTotal < 21) {
  49. System.out.println("Dealer showing: " + dealerTotal);
  50. Card dealerCard = newDeck.remove(0);
  51.  
  52. System.out.println("Dealer gets: ");
  53. dealerCard.printCard();
  54. dealerTotal += dealerCard.giveValue(dealerTotal);
  55. dealersCards.add(dealerCard);
  56.  
  57. //doesn't work
  58. for(int i = 0; i < dealersCards.size(); i++){
  59. if (dealersCards.get(i).isAce() && dealerTotal > 21) {
  60. playerTotal -= 10;
  61. }
  62. }
  63. }
  64. System.out.println();
  65. money += winCheck(playerTotal, dealerTotal, roundBet);
  66.  
  67.  
  68. }
  69.  
  70. public static int draw(List<String> newDeck, int playerTotal, List<String> playersCards){
  71. int total = 0;
  72. String player1 = newDeck.remove(0);
  73. player1.printCard();
  74. total += player1.giveValue(playerTotal);
  75. playersCards.add(player1);
  76. return total;
  77. }
  78. public static List<String> buildDeck(String[] suites, String[] name){
  79. List<String> deck = new ArrayList<String>();
  80. for (int i = 0; i < suites.length; i++){
  81. for (int j = 0; j < name.length; j++){
  82. String k = new (name[j], suites[i]);
  83. deck.add(k);
  84. }
  85. }
  86. return deck;
  87. }
  88. public static List<Card> shuffleDeck(List<Card> deck){
  89. List<Card> shuffledDeck = new ArrayList<Card>();
  90. int r = 0;
  91. while (deck.size() > 0){
  92. Random card = new Random();
  93. r = card.nextInt(deck.size());
  94. Card temp = deck.remove(r);
  95. shuffledDeck.add(temp);
  96. }
  97. return shuffledDeck;
  98. }
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement