Class ChanceTable<T>
- java.lang.Object
-
- org.spongepowered.api.util.weighted.RandomObjectTable<T>
-
- org.spongepowered.api.util.weighted.ChanceTable<T>
-
- Type Parameters:
T
- The entry type
- All Implemented Interfaces:
java.lang.Iterable<TableEntry<T>>
,java.util.Collection<TableEntry<T>>
public class ChanceTable<T> extends RandomObjectTable<T>
This is a variant of theRandomObjectTable
which uses a 0-1 chance attached to every entry. When rolled the a chance roll is calculated for each entry and all entries which pass are returned.
-
-
Field Summary
-
Fields inherited from class org.spongepowered.api.util.weighted.RandomObjectTable
entries
-
-
Constructor Summary
Constructors Constructor Description ChanceTable()
Creates a newChanceTable
with a default roll count of 1.ChanceTable(int rolls)
Creates a newChanceTable
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object o)
java.util.List<T>
get(java.util.Random rand)
Performs a number of rolls according to the number of rolls defined byRandomObjectTable.rolls()
and returns items from the table for each roll.int
hashCode()
java.lang.String
toString()
-
Methods inherited from class org.spongepowered.api.util.weighted.RandomObjectTable
add, add, addAll, clear, contains, containsAll, containsAllObjects, containsObject, entries, isEmpty, iterator, remove, removeAll, removeObject, retainAll, rolls, setRolls, setRolls, size, toArray, toArray
-
-
-
-
Constructor Detail
-
ChanceTable
public ChanceTable()
Creates a newChanceTable
with a default roll count of 1.
-
ChanceTable
public ChanceTable(int rolls)
Creates a newChanceTable
.- Parameters:
rolls
- The number of rolls to perform
-
-
Method Detail
-
get
public java.util.List<T> get(java.util.Random rand)
Description copied from class:RandomObjectTable
Performs a number of rolls according to the number of rolls defined byRandomObjectTable.rolls()
and returns items from the table for each roll.- Specified by:
get
in classRandomObjectTable<T>
- Parameters:
rand
- The random object to use- Returns:
- The returned items, may be empty but not null
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interfacejava.util.Collection<T>
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejava.util.Collection<T>
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-