From 438a23c696283dc17a0d5fd1a3e12513deac9030 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Tue, 26 Jan 2016 11:31:45 -0500 Subject: Added dice roller --- .../java/bjc/utils/dice/ScalarDiceExpression.java | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 BJC-Utils2/src/main/java/bjc/utils/dice/ScalarDiceExpression.java (limited to 'BJC-Utils2/src/main/java/bjc/utils/dice/ScalarDiceExpression.java') diff --git a/BJC-Utils2/src/main/java/bjc/utils/dice/ScalarDiceExpression.java b/BJC-Utils2/src/main/java/bjc/utils/dice/ScalarDiceExpression.java new file mode 100644 index 0000000..4b73dd5 --- /dev/null +++ b/BJC-Utils2/src/main/java/bjc/utils/dice/ScalarDiceExpression.java @@ -0,0 +1,33 @@ +package bjc.utils.dice; + +public class ScalarDiceExpression implements DiceExpression { + private DiceExpressionType det; + private DiceExpression exp; + + private int scalar; + + public ScalarDiceExpression(DiceExpression dex, int scalr, + DiceExpressionType dt) { + exp = dex; + scalar = scalr; + det = dt; + } + + @Override + public int roll() { + switch (det) { + case ADD: + return exp.roll() + scalar; + case SUBTRACT: + return exp.roll() - scalar; + case MULTIPLY: + return exp.roll() * scalar; + case DIVIDE: + return Math.round(exp.roll() / scalar); + default: + throw new IllegalStateException( + "Got passed a invalid ScalarExpressionType " + + det); + } + } +} -- cgit v1.2.3