summaryrefslogtreecommitdiff
path: root/src/main/java/bjc/rgens/parser/elements/ChanceCaseElement.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/bjc/rgens/parser/elements/ChanceCaseElement.java')
-rw-r--r--src/main/java/bjc/rgens/parser/elements/ChanceCaseElement.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/java/bjc/rgens/parser/elements/ChanceCaseElement.java b/src/main/java/bjc/rgens/parser/elements/ChanceCaseElement.java
index 483a103..1edccd3 100644
--- a/src/main/java/bjc/rgens/parser/elements/ChanceCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/ChanceCaseElement.java
@@ -2,11 +2,27 @@ package bjc.rgens.parser.elements;
import bjc.rgens.parser.GenerationState;
+/**
+ * A case element that has a '1 in n' chance to generate something.
+ * @author Ben Culkin
+ *
+ */
public class ChanceCaseElement extends CaseElement {
+ /**
+ * The case element to generate.
+ */
public final CaseElement elm;
+ /**
+ * The 'rarity' of generating output.
+ */
public int chance;
+ /**
+ * Create a new chance case element.
+ * @param elm The element to generate.
+ * @param chance The 'n' in the '1 in n' chance to generate the element.
+ */
public ChanceCaseElement(CaseElement elm, int chance) {
super(elm.spacing);
@@ -14,6 +30,7 @@ public class ChanceCaseElement extends CaseElement {
this.chance = chance;
}
+ @Override
public void generate(GenerationState state) {
if(state.rnd.nextInt(chance) == 0) elm.generate(state);
}