XII Release 0.1.0
Loading...
Searching...
No Matches
xiiScriptExtensionClass_StableRandom Class Reference

#include <ScriptExtensionClass_StableRandom.h>

Static Public Member Functions

static xiiInt32 IntMinMax (xiiInt32 &inout_iPosition, xiiInt32 iMinValue, xiiInt32 iMaxValue, xiiUInt32 uiSeed)
 
static float FloatZeroToOne (xiiInt32 &inout_iPosition, xiiUInt32 uiSeed)
 
static float FloatMinMax (xiiInt32 &inout_iPosition, float fMinValue, float fMaxValue, xiiUInt32 uiSeed)
 
static xiiVec3 Vec3MinMax (xiiInt32 &inout_iPosition, const xiiVec3 &vMinValue, const xiiVec3 &vMaxValue, xiiUInt32 uiSeed)
 

Detailed Description

Script extension class providing deterministic random number generation for scripts.

Generates reproducible random sequences using a seed and position-based approach. The same seed and position sequence will always produce identical results, which is essential for deterministic gameplay and debugging.

Member Function Documentation

◆ FloatMinMax()

float xiiScriptExtensionClass_StableRandom::FloatMinMax ( xiiInt32 & inout_iPosition,
float fMinValue,
float fMaxValue,
xiiUInt32 uiSeed )
static

Generates a random float within the specified range.

Parameters
inout_iPositionCurrent position in the random sequence, automatically incremented.
fMinValueMinimum value (inclusive).
fMaxValueMaximum value (inclusive).
uiSeedRandom seed to use for generation.
Returns
Random float between fMinValue and fMaxValue.

◆ FloatZeroToOne()

float xiiScriptExtensionClass_StableRandom::FloatZeroToOne ( xiiInt32 & inout_iPosition,
xiiUInt32 uiSeed )
static

Generates a random float between 0.0 and 1.0.

Parameters
inout_iPositionCurrent position in the random sequence, automatically incremented.
uiSeedRandom seed to use for generation.
Returns
Random float between 0.0 and 1.0.

◆ IntMinMax()

xiiInt32 xiiScriptExtensionClass_StableRandom::IntMinMax ( xiiInt32 & inout_iPosition,
xiiInt32 iMinValue,
xiiInt32 iMaxValue,
xiiUInt32 uiSeed )
static

Generates a random integer within the specified range.

Parameters
inout_iPositionCurrent position in the random sequence, automatically incremented.
iMinValueMinimum value (inclusive).
iMaxValueMaximum value (inclusive).
uiSeedRandom seed to use for generation.
Returns
Random integer between iMinValue and iMaxValue.

◆ Vec3MinMax()

xiiVec3 xiiScriptExtensionClass_StableRandom::Vec3MinMax ( xiiInt32 & inout_iPosition,
const xiiVec3 & vMinValue,
const xiiVec3 & vMaxValue,
xiiUInt32 uiSeed )
static

Generates a random 3D vector with components within the specified ranges.

Parameters
inout_iPositionCurrent position in the random sequence, automatically incremented.
vMinValueMinimum values for each component (inclusive).
vMaxValueMaximum values for each component (inclusive).
uiSeedRandom seed to use for generation.
Returns
Random vector with each component between corresponding min and max values.

The documentation for this class was generated from the following files: