Skip to content

TimedEffectState

Inherits object

Public Member Functions

IEnumerator

Start()

Runs the timed thread and starts the execution of the effect. An enumerator that advances the start routine until completion.

IEnumerator

Pause()

Pauses the current timed effect. An enumerator that advances the pause routine until completion.

IEnumerator

Resume()

Unpauses the current timed effect. An enumerator that advances the resume routine until completion.

IEnumerator

Stop()

Stops the current timed effect early. An enumerator that advances the stop routine until completion. This should not be called unless the effect terminates prematurely.

IEnumerator

Tick(SITimeSpan deltaTime)

Advances the time of the current timed effect and executes the effect. An enumerator that either represents the next operation or an empty enumerator when no transition occurs.

Private Functions

bool

TryGetLock()

Attempts to acquire the state lock used to synchronize enumerator transitions.

void

ReleaseLock()

Releases the previously acquired state lock.

Public Attributes

EffectRequest

Request

Gets the original effect request associated with this timed effect instance.

SITimeSpan

Duration

Gets the total duration this timed effect should run.

IEffect

Effect

Gets the effect instance being executed.

SITimeSpan

TimeRemaining

Gets or sets the time remaining for this effect.

Private Attributes

int

m_stateLock

IEnumerator

EMPTY_ENUMERATOR

Properties

CrowdControl

CrowdControl

[get, ]

Gets the owning CrowdControl instance.

EffectState

State

[get, set]

Gets the current state of the effect.