Roller.java
package chanceapps;

import chance.Die;
//program to make use of the  die class
public class Roller {

    public static void main(String[] args) {
       //create a standard die and roll it 5 times
       createAndRollStandardDieFiveTimes();
       //twenty sided die 5 times
       createAndRollTwentySidedDieFiveTimes();
       //standard roll 20 times
       createAndRollStandardDie(20);
       //roll it 30
       createAndRollStandardDie(30);
       //create and roll ten sided die 20 times
       createAndRollTenSidedDie(20);

       //create and nine sides die and rolll it 30
       createAndRollNineSidedDie(30);
       //ten times, create a standard die and roll until you get a 1
       System.out.println("Ten times, roll a standard die for a 1.");
       for (int i = 1;i <= 10; i++) {
          createAndRollStandardDieFor1();
       }

       //ten times create a twelve sided die and roll it until you get a 1
       System.out.println("Ten times, roll a twelve sided die for a 1 .");
       for (int i = 1; i <= 10; i++){
         createAndRollTwelveSidedDieFor1();
       }
    }

    private static void createAndRollTwelveSidedDieFor1() {
        Die die = new Die(12);
        die.roll();

        System.out.print(die.top() + " ");
        while (die.top() != 1) {
            die.roll();
            System.out.print(die.top() + " ");
        }

        System.out.println();
    }

    private static void createAndRollStandardDieFor1() {
        Die die = new Die();
        die.roll();

        System.out.print(die.top() + " ");
        while (die.top() != 1) {
            die.roll();
            System.out.print(die.top() + " ");
        }

        System.out.println();
    }

    private static void createAndRollNineSidedDie(int nrOfTimes) {
        System.out.println("Roll a nine sided die " + nrOfTimes + " times: ");
        Die lucky = new Die(9);

        int i = 1;
        while (i <= nrOfTimes) {
            lucky.roll();
            System.out.print(lucky.top() + " ");
            i +=1;
        }
        System.out.println();


    }

    private static void createAndRollTenSidedDie(int nrOfTimes) {
        System.out.println("Roll a ten sided die " + nrOfTimes + " times: ");
        Die lucky = new Die(10);

        int i = 1;
        while (i <= nrOfTimes) {
            lucky.roll();
            System.out.print(lucky.top() + " ");
            i +=1;
        }
        System.out.println();


    }

    private static void createAndRollStandardDie(int nrOfTimes) {
        System.out.println("Roll a standard die " + nrOfTimes + " times: ");
        Die lucky = new Die();

        int i = 1;
        while (i <= nrOfTimes) {
            lucky.roll();
            System.out.print(lucky.top() + " ");
            i +=1;
        }
        System.out.println();


    }


    private static void createAndRollTwentySidedDieFiveTimes() {
       System.out.println("Roll a twenty sided die five times: ");
       Die die = new Die(20);
       die.roll();System.out.print(die.top() + " ");
       die.roll();System.out.print(die.top() + " ");
       die.roll();System.out.print(die.top() + " ");
       die.roll();System.out.print(die.top() + " ");
       die.roll();System.out.print(die.top() + " ");
       System.out.println();


    }

    private static void createAndRollStandardDieFiveTimes() {
        System.out.println("Roll a standard die 5 times ...");
        Die die = new Die();
        die.roll();System.out.print(die.top() + " ");
        die.roll();System.out.print(die.top() + " ");
        die.roll();System.out.print(die.top() + " ");
        die.roll();System.out.print(die.top() + " ");
        die.roll();System.out.print(die.top() + " ");
        System.out.println();

    }
}