Updated 'Die' class. #31

Merged
j23f0712 merged 4 commits from development into dev/test 2024-12-02 01:49:23 +01:00
Showing only changes of commit 0b45727bd7 - Show all commits

View File

@@ -43,11 +43,14 @@ public class Die {
*/ */
private int lastNumberOfDice; private int lastNumberOfDice;
private final boolean lock;
/** /**
* This constructor is used to create a new Die object with a random seed. * This constructor is used to create a new Die object with a random seed.
*/ */
public Die() { public Die() {
this.random = RandomGeneratorFactory.of("Random").create(); this.random = RandomGeneratorFactory.of("Random").create();
this.lock = false;
} }
/** /**
@@ -57,6 +60,18 @@ public Die() {
*/ */
public Die(long seed) { public Die(long seed) {
this.random = RandomGeneratorFactory.of("Random").create(seed); this.random = RandomGeneratorFactory.of("Random").create(seed);
this.lock = false;
}
/**
* Constructor.
*
* @param roll as the roll which should be returned everytime the shuffle method will be called as an Integer.
*/
public Die(int roll) {
this.random = RandomGeneratorFactory.of("Random").create();
this.lastNumberOfDice = roll;
this.lock = true;
} }
/** /**
@@ -65,6 +80,10 @@ public Die(long seed) {
* @return lastNumberOfDice as an Integer. * @return lastNumberOfDice as an Integer.
*/ */
public int shuffle() { public int shuffle() {
if (this.lock) {
return this.lastNumberOfDice;
}
this.lastNumberOfDice = this.random.nextInt(MAXIMUM_EYES) + 1; this.lastNumberOfDice = this.random.nextInt(MAXIMUM_EYES) + 1;
return this.lastNumberOfDice; return this.lastNumberOfDice;