Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package blackjack;
- import java.util.Scanner;
- import java.util.Random;
- /**
- * @date Jul 16, 2012
- * @author Family
- */
- public class BlackJack
- {
- private int card1 = 0, card2 = 0, card3 = 0, card4 = 0, card5 = 0, score = 0, dealer = 0, AceAmount = 0;
- private String AceCard;
- private boolean started;
- private Random rand = new Random();
- private Scanner in = new Scanner(System.in);
- public BlackJack()
- {
- started = false;
- System.out.println("Welcome to blackjack, coded by Jared! Type \"deal\" to start!");
- if (in.next().equalsIgnoreCase("deal"))
- {
- deal();
- }
- }
- public void deal()
- {
- if (started == true)
- {
- System.out.println("Sorry, you cannot deal again until you start another game!");
- }
- else
- {
- started = true;
- dealer();
- card1 = rand.nextInt(14);
- card2 = rand.nextInt(14);
- if (card1 == 14)
- {
- ++AceAmount;
- AceCard = "card1";
- card1 = 11;
- score += 11;
- }
- else if (card1 >= 10)
- {
- card1 = 10;
- score += 10;
- }
- else
- {
- score += card1;
- }
- if (card2 == 14)
- {
- ++AceAmount;
- AceCard = "card2";
- card2 = 11;
- score += 11;
- }
- else if (card2 >= 10)
- {
- card2 = 10;
- score += 10;
- }
- else
- {
- score += card2;
- }
- }
- System.out.println("Card 1: " + card1 + "\nCard 2: " + card2 + "\nScore: " + score);
- checkScore();
- }
- public void checkScore()
- {
- if (score > 21)
- {
- if (AceAmount == 0)
- {
- System.out.println("Sorry, you busted with a score of " + score);
- restart();
- }
- else
- {
- AceAmount--;
- score -= 10;
- if (AceCard.equals("card1"))
- {
- card1 = 1;
- }
- else if (AceCard.equals("card2"))
- {
- card2 = 1;
- }
- checkScore();
- }
- }
- else if (score == 21)
- {
- pass();
- }
- else
- {
- ask();
- }
- }
- public void ask()
- {
- System.out.println("Hit or Pass?");
- if (in.next().equalsIgnoreCase("Hit"))
- {
- hit();
- }
- if (in.next().equalsIgnoreCase("Pass"))
- {
- pass();
- }
- }
- public void hit()
- {
- if (card3 == 0)
- {
- card3();
- }
- else if (card4 == 0 && card3 != 0)
- {
- card4();
- }
- else if (card5 == 0 && card3 != 0 && card4 != 0)
- {
- card5();
- }
- }
- public void pass()
- {
- if (score > dealer)
- {
- System.out.println("Congrats you beat the dealer with a score of " + score + " to " + dealer + "!");
- restart();
- }
- else if (score == dealer)
- {
- System.out.println("You tied the dealer with a score of " + score + "!");
- restart();
- }
- else
- {
- System.out.println("Sorry, you lost to the dealer with a score of " + score + " to " + dealer + ".");
- restart();
- }
- }
- public void restart()
- {
- System.out.println("Type \"restart\" to play again!");
- if (in.next().equalsIgnoreCase("restart"))
- {
- new BlackJack();
- }
- }
- public void dealer()
- {
- if (dealer < 21)
- {
- int temp = rand.nextInt(14);
- if (dealer + temp < 21)
- {
- dealer += temp;
- dealer();
- }
- else if (dealer + temp == 21)
- {
- dealer += temp;
- }
- }
- }
- public void card3()
- {
- card3 = rand.nextInt(14);
- if (card3 == 14)
- {
- if (score + 11 > 21)
- {
- card3 = 1;
- score += 1;
- }
- else
- {
- card3 = 11;
- score += 11;
- }
- }
- else if (card3 >= 10)
- {
- card3 = 10;
- score += 10;
- }
- else
- {
- score += card3;
- }
- System.out.println("Card 1: " + card1 + "\nCard 2: " + card2 + "\nCard 3: " + card3 + "\nScore: " + score);
- checkScore();
- }
- public void card4()
- {
- card4 = rand.nextInt(14);
- if (card4 == 14)
- {
- if (score + 11 > 21)
- {
- card4 = 1;
- score += 1;
- }
- else
- {
- card4 = 11;
- score += 11;
- }
- }
- else if (card4 >= 10)
- {
- card4 = 10;
- score += 10;
- }
- else
- {
- score += card4;
- }
- System.out.println("Card 1: " + card1 + "\nCard 2: " + card2 + "\nCard 3: " + card3 + "\nCard 4: " + card4 + "\nScore: " + score);
- checkScore();
- }
- public void card5()
- {
- card5 = rand.nextInt(14);
- if (card5 == 14)
- {
- if (score + 11 > 21)
- {
- card5 = 1;
- score += 1;
- }
- else
- {
- card5 = 11;
- score += 11;
- }
- }
- else if (card5 >= 10)
- {
- card5 = 10;
- score += 10;
- }
- else
- {
- score += card5;
- }
- System.out.println("Card 1: " + card1 + "\nCard 2: " + card2 + "\nCard 3: " + card3 + "\nCard 4: " + card4 + "\nCard 5: " + card5 + "\nScore: " + score);
- checkScore();
- }
- public static void main(String[] args)
- {
- new BlackJack();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement