Skip to content

IEffect

Inherits object

Public Member Functions

EffectResponse

Start(EffectRequest request)

Starts an effect in response to an effect request. An EffectResponse indicating the result of the operation.

EffectResponse?

Tick(EffectRequest request)

Performs an update tick for a timed effect. An optional EffectResponse; if null, no response is sent on this tick.

EffectResponse?

Pause(EffectRequest request)

Pauses a timed effect. An optional EffectResponse describing the pause result.

EffectResponse?

Resume(EffectRequest request)

Resumes a paused timed effect. An optional EffectResponse describing the resume result.

EffectResponse?

Stop(EffectRequest request)

Stops a running timed effect. An optional EffectResponse describing the stop result.

JObject

ToJObject()

Converts this effect instance into a serializable object. A JObject representing the effect instance.

Properties

string

EffectID

[get, ]

Gets the primary effect ID associated with this effect, which is used to match incoming requests.

IReadOnlyList

IDs

[get, ]

Gets the IDs associated with the effect.

SITimeSpan

DefaultDuration

[get, ]

Gets the default duration of the effect, if applicable. A value of SITimeSpan.Zero indicates an instant effect.

ParameterList?

Parameters

[get, ]

Gets the collection of parameter types associated with this instance.

uint

MaxQuantity

[get, ]

Gets the maximum allowed quantity for this effect, if applicable. A value of 1 or less indicates a non-quantity effect.

IReadOnlyList

Conflicts

[get, ]

Gets all conflicting effect IDs, if applicable. When present, these effects should not run concurrently.

bool

IsTimed

[get, ]

Gets a value indicating whether the effect is time-based and should receive tick/pause/resume/stop calls.

bool

IsCustom

[get, ]

Gets a value indicating whether the effect is custom and needs to be loaded dynamically.

CrowdControl

CrowdControl

[get, ]

Gets the Crowd Control host that owns this effect.