Impact CFX API 1.5.0
Comprehensive API documentation for Impact CFX - Collision Effects System
Loading...
Searching...
No Matches
ImpactCFX.PooledEffectObjectBase Class Reference

Base class for an effect object (such as an audio source, particle system, or decal) that is part of on object pool. More...

Inheritance diagram for ImpactCFX.PooledEffectObjectBase:
ImpactCFX.Pooling.IPoolable ImpactCFX.Audio.ImpactAudioSourceBase ImpactCFX.Decals.ImpactDecalBase ImpactCFX.Particles.ImpactParticlesBase ImpactCFX.Audio.ImpactAudioSource ImpactCFX.Decals.ImpactDecal ImpactCFX.Particles.ImpactParticleSystem

Public Member Functions

virtual int GetPoolID ()
 Gets an ID for this object's object pool.
 
virtual void SetParentPoolGameObject (GameObject parentPoolGameObject)
 Sets this object's parent pool so that it can be returned to it.
 
virtual bool IsAvailable ()
 Is the object available?
 
virtual void RetrieveFromPool (float priority, long contactPointID)
 Retrieves this object from the pool.
 
virtual void UpdatePooledObject ()
 Run any necessary update logic for the pooled object, such as checking if it should be returned to its pool.
 
virtual void ReturnToPool ()
 Returns this object to its parent pool.
 
virtual void Destroy ()
 Disposes of this poolable object.
 
void RetrieveFromPool (float priority, long contactPointID)
 Retrieves this object from the pool.
 
void UpdatePooledObject ()
 Performs any necessary update logic for the pooled object.
 
void ReturnToPool ()
 Returns this object to its parent pool.
 
bool IsAvailable ()
 Is the object available?
 
void Destroy ()
 Disposes of this poolable object.
 

Protected Member Functions

void attach (CollisionResultData collisionResultData)
 
void detach ()
 

Properties

ObjectPoolConfig ObjectPoolConfig [get]
 Object pool configuration for this object when used as a template.
 
EffectAttachMode EffectAttachMode [get, set]
 Behavior for attaching this effect to one of the colliding objects that triggered the effect.
 
int LastRetrievedFrame [get, protected set]
 The last frame at which this object was retrieved.
 
float Priority [get, protected set]
 The current priority of the object.
 
long ContactPointID [get, protected set]
 The contact point ID associated with this object.
 
bool NeedsUpdate [get, protected set]
 Does this object need to be updated?
 
- Properties inherited from ImpactCFX.Pooling.IPoolable
int LastRetrievedFrame [get]
 The last frame at which this object was retrieved.
 
float Priority [get]
 The current priority of the object.
 
long ContactPointID [get]
 The contact point ID associated with this object.
 
bool NeedsUpdate [get]
 Does this object need to be updated?
 

Detailed Description

Base class for an effect object (such as an audio source, particle system, or decal) that is part of on object pool.

Member Function Documentation

◆ Destroy()

virtual void ImpactCFX.PooledEffectObjectBase.Destroy ( )
virtual

Disposes of this poolable object.

Implements ImpactCFX.Pooling.IPoolable.

◆ IsAvailable()

virtual bool ImpactCFX.PooledEffectObjectBase.IsAvailable ( )
virtual

Is the object available?

Implements ImpactCFX.Pooling.IPoolable.

◆ RetrieveFromPool()

virtual void ImpactCFX.PooledEffectObjectBase.RetrieveFromPool ( float  priority,
long  contactPointID 
)
virtual

Retrieves this object from the pool.

Implements ImpactCFX.Pooling.IPoolable.

◆ ReturnToPool()

virtual void ImpactCFX.PooledEffectObjectBase.ReturnToPool ( )
virtual

Returns this object to its parent pool.

Implements ImpactCFX.Pooling.IPoolable.

Reimplemented in ImpactCFX.Audio.ImpactAudioSourceBase.

◆ SetParentPoolGameObject()

virtual void ImpactCFX.PooledEffectObjectBase.SetParentPoolGameObject ( GameObject  parentPoolGameObject)
virtual

Sets this object's parent pool so that it can be returned to it.

Parameters
parentPoolGameObjectThe game object for the object pool.

◆ UpdatePooledObject()

virtual void ImpactCFX.PooledEffectObjectBase.UpdatePooledObject ( )
virtual

Run any necessary update logic for the pooled object, such as checking if it should be returned to its pool.

Implements ImpactCFX.Pooling.IPoolable.

Reimplemented in ImpactCFX.Audio.ImpactAudioSourceBase, ImpactCFX.Decals.ImpactDecalBase, and ImpactCFX.Particles.ImpactParticlesBase.

Property Documentation

◆ ContactPointID

long ImpactCFX.PooledEffectObjectBase.ContactPointID
getprotected set

The contact point ID associated with this object.

Implements ImpactCFX.Pooling.IPoolable.

◆ LastRetrievedFrame

int ImpactCFX.PooledEffectObjectBase.LastRetrievedFrame
getprotected set

The last frame at which this object was retrieved.

Implements ImpactCFX.Pooling.IPoolable.

◆ NeedsUpdate

bool ImpactCFX.PooledEffectObjectBase.NeedsUpdate
getprotected set

Does this object need to be updated?

Implements ImpactCFX.Pooling.IPoolable.

◆ Priority

float ImpactCFX.PooledEffectObjectBase.Priority
getprotected set

The current priority of the object.

Implements ImpactCFX.Pooling.IPoolable.