diff options
| author | Ben Culkin <scorpress@gmail.com> | 2020-04-13 18:32:11 -0400 |
|---|---|---|
| committer | Ben Culkin <scorpress@gmail.com> | 2020-04-13 18:32:11 -0400 |
| commit | 5a26fb2c0d899b1c80fabb39366a7b7db4d8ca41 (patch) | |
| tree | 19e19dab7c72aaee504a07e9434cde8c379092c8 /dice/src/main/java/bjc/dicelang/dicev2/ExplodingDieMod.java | |
| parent | 25fbdca78518df0cb096544e912cdb3913f348fd (diff) | |
Add some javadoc
Add some javadoc comments
Diffstat (limited to 'dice/src/main/java/bjc/dicelang/dicev2/ExplodingDieMod.java')
| -rw-r--r-- | dice/src/main/java/bjc/dicelang/dicev2/ExplodingDieMod.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/dice/src/main/java/bjc/dicelang/dicev2/ExplodingDieMod.java b/dice/src/main/java/bjc/dicelang/dicev2/ExplodingDieMod.java index 885e02d..895a53c 100644 --- a/dice/src/main/java/bjc/dicelang/dicev2/ExplodingDieMod.java +++ b/dice/src/main/java/bjc/dicelang/dicev2/ExplodingDieMod.java @@ -6,17 +6,42 @@ import java.util.ArrayList; import java.util.List; import java.util.function.LongPredicate; +/** + * An exploding die pool. + * @author Ben Culkin + * + */ public class ExplodingDieMod extends Die { + /** + * The pool of dice. + */ public final Die[] dice; + /** + * The predicate which says when to explode. + */ public final LongPredicate explode; + /** + * Should the explosion penetrate. + */ public final boolean penetrate; + /** + * Create an exploding die pool. + * @param explode The predicate for determining an explosion. + * @param dice The die pool. + */ public ExplodingDieMod(LongPredicate explode, Die... dice) { this(explode, false, dice); } + /** + * Create an exploding die pool. + * @param explode The predicate for determining an explosion. + * @param penetrate Whether the explosion should penetrate. + * @param dice The die pool. + */ public ExplodingDieMod(LongPredicate explode, boolean penetrate, Die... dice) { super(); @@ -27,6 +52,7 @@ public class ExplodingDieMod extends Die { this.penetrate = penetrate; } + @Override public long[] roll() { List<Long> lst = new ArrayList<>(dice.length); @@ -57,15 +83,18 @@ public class ExplodingDieMod extends Die { * It makes no sense to roll a 'single' exploding dice, since it * exploding adds another die. Use compounding dice for that case. */ + @Override public long rollSingle() { throw new UnsupportedOperationException("Exploding dice can't be rolled singly"); } /* :UnoptimizableDice */ + @Override public boolean canOptimize() { return false; } + @Override public long optimize() { throw new UnsupportedOperationException("Exploding dice can't be optimized"); } |
