From 09f161528619f9396aa07c784c15bc1d33f5c047 Mon Sep 17 00:00:00 2001 From: "Benjamin J. Culkin" Date: Wed, 30 May 2018 15:57:41 -0300 Subject: Start work on dice rewrite This starts work on a rewrite of the dice rolling system to better adapt it for more features --- dice/src/main/java/bjc/dicelang/dicev2/Die.java | 27 +++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 dice/src/main/java/bjc/dicelang/dicev2/Die.java (limited to 'dice/src/main/java/bjc/dicelang/dicev2/Die.java') diff --git a/dice/src/main/java/bjc/dicelang/dicev2/Die.java b/dice/src/main/java/bjc/dicelang/dicev2/Die.java new file mode 100644 index 0000000..d688cfa --- /dev/null +++ b/dice/src/main/java/bjc/dicelang/dicev2/Die.java @@ -0,0 +1,27 @@ +package bjc.dicelang.dicev2; + +import java.util.Random; + +public abstract class Die { + private static final Random BASE = new Random(); + + protected Random rng; + + protected Die() { + rng = BASE; + } + + protected Die(Random rnd) { + rng = rnd; + } + + public void setRandom(Random rnd) { + rng = rnd; + } + + public abstract long[] roll(); + public abstract long rollSingle(); + + public abstract boolean canOptimize(); + public abstract long optimize(); +} -- cgit v1.2.3