Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package dicegames;
- import java.util.Scanner;
- public class CrapsPlay {
- private Die die1, die2;
- private Scanner scan;
- private boolean won;
- private boolean finished = false;
- private int rolls;
- private int firstRoll;
- private int sumOfRoll;
- private int wonGames;
- private int gamesPlayed;
- public CrapsPlay() {
- die1 = new Die();
- die2 = new Die();
- scan = new Scanner(System.in);
- }
- /**
- * Print out a neat welcome message to the player.
- */
- private void welcomeToGame() {
- System.out.println("Velkommen til spillet Craps.");
- System.out.println("Spillets gang");
- System.out.println("Spillet består af en række kast med to terninger. " + "Spilleren kaster to terninger. "
- + "Det første kast kaldes ‘come out roll’. "
- + "Spilleren vinder med det samme, hvis det første kast er 7 eller 11 og "
- + "taber med det samme, hvis han opnår 2, 3 eller 12. "
- + "Hvis spillerens første kast er 4, 5, 6, 8, 9 eller 10, " + "etableres dette tal som hans ‘point’. "
- + "Spilleren bliver derefter ved med at kaste, indtil han opnår sit ‘point’ igen. "
- + "Opnår han 7 før han opnår sit ‘point’, har han tabt.");
- }
- public void gameOver() {
- if (won) {
- System.out.println("Tillykke du har vundet.");
- wonGames++;
- }
- else
- System.out.println("Du har tabt.");
- gamesPlayed++;
- // scan.close();
- }
- public void endGame() {
- System.out.println("Tak for denne gang.");
- System.out.println("Du vandt " + wonGames + " spil.");
- System.out.println("Du tabte " + (gamesPlayed-wonGames) + " spil.");
- scan.close();
- }
- public void takeTurn() {
- die1.roll();
- die2.roll();
- sumOfRoll = die1.getFaceValue() + die2.getFaceValue();
- checkWin();
- checkLoss();
- if (rolls == 0)
- firstRoll = sumOfRoll;
- rolls++;
- System.out.println("Du har kastet: " + sumOfRoll);
- }
- public void checkWin() {
- if (rolls == 0 && sumOfRoll == 7 || rolls == 0 && sumOfRoll == 11) {
- won = true;
- finished = true;
- } else if (sumOfRoll == firstRoll) {
- won = true;
- finished = true;
- }
- }
- public void checkLoss() {
- if (rolls == 0 && sumOfRoll == 2 || rolls == 0 && sumOfRoll == 3 || rolls == 0 && sumOfRoll == 12) {
- won = false;
- finished = true;
- } else if (sumOfRoll == 7 && rolls > 0) {
- won = false;
- finished = true;
- }
- }
- public void startGame() {
- if (gamesPlayed == 0) {
- welcomeToGame();
- }
- finished = false;
- firstRoll = 0;
- rolls = 0;
- while (!finished) {
- System.out.println("Vil du kaste en terning? Angiv Ja eller Nej: ");
- String goOn = scan.nextLine();
- if (goOn.equalsIgnoreCase("Nej")) {
- finished = true;
- } else {
- takeTurn();
- }
- }
- gameOver();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement