Drag[en]gine Script Module DragonScript
1.23
|
List of weighted entries for random retrieval. More...
Classes | |
class | Entry |
Entry. More... | |
Public Member Functions | |
void | add (Object object, float weight) |
Add object. More... | |
WeightedRandomList | collect (Block ablock) |
New weighted random list with filtered elements. More... | |
Object | find (Block ablock) |
Find entry with block. More... | |
void | forEach (Block ablock) |
Visit entries with block. More... | |
int | getCount () |
Number of entries. More... | |
Object | getObjectAt (int index) |
Object at index. More... | |
float | getWeightAt (int index) |
Weight at index. More... | |
int | indexOfObject (Object object) |
Index of first object or -1 if absent. More... | |
WeightedRandomList | new () |
Create list. More... | |
WeightedRandomList | new (WeightedRandomList list) |
Create copy of list. More... | |
Object | random () |
Random object. More... | |
void | removeAll () |
Remove all objects. More... | |
void | removeFrom (int index) |
Remove object from index. More... | |
void | removeObject (Object object) |
Remove first occurance of object. More... | |
void | setObjectAt (int index, Object object) |
Set object at index. More... | |
void | setWeightAt (int index, float weight) |
Set weight at index. More... | |
Protected Member Functions | |
bool | getDirtyThresholds () |
Threshold are dirty. More... | |
Entry | getEntryAt (int index) |
Entry at index. More... | |
float | getMaxThreshold () |
Maximum threshold. More... | |
void | updateThresholds () |
Update thresholds. More... | |
List of weighted entries for random retrieval.
List entries have a weight assigned representing the percentage chance of the entry to be selected. If all entries have the same weight ths list behaves the same as Array.random(). Using different weights allows to favor or disfavor certain elements.
void Dragengine.Utils.WeightedRandomList.add | ( | Object | object, |
float | weight | ||
) |
Add object.
WeightedRandomList Dragengine.Utils.WeightedRandomList.collect | ( | Block | ablock | ) |
New weighted random list with filtered elements.
Block is called with arguments (Object object, float Weight) and has to return true to include the object or false to exclude the object.
Object Dragengine.Utils.WeightedRandomList.find | ( | Block | ablock | ) |
Find entry with block.
Black is called with arguments (Object object, float weight) and has to return true to select the object or false to continue searching.
void Dragengine.Utils.WeightedRandomList.forEach | ( | Block | ablock | ) |
Visit entries with block.
Black is called with arguments (Object object, float weight).
int Dragengine.Utils.WeightedRandomList.getCount | ( | ) |
Number of entries.
|
protected |
Threshold are dirty.
|
protected |
Maximum threshold.
Object Dragengine.Utils.WeightedRandomList.getObjectAt | ( | int | index | ) |
Object at index.
float Dragengine.Utils.WeightedRandomList.getWeightAt | ( | int | index | ) |
Weight at index.
int Dragengine.Utils.WeightedRandomList.indexOfObject | ( | Object | object | ) |
Index of first object or -1 if absent.
WeightedRandomList Dragengine.Utils.WeightedRandomList.new | ( | ) |
Create list.
WeightedRandomList Dragengine.Utils.WeightedRandomList.new | ( | WeightedRandomList | list | ) |
Create copy of list.
Object Dragengine.Utils.WeightedRandomList.random | ( | ) |
Random object.
EInvalidParam | List is empty. |
void Dragengine.Utils.WeightedRandomList.removeAll | ( | ) |
Remove all objects.
void Dragengine.Utils.WeightedRandomList.removeFrom | ( | int | index | ) |
Remove object from index.
void Dragengine.Utils.WeightedRandomList.removeObject | ( | Object | object | ) |
Remove first occurance of object.
void Dragengine.Utils.WeightedRandomList.setObjectAt | ( | int | index, |
Object | object | ||
) |
Set object at index.
void Dragengine.Utils.WeightedRandomList.setWeightAt | ( | int | index, |
float | weight | ||
) |
Set weight at index.
|
protected |
Update thresholds.