summaryrefslogtreecommitdiff
path: root/dice-lang/src/bjc/dicelang/dice/CompoundDie.java
diff options
context:
space:
mode:
Diffstat (limited to 'dice-lang/src/bjc/dicelang/dice/CompoundDie.java')
-rw-r--r--dice-lang/src/bjc/dicelang/dice/CompoundDie.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/dice-lang/src/bjc/dicelang/dice/CompoundDie.java b/dice-lang/src/bjc/dicelang/dice/CompoundDie.java
new file mode 100644
index 0000000..16aec76
--- /dev/null
+++ b/dice-lang/src/bjc/dicelang/dice/CompoundDie.java
@@ -0,0 +1,31 @@
+package bjc.dicelang.dice;
+
+public class CompoundDie implements Die {
+ private Die left;
+ private Die right;
+
+ public CompoundDie(Die lft, Die rght) {
+ left = lft;
+ right = rght;
+ }
+
+ public boolean canOptimize() {
+ return left.canOptimize() && right.canOptimize();
+ }
+
+ public long optimize() {
+ return Long.parseLong(left.optimize() + "" + right.optimize());
+ }
+
+ public long roll() {
+ return Long.parseLong(left.roll() + "" + right.roll());
+ }
+
+ public long rollSingle() {
+ return roll();
+ }
+
+ public String toString() {
+ return left.toString() + "c" + right.toString();
+ }
+} \ No newline at end of file