Roller.java
/* Program to make use of the die class 
 
 */

package chanceapps;

import Chance.Die;
public class Roller {
    public static void main(String[] args) {
        //Create a standard die and roll it 5 times
        createAndRollStandardDieFiveTimes();
        //Create a twenty sided die and roll it 5 times
        createAndRollTwentySidedDieFiveTimes();
        //Create a standard die and roll it 20 times
        createAndRollStandardDie(20);
        //Create a standard die and roll it 30 times
        createAndRollStandardDie(30);
        //Create a nine sided die and roll it 20 times
        createAndRollNineSidedDie(20);
        //Create a nine sided die and roll it 30 times
        createAndRollNineSidedDie(30);
        System.out.println("\nTen Times, roll a standard die for a 1.");
        for (int i = 1; i<= 10; i++) {
            createAndRollStandardDieFor1();
        }
        System.out.println("\nTen Times, roll a twelve sided die for a 1.");
        for (int i = 1; i<= 10; i++) {
            createAndRollTwelveSidedDieFor1();
        }
    }

    private static void createAndRollStandardDieFiveTimes() {
        System.out.println("\nRoll 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() + " ");

    }

    private static void createAndRollTwentySidedDieFiveTimes() {
        System.out.println("\nRoll a Twenty-Sided die 5 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() + " ");
    }


    private static void createAndRollStandardDie(int nrOfTimes) {
        System.out.println("Roll a standard die " + nrOfTimes + " times ...");
        Die lucky = new Die();
        /*for (int i = 1; i <= nrOfTimes; i = i + 1) { 
            lucky.roll(); 
            System.out.print(lucky.top() + " "); 
        } 
        System.out.println();*/
        int i = 1;
        while (i <= nrOfTimes) {
            lucky.roll();
            System.out.print(lucky.top() + " ");
            i = i + 1;
        }
        System.out.println();
    }

    private static void createAndRollNineSidedDie(int nrOfTimes) {
        System.out.println("Roll a nine sided die " + nrOfTimes + " times ...");
        Die dieNine = new Die(9);
        /*for (int i = 1; i <= nrOfTimes; i = i + 1) { 
            dieNine.roll(); 
            System.out.print(dieNine.top() + " "); 
        } 
        System.out.println();*/
        int i = 1;
        while (i <= nrOfTimes) {
            dieNine.roll();
            System.out.print(dieNine.top() + " ");
            i = i + 1;
        }
        System.out.println();
    }

    private static void createAndRollStandardDieFor1() {
        Die dieForOne = new Die();
        dieForOne.roll();
        System.out.print(dieForOne.top() + " ");
        int i = 1;
        while (dieForOne.top() != 1) {
            dieForOne.roll();
            System.out.print(dieForOne.top() + " ");
            i = i + 1;
        }
        System.out.println();
    }

    private static void createAndRollTwelveSidedDieFor1() {
        Die dieTwelveForOne = new Die(12);
        dieTwelveForOne.roll();
        System.out.print(dieTwelveForOne.top() + " ");
        int i = 1;
        while (dieTwelveForOne.top() != 1) {
            dieTwelveForOne.roll();
            System.out.print(dieTwelveForOne.top() + " ");
            i = i + 1;
        }
        System.out.println();
    }
}