Dayz Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Loading...
Searching...
No Matches
Particle Class Reference

Legacy way of using particles in the game. More...

Inheritance diagram for Particle:
ParticleSource

Protected Member Functions

Playback

Methods regarding playing/stopping of particle

override void PlayParticle (int particle_id=-1)
 Method to tell the particle to start playing.
override bool PlayParticleEx (int particle_id=-1, int flags=0)
 Method to tell the particle to start playing.
void Play (int particle_id=-1)
 Legacy function for backwards compatibility with 1.01 and below.
override bool StopParticle (int flags=0)
 Method to tell the particle to stop playing.
void Stop ()
 Legacy function for backwards compatibility with 1.14 and below.
Properties and state

Obtain information or set properties regarding the state of the Particle

void SetSource (int particle_id)
 Sets particle id.
int GetParticleID ()
 Gets particle id.
Object GetDirectParticleEffect ()
 Returns direct particle effect entity which is usually handled by this class 'Particle' if there is one.
Object GetParticleParent ()
 Returns the parent of this Particle if there is one.
bool HasActiveParticle ()
 Returns if there is any particle active.
int GetParticleCount ()
 Returns the total count of active particles in all emitors.
bool IsRepeat ()
 Returns whether there is a repeating particle.
float GetMaxLifetime ()
 Returns the approx.

Static Protected Member Functions

Create a particle (static)

You can create a particle either at some position, or create it as a child on some object.

static Particle CreateOnObject (int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0", bool force_world_rotation=false)
 Creates a particle emitter and attaches it on the given object.
static Particle Create (int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0")
 Legacy function for backwards compatibility.
static Particle CreateInWorld (int particle_id, vector global_pos, vector global_ori="0 0 0", bool force_world_rotation=false)
 Creates a particle emitter on the given position.
static Particle Create (int particle_id, vector global_pos, vector global_ori="0 0 0")
 Legacy function for backwards compatibility with 1.01 and below.
Static play on creation

You can use the following Play(...) functions to create and activate a particle in 1 line of your script.

static Particle PlayOnObject (int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0", bool force_world_rotation=false)
 Creates a particle emitter, attaches it on the given object and activates it.
static Particle Play (int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0")
 Legacy function for backwards compatibility with 1.01 and below.
static Particle PlayInWorld (int particle_id, vector global_pos)
 Creates a particle emitter on the given position and activates it.
static Particle Play (int particle_id, vector global_pos)
 Legacy function for backwards compatibility with 1.01 and below.

Private Member Functions

Misc

Various helpers

void AddAsChild (Object parent, vector local_pos="0 0 0", vector local_ori="0 0 0", bool force_rotation_to_world=false)
 Attaches this particle onto some object.
Parameter API

Helpful methods for getting or setting parameters

void SetParticleParam (int parameter_id, float value)
 Set the value of a parameter of all emitors in the particle.
void SetParameter (int emitter, int parameter, float value)
 Set the value of a parameter of an emitor in the particle.
void GetParameter (int emitter, int parameter, out float value)
 Get the value of a parameter of an emitor in the particle.
float GetParameterEx (int emitter, int parameter)
 Get the value of a parameter of an emitor in the particle.
float GetParameterOriginal (int emitter, int parameter)
void ScaleParticleParamFromOriginal (int parameter_id, float coef)
 Scales the given parameter on all emitors relatively to their ORIGINAL value.
void ScaleParticleParam (int parameter_id, float coef)
 Scales the given parameter on all emitors relatively to their CURRENT value.
void IncrementParticleParamFromOriginal (int parameter_id, float value)
 Increments the value of the given parameter relatively from the ORIGINAL value.
void IncrementParticleParam (int parameter_id, float value)
 Increments the value of the given parameter relatively from the CURRENT value.

Generic data

Generic data for the Particle

int m_ParticleID
 ID from ParticleList if assigned.
float m_Lifetime
 Approx. remaining lifetime of particle.
bool m_IsRepeat
 Whether this particle repeats.
bool m_MarkedForDeletion
 Whether this particle is queued for deletion.

Wiggle API

Settings to make the Particle wiggle

Object m_ParentObject
 Parent Object the Particle is child of.
Object m_ParticleEffect
 The child object which contains the actual particle.
int m_PreviousFrame
 DEPRECATED.
bool m_WiggleProcessing
 Used for Wiggle API, to signal that wiggle API is currently doing work.
bool m_ForceOrientationRelativeToWorld
 Used for Wiggle API, to restore after unparenting.
vector m_DefaultOri
 Used for Wiggle API, to restore after unparenting.
vector m_DefaultPos
 Used for Wiggle API, to restore after unparenting.
vector m_DefaultWorldOri
 Used for Wiggle API, to restore after unparenting.
vector m_DefaultWorldPos
 Used for Wiggle API, to restore after unparenting.
float m_MaxOriWiggle
 Used for Wiggle API, Wiggle room [-m_MaxOriWiggle, m_MaxOriWiggle].
float m_MaxOriInterval
 Used for Wiggle API, Interval for wiggling [0, m_MaxOriInterval[.
ref Timer m_RandomizeOri
 Used for Wiggle API, calls the Wiggle functionality.
vector m_GlobalPosPreviousFrame
 DEPRECATED.
const int MAX_EMITORS = 30
 DEPRECATED.
void Particle ()
 ctor
bool IsWiggling ()
 Checks if particle is currently wiggling.
void SetWiggle (float random_angle, float random_interval)
 Makes the particle change direction by random_angle every random_interval seconds.
void StopWiggle ()
 Stops randomized wiggle.
void RandomizeOrientation ()
 Randomizes a new orientation and applies it.
void ParticleInit ()
 Purely here so that it can be emptied in ParticleSource.
vector RandWiggleVector ()
 Helper to get a randomized wiggle vector.
float RandWiggleFloat ()
 Helper to get a randomized wiggle float value.

Misc Particle specific helpers

Functionality specific for Particle

void CreateParticleEffect ()
 Creates ParticleEffect child, called from UpdateState.
void DestroyParticleEffect ()
 Destroys ParticleEffect child, called from UpdateState.
override void EOnFrame (IEntity other, float timeSlice)
 OnFrame update event decrementing the stored approx.
void OnCheckAutoDelete ()
 Creates ParticleEffect child, called from UpdateState.
void OnToDelete ()
 Called before deletion from OnCheckAutoDelete.
void UpdateState ()
 Creates/Destroys ParticleEffect child according to current state.

Detailed Description

Legacy way of using particles in the game.

Note
They work okay when just needing to play a particle once every once in a while But are extremely wasteful when it comes to playing multiple Particles at the same time

Definition at line 6 of file particle.c.

Constructor & Destructor Documentation

◆ Particle()

Member Function Documentation

◆ AddAsChild()

void AddAsChild ( Object parent,
vector local_pos = "0 0 0",
vector local_ori = "0 0 0",
bool force_rotation_to_world = false )
inlineprivate

Attaches this particle onto some object.

If null value is provided then the particle will be detached from the current parent.

Note
Due to the members being filled in, AddChild/RemoveChild cannot be used with Particle when using Wiggle
Parameters
parentObject Parent onto which this particle will be attached
local_posvector Attachment position local to the parent (optional)
local_orivector Orientation local to the parent (Pitch, Yawn, Roll in degrees) (Optional)
force_rotation_to_worldbool Force rotation to be in WS (Optional)

Definition at line 563 of file particle.c.

References AddChild(), m_DefaultPos, m_ForceOrientationRelativeToWorld, m_ParentObject, m_ParticleEffect, and SetPosition().

Referenced by EffectParticle::AddAsChild(), CreateOnObject(), and RandomizeOrientation().

◆ Create() [1/2]

Particle Create ( int particle_id,
Object parent_obj,
vector local_pos = "0 0 0",
vector local_ori = "0 0 0" )
inlinestaticprotected

Legacy function for backwards compatibility.

Definition at line 104 of file particle.c.

References Particle(), CreateOnObject(), and particle_id.

◆ Create() [2/2]

Particle Create ( int particle_id,
vector global_pos,
vector global_ori = "0 0 0" )
inlinestaticprotected

Legacy function for backwards compatibility with 1.01 and below.

Definition at line 129 of file particle.c.

References Particle(), CreateInWorld(), and particle_id.

◆ CreateInWorld()

Particle CreateInWorld ( int particle_id,
vector global_pos,
vector global_ori = "0 0 0",
bool force_world_rotation = false )
inlinestaticprotected

Creates a particle emitter on the given position.

Parameters
particle_idint Particle ID registered in ParticleList
global_posVector Position where the particel will be created
global_orivector Orientation (Pitch, Yawn, Roll in degrees) (Optional)
force_world_rotationbool Forces particle's orientation to rotate relative to the world and not with the object (Optional)
Returns
Particle Created particle instance

Definition at line 117 of file particle.c.

References Particle(), ECE_LOCAL, g_Game, m_ForceOrientationRelativeToWorld, particle_id, and SetSource().

Referenced by Create(), CreateOnObject(), and PlayInWorld().

◆ CreateOnObject()

Particle CreateOnObject ( int particle_id,
Object parent_obj,
vector local_pos = "0 0 0",
vector local_ori = "0 0 0",
bool force_world_rotation = false )
inlinestaticprotected

Creates a particle emitter and attaches it on the given object.

Parameters
particle_idint Particle ID registered in ParticleList
parent_objObject Instance on which this particle will be attached
local_posvector Attachment position local to the parent (Optional)
local_orivector Orientation local to the parent (Pitch, Yawn, Roll in degrees) (Optional)
force_world_rotationbool Forces particle's orientation to rotate relative to the world and not with the object (Optional)
Returns
Particle Created particle instance

Definition at line 88 of file particle.c.

References Particle(), AddAsChild(), CreateInWorld(), Error(), m_DefaultOri, particle_id, and Vector().

Referenced by Create(), and PlayOnObject().

◆ CreateParticleEffect()

void CreateParticleEffect ( )
inlineprivate

◆ DestroyParticleEffect()

void DestroyParticleEffect ( )
inlineprivate

Destroys ParticleEffect child, called from UpdateState.

Note
Does not destroy it immediately As it simply nulls the lifetime Then it will be cleaned up by EOnFrame eventually

Definition at line 474 of file particle.c.

References g_Game, m_IsRepeat, m_ParticleEffect, and SetParameter().

Referenced by UpdateState().

◆ EOnFrame()

override void EOnFrame ( IEntity other,
float timeSlice )
inlineprivate

OnFrame update event decrementing the stored approx.

lifetime and checking for deletion

Definition at line 489 of file particle.c.

References m_Lifetime, and OnCheckAutoDelete().

◆ GetDirectParticleEffect()

Object GetDirectParticleEffect ( )
inlineprotected

Returns direct particle effect entity which is usually handled by this class 'Particle' if there is one.

Note
Is a child of this Particle
Returns
Object The Object with the particle component or null

Definition at line 307 of file particle.c.

References m_ParticleEffect.

◆ GetMaxLifetime()

float GetMaxLifetime ( )
inlineprotected

Returns the approx.

max lifetime

Returns
float The largest lifetime sum among the emitors

Definition at line 380 of file particle.c.

References GetParticleEmitorCount(), GetParticleParm(), and m_ParticleEffect.

Referenced by CreateParticleEffect(), and OnCheckAutoDelete().

◆ GetParameter()

void GetParameter ( int emitter,
int parameter,
out float value )
inlineprivate

Get the value of a parameter of an emitor in the particle.

Parameters
emitterint The emitor to get the value from
parameterint The parameter to get the value from (enum EmitorParam)
valuefloat The value

Definition at line 639 of file particle.c.

References GetParticleParm(), and m_ParticleEffect.

◆ GetParameterEx()

float GetParameterEx ( int emitter,
int parameter )
inlineprivate

Get the value of a parameter of an emitor in the particle.

Parameters
emitterint The emitor to get the value from
parameterint The parameter to get the value from (enum EmitorParam)
Returns
float The value

Definition at line 653 of file particle.c.

References GetParticleParm(), and m_ParticleEffect.

◆ GetParameterOriginal()

float GetParameterOriginal ( int emitter,
int parameter )
inlineprivate

◆ GetParticleCount()

int GetParticleCount ( )
inlineprotected

Returns the total count of active particles in all emitors.

Note
Internally does a sum, HasActiveParticle is better for a quick check
Returns
int Total count of active particles

Definition at line 340 of file particle.c.

References m_ParticleEffect, and ParticleGetCount().

Referenced by OnCheckAutoDelete().

◆ GetParticleID()

int GetParticleID ( )
inlineprotected

Gets particle id.

Note
This is not necessarily the CURRENT particle As one can use SetSource while the Particle is still playing But that will not change the particle before Particle is played again
Returns
int The last set Particle ID registered in ParticleList

Definition at line 297 of file particle.c.

References m_ParticleID.

Referenced by EffEngineSmoke::Event_OnFrameUpdate(), and EffectParticle::GetCurrentParticleID().

◆ GetParticleParent()

Object GetParticleParent ( )
inlineprotected

Returns the parent of this Particle if there is one.

Returns
Object The registered parent or null

Definition at line 316 of file particle.c.

References m_ParentObject.

◆ HasActiveParticle()

bool HasActiveParticle ( )
inlineprotected

Returns if there is any particle active.

Returns
bool Whether there is any particle active

Definition at line 325 of file particle.c.

References m_ParticleEffect, and ParticleHasActive().

◆ IncrementParticleParam()

void IncrementParticleParam ( int parameter_id,
float value )
inlineprivate

Increments the value of the given parameter relatively from the CURRENT value.

Note
It's a simple sum, so negative value decrements
Parameters
parameter_idint The parameter to adjust (enum EmitorParam)
valuefloat The value to sum

Definition at line 737 of file particle.c.

References GetParticleEmitorCount(), GetParticleParm(), m_ParticleEffect, and SetParticleParm().

◆ IncrementParticleParamFromOriginal()

void IncrementParticleParamFromOriginal ( int parameter_id,
float value )
inlineprivate

Increments the value of the given parameter relatively from the ORIGINAL value.

Note
It's a simple sum, so negative value decrements
Parameters
parameter_idint The parameter to adjust (enum EmitorParam)
valuefloat The value to sum

Definition at line 717 of file particle.c.

References GetParticleEmitorCount(), GetParticleParmOriginal(), m_ParticleEffect, and SetParticleParm().

◆ IsRepeat()

bool IsRepeat ( )
inlineprotected

Returns whether there is a repeating particle.

Returns
bool whether there is a repeating particle

Definition at line 354 of file particle.c.

References GetParticleEmitorCount(), GetParticleParm(), and m_ParticleEffect.

Referenced by CreateParticleEffect(), and OnCheckAutoDelete().

◆ IsWiggling()

bool IsWiggling ( )
inlineprivate

Checks if particle is currently wiggling.

Definition at line 763 of file particle.c.

References m_RandomizeOri.

Referenced by ParticleSource::OnParticleStop(), ParticleSource::OnParticleUnParented(), ParticleSource::SetWiggle(), and ParticleSource::StopWiggle().

◆ OnCheckAutoDelete()

void OnCheckAutoDelete ( )
inlineprivate

Creates ParticleEffect child, called from UpdateState.

Definition at line 498 of file particle.c.

References GetMaxLifetime(), GetParticleCount(), IsRepeat(), m_IsRepeat, m_Lifetime, m_MarkedForDeletion, m_ParticleEffect, OnParticleEnd(), OnParticleStop(), and OnToDelete().

Referenced by EOnFrame().

◆ OnToDelete()

void OnToDelete ( )
inlineprivate

Called before deletion from OnCheckAutoDelete.

Definition at line 541 of file particle.c.

Referenced by OnCheckAutoDelete().

◆ ParticleInit()

void ParticleInit ( )
inlineprotected

Purely here so that it can be emptied in ParticleSource.

Definition at line 67 of file particle.c.

References SetFlags().

Referenced by Particle().

◆ Play() [1/3]

Particle Play ( int particle_id,
Object parent_obj,
vector local_pos = "0 0 0",
vector local_ori = "0 0 0" )
inlinestaticprotected

Legacy function for backwards compatibility with 1.01 and below.

Definition at line 163 of file particle.c.

References Particle(), particle_id, and PlayOnObject().

◆ Play() [2/3]

Particle Play ( int particle_id,
vector global_pos )
inlinestaticprotected

Legacy function for backwards compatibility with 1.01 and below.

Definition at line 185 of file particle.c.

References Particle(), particle_id, and PlayInWorld().

◆ Play() [3/3]

void Play ( int particle_id = -1)
inlineprotected

Legacy function for backwards compatibility with 1.01 and below.

Parameters
particle_idint Particle ID registered in ParticleList to start playing

Definition at line 233 of file particle.c.

References particle_id, and PlayParticle().

◆ PlayInWorld()

Particle PlayInWorld ( int particle_id,
vector global_pos )
inlinestaticprotected

Creates a particle emitter on the given position and activates it.

Parameters
particle_idint Particle ID registered in ParticleList
global_posVector Position where the particel will be created
Returns
Particle Created particle instance

Definition at line 174 of file particle.c.

References Particle(), CreateInWorld(), particle_id, and PlayParticle().

Referenced by EffBulletImpactBase::Event_OnStarted(), and Play().

◆ PlayOnObject()

Particle PlayOnObject ( int particle_id,
Object parent_obj,
vector local_pos = "0 0 0",
vector local_ori = "0 0 0",
bool force_world_rotation = false )
inlinestaticprotected

Creates a particle emitter, attaches it on the given object and activates it.

Parameters
particle_idint Particle ID registered in ParticleList
parent_objObject Instance on which this particle will be attached
local_posvector Attachment position local to the parent (Optional)
local_orivector Orientation local to the parent (Pitch, Yaw, Roll in degrees) (Optional)
force_world_rotationbool Forces particle's orientation to rotate relative to the world and not with the object (Optional)
Returns
Particle Created particle instance

Definition at line 152 of file particle.c.

References Particle(), CreateOnObject(), particle_id, and PlayParticle().

Referenced by Play().

◆ PlayParticle()

override void PlayParticle ( int particle_id = -1)
inlineprotected

Method to tell the particle to start playing.

Parameters
particle_idint Particle ID registered in ParticleList to start playing

Definition at line 203 of file particle.c.

References particle_id, and PlayParticleEx().

Referenced by PMTPlayback::CheckStop(), Play(), PlayInWorld(), and PlayOnObject().

◆ PlayParticleEx()

override bool PlayParticleEx ( int particle_id = -1,
int flags = 0 )
inlineprotected

Method to tell the particle to start playing.

Note
The parameter to set the ID will only work when the particle is not already playing
Parameters
particle_idint Particle ID registered in ParticleList to start playing
flagsint Flags to pass to the playing (None on this level)
Returns
bool Whether the particle successfully started

Definition at line 215 of file particle.c.

References OnParticleStart(), particle_id, SetSource(), and UpdateState().

Referenced by PlayParticle().

◆ RandomizeOrientation()

void RandomizeOrientation ( )
inlineprivate

Randomizes a new orientation and applies it.

Definition at line 811 of file particle.c.

References AddAsChild(), m_DefaultOri, m_DefaultPos, m_MaxOriInterval, m_ParentObject, m_RandomizeOri, m_WiggleProcessing, Math::RandomFloat(), and RandWiggleVector().

◆ RandWiggleFloat()

float RandWiggleFloat ( )
inlineprotected

Helper to get a randomized wiggle float value.

Definition at line 841 of file particle.c.

References m_MaxOriWiggle, and Math::RandomFloatInclusive().

Referenced by RandWiggleVector().

◆ RandWiggleVector()

vector RandWiggleVector ( )
inlineprotected

Helper to get a randomized wiggle vector.

Definition at line 833 of file particle.c.

References RandWiggleFloat(), and Vector().

Referenced by RandomizeOrientation(), and ParticleSource::RandomizeOrientation().

◆ ScaleParticleParam()

void ScaleParticleParam ( int parameter_id,
float coef )
inlineprivate

◆ ScaleParticleParamFromOriginal()

void ScaleParticleParamFromOriginal ( int parameter_id,
float coef )
inlineprivate

Scales the given parameter on all emitors relatively to their ORIGINAL value.

Parameters
parameter_idint The parameter to adjust (enum EmitorParam)
coeffloat The multiplier to apply

Definition at line 678 of file particle.c.

References GetParticleEmitorCount(), GetParticleParmOriginal(), m_ParticleEffect, and SetParticleParm().

Referenced by EffEngineSmoke::Event_OnFrameUpdate(), EffExhaustSmoke::SetParticleStateLight(), and EffCoolantSteam::UpdateParticle().

◆ SetParameter()

void SetParameter ( int emitter,
int parameter,
float value )
inlineprivate

Set the value of a parameter of an emitor in the particle.

Parameters
emitterint The emitter to apply the new value to, -1 for all emitter
parameterint The parameter to apply the new value to (enum EmitorParam)
valuefloat The value to apply

Definition at line 625 of file particle.c.

References m_ParticleEffect, and SetParticleParm().

Referenced by DestroyParticleEffect(), EffectBoatWaterBase::EnableEmitor(), EffectBoatWaterBack::Update(), and Update().

◆ SetParticleParam()

void SetParticleParam ( int parameter_id,
float value )
inlineprivate

Set the value of a parameter of all emitors in the particle.

Parameters
parameterint The parameter to apply the new value to (enum EmitorParam)
valuefloat The value to apply

Definition at line 611 of file particle.c.

References m_ParticleEffect, and SetParticleParm().

Referenced by EntityLightSource::HandleDancingShadows(), EffectBoatWaterBack::Update(), Update(), and EffCoolantSteam::UpdateParticle().

◆ SetSource()

void SetSource ( int particle_id)
inlineprotected

Sets particle id.

Note
Does not work at runtime, particle object needs to be destroyed and then Particle needs to play again
Parameters
particle_idint Particle ID registered in ParticleList to start playing

Definition at line 285 of file particle.c.

References m_ParticleID, and particle_id.

Referenced by CreateInWorld(), PlayParticleEx(), and EffectParticle::SetCurrentParticleID().

◆ SetWiggle()

void SetWiggle ( float random_angle,
float random_interval )
inlineprivate

Makes the particle change direction by random_angle every random_interval seconds.

Note
This does not actually work on Particle with no parent, it should on ParticleSource
Calling SetWiggle(0,0) will effectively stop all wiggle functionality
Parameters
random_anglefloat Will be the range [-random_angle, random_angle[ to wiggle between
random_intervalfloat Will be the time range [0, random_interval] to wiggle next time

Definition at line 775 of file particle.c.

References CALL_CATEGORY_GAMEPLAY, m_MaxOriInterval, m_MaxOriWiggle, m_RandomizeOri, Math::RandomFloat(), and StopWiggle().

Referenced by Roadflare::DestroyParticle().

◆ Stop()

void Stop ( )
inlineprotected

Legacy function for backwards compatibility with 1.14 and below.

Definition at line 266 of file particle.c.

References StopParticle().

Referenced by DestroyParticle(), Roadflare::DestroyParticle(), InventoryItem::KillAllOverheatingParticles(), EffectParticle::Stop(), and InventoryItem::UpdateAllOverheatingParticles().

◆ StopParticle()

override bool StopParticle ( int flags = 0)
inlineprotected

Method to tell the particle to stop playing.

Note
No flags available for Particle
Emitors are automatically removed later when its particle count is 0
Parameters
flagsint Flags to pass to the stopping (None on this level)
Returns
bool Whether the particle successfully stopped

Definition at line 245 of file particle.c.

References GetParent(), GetPosition(), OnParticleStop(), SetPosition(), and UpdateState().

Referenced by Stop().

◆ StopWiggle()

void StopWiggle ( )
inlineprivate

Stops randomized wiggle.

Definition at line 797 of file particle.c.

References m_MaxOriInterval, m_MaxOriWiggle, and m_RandomizeOri.

Referenced by SetWiggle().

◆ UpdateState()

void UpdateState ( )
inlineprotected

Creates/Destroys ParticleEffect child according to current state.

Note
Is called from Play/Stop methods

Definition at line 425 of file particle.c.

References CreateParticleEffect(), DestroyParticleEffect(), m_IsPlaying, and m_ParticleEffect.

Referenced by PlayParticleEx(), and StopParticle().

Field Documentation

◆ m_DefaultOri

vector m_DefaultOri
private

◆ m_DefaultPos

vector m_DefaultPos
private

◆ m_DefaultWorldOri

vector m_DefaultWorldOri
private

Used for Wiggle API, to restore after unparenting.

Definition at line 35 of file particle.c.

Referenced by ParticleSource::OnParticleUnParented(), and ParticleSource::SetWiggle().

◆ m_DefaultWorldPos

vector m_DefaultWorldPos
private

Used for Wiggle API, to restore after unparenting.

Definition at line 37 of file particle.c.

Referenced by ParticleSource::OnParticleUnParented(), and ParticleSource::SetWiggle().

◆ m_ForceOrientationRelativeToWorld

bool m_ForceOrientationRelativeToWorld
private

Used for Wiggle API, to restore after unparenting.

Definition at line 29 of file particle.c.

Referenced by AddAsChild(), CreateInWorld(), CreateParticleEffect(), ParticleSource::RandomizeOrientation(), ParticleSource::SetWiggle(), and ParticleSource::StopWiggle().

◆ m_GlobalPosPreviousFrame

vector m_GlobalPosPreviousFrame
private

DEPRECATED.

Definition at line 55 of file particle.c.

◆ m_IsRepeat

bool m_IsRepeat
protected

Whether this particle repeats.

Definition at line 17 of file particle.c.

Referenced by CreateParticleEffect(), DestroyParticleEffect(), and OnCheckAutoDelete().

◆ m_Lifetime

float m_Lifetime
protected

Approx. remaining lifetime of particle.

Definition at line 15 of file particle.c.

Referenced by CreateParticleEffect(), EOnFrame(), and OnCheckAutoDelete().

◆ m_MarkedForDeletion

bool m_MarkedForDeletion
private

Whether this particle is queued for deletion.

Definition at line 19 of file particle.c.

Referenced by OnCheckAutoDelete().

◆ m_MaxOriInterval

float m_MaxOriInterval
private

Used for Wiggle API, Interval for wiggling [0, m_MaxOriInterval[.

Definition at line 42 of file particle.c.

Referenced by ParticleSource::OnParticleUnParented(), RandomizeOrientation(), ParticleSource::RandomizeOrientation(), SetWiggle(), ParticleSource::SetWiggle(), and StopWiggle().

◆ m_MaxOriWiggle

float m_MaxOriWiggle
private

Used for Wiggle API, Wiggle room [-m_MaxOriWiggle, m_MaxOriWiggle].

Definition at line 40 of file particle.c.

Referenced by ParticleSource::OnParticleUnParented(), RandWiggleFloat(), SetWiggle(), ParticleSource::SetWiggle(), and StopWiggle().

◆ m_ParentObject

Object m_ParentObject
protected

◆ m_ParticleEffect

◆ m_ParticleID

int m_ParticleID
protected

ID from ParticleList if assigned.

Definition at line 13 of file particle.c.

Referenced by CreateParticleEffect(), GetParticleID(), and SetSource().

◆ m_PreviousFrame

int m_PreviousFrame
protected

DEPRECATED.

Definition at line 53 of file particle.c.

◆ m_RandomizeOri

ref Timer m_RandomizeOri
private

Used for Wiggle API, calls the Wiggle functionality.

Definition at line 44 of file particle.c.

Referenced by IsWiggling(), ParticleSource::OnParticleStop(), RandomizeOrientation(), ParticleSource::RandomizeOrientation(), SetWiggle(), and StopWiggle().

◆ m_WiggleProcessing

bool m_WiggleProcessing
private

Used for Wiggle API, to signal that wiggle API is currently doing work.

Definition at line 27 of file particle.c.

Referenced by ParticleSource::OnParticleUnParented(), RandomizeOrientation(), and ParticleSource::RandomizeOrientation().

◆ MAX_EMITORS

const int MAX_EMITORS = 30
staticprivate

DEPRECATED.

Definition at line 57 of file particle.c.


The documentation for this class was generated from the following file:
  • F:/Games/Dayz/scripts/3_game/particles/particle.c