summaryrefslogtreecommitdiff
path: root/dice-lang/src/main/java/bjc/dicelang/ComplexDice.java
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2016-04-04 10:08:00 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2016-04-04 10:08:00 -0400
commit66b3ea905d077577a32ed82983b0cd9e8ee10bea (patch)
treee1038a380c0714d4dda986514b365b9e474d3c15 /dice-lang/src/main/java/bjc/dicelang/ComplexDice.java
parentb296ecf265120a0cac9cc5c558bdc60c6a27fff2 (diff)
Work on optimizations
Diffstat (limited to 'dice-lang/src/main/java/bjc/dicelang/ComplexDice.java')
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/ComplexDice.java16
1 files changed, 15 insertions, 1 deletions
diff --git a/dice-lang/src/main/java/bjc/dicelang/ComplexDice.java b/dice-lang/src/main/java/bjc/dicelang/ComplexDice.java
index 054c73b..9fa324b 100644
--- a/dice-lang/src/main/java/bjc/dicelang/ComplexDice.java
+++ b/dice-lang/src/main/java/bjc/dicelang/ComplexDice.java
@@ -15,7 +15,7 @@ public class ComplexDice implements IDiceExpression {
* The string to parse the dice from
* @return A dice group parsed from the string
*/
- public static ComplexDice fromString(String dice) {
+ public static IDiceExpression fromString(String dice) {
/*
* Split it on the dice type marker
*/
@@ -116,4 +116,18 @@ public class ComplexDice implements IDiceExpression {
+ die.toString() + "]";
}
}
+
+ @Override
+ public boolean canOptimize() {
+ if (nDice.canOptimize() && die.canOptimize()) {
+ return die.optimize() == 1;
+ }
+
+ return false;
+ }
+
+ @Override
+ public int optimize() {
+ return nDice.optimize();
+ }
} \ No newline at end of file