Done with DiceCup
This commit is contained in:
parent
da0e438ad7
commit
f38c25748b
98
Project/DiceCup.java
Normal file
98
Project/DiceCup.java
Normal file
@ -0,0 +1,98 @@
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class DiceCup{
|
||||
private ArrayList<MyDie> dice;
|
||||
private int creditBalance;
|
||||
|
||||
|
||||
public DiceCup(int Dx) {
|
||||
dice = new ArrayList<MyDie>();
|
||||
creditBalance = 10;
|
||||
|
||||
MyDie die;
|
||||
|
||||
if (Dx == 8){
|
||||
die = new EightDie();
|
||||
}
|
||||
else{
|
||||
die = new SixDie();
|
||||
}
|
||||
|
||||
for (int i = 0; i <3; i++){
|
||||
dice.add(die);
|
||||
}
|
||||
}
|
||||
|
||||
/* Accessors */
|
||||
|
||||
public int getCredits(){
|
||||
return creditBalance;
|
||||
}
|
||||
|
||||
public ArrayList<MyDie> getDice(){
|
||||
return dice;
|
||||
}
|
||||
public int getTotal(){
|
||||
int total = 0;
|
||||
for (MyDie die:dice){
|
||||
total += die.getValue();
|
||||
}
|
||||
return total;
|
||||
}
|
||||
|
||||
/* Actions */
|
||||
|
||||
public void roll(){
|
||||
for (MyDie die:dice){
|
||||
die.roll();
|
||||
}
|
||||
|
||||
}
|
||||
public void updateCredits(){
|
||||
if (enoughCredits()){
|
||||
creditBalance -=1;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean enoughCredits(){
|
||||
if (creditBalance > 0){
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public void testRoll(int [] values){
|
||||
//roll dice until desired 3 int array happens
|
||||
if (enoughCredits()){
|
||||
for (int i =0; i<dice.size(); i++){
|
||||
while (dice.get(i).getValue() != values[i]){
|
||||
dice.get(i).roll();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Win conditions */
|
||||
|
||||
public void checkTriplets(){
|
||||
if ( dice.get(0).compareTo(dice.get(1)) == 0 &&
|
||||
dice.get(0).compareTo(dice.get(2)) == 0){
|
||||
creditBalance +=1;
|
||||
}
|
||||
}
|
||||
|
||||
public void checkDouble(){
|
||||
if ( dice.get(0).compareTo(dice.get(1)) == 0 ||
|
||||
dice.get(0).compareTo(dice.get(2)) == 0 ||
|
||||
dice.get(1).compareTo(dice.get(2)) == 0){
|
||||
creditBalance +=1;
|
||||
}
|
||||
}
|
||||
public void checkLarge(){
|
||||
if (getTotal() >= 10){
|
||||
creditBalance +=1;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user