diff options
| author | bculkin2442 <bjculkin@mix.wvu.edu> | 2016-01-26 11:31:45 -0500 |
|---|---|---|
| committer | bculkin2442 <bjculkin@mix.wvu.edu> | 2016-01-26 11:31:45 -0500 |
| commit | 438a23c696283dc17a0d5fd1a3e12513deac9030 (patch) | |
| tree | 361e8a7b660fea82a150685f830be7187f305a44 /BJC-Utils2/src/main/java/bjc/utils/dice/CompoundDiceExpression.java | |
| parent | 5508eecfa7a7821cbaf650ae1f9a97633e1644b6 (diff) | |
Added dice roller
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/dice/CompoundDiceExpression.java')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/dice/CompoundDiceExpression.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/dice/CompoundDiceExpression.java b/BJC-Utils2/src/main/java/bjc/utils/dice/CompoundDiceExpression.java new file mode 100644 index 0000000..c4ebbe5 --- /dev/null +++ b/BJC-Utils2/src/main/java/bjc/utils/dice/CompoundDiceExpression.java @@ -0,0 +1,34 @@ +package bjc.utils.dice; + +public class CompoundDiceExpression implements DiceExpression { + private DiceExpressionType det; + private DiceExpression left; + + private DiceExpression right; + + public CompoundDiceExpression(DiceExpression right, + DiceExpression left, DiceExpressionType det) { + this.right = right; + this.left = left; + this.det = det; + } + + @Override + public int roll() { + switch (det) { + case ADD: + return right.roll() + left.roll(); + case SUBTRACT: + return right.roll() - left.roll(); + case MULTIPLY: + return right.roll() * left.roll(); + case DIVIDE: + return Math.round(right.roll() / left.roll()); + default: + throw new IllegalStateException( + "Got passed a invalid ScalarExpressionType " + + det); + + } + } +} |
