afxMagicSpellData
Defines the properties of an afxMagicSpell.
Casting Stage
float
...
int
...
float
...
Delivery Stage
float
...
int
...
float
Linger Stage
float
...
int
...
float
...
Callbacks
void
onDamage(afxMagicSpell spell, string label, string flaver, uint target_id, float amount, U8 n, Point3F pos, float ad_amount, float radius, float impulse)
Called when the spell deals damage.
void
onDeactivate(afxMagicSpell spell)
Called when the spell ends naturally.
void
onInterrupt(afxMagicSpell spell, ShapeBase caster)
Called when the spell ends unnaturally due to an interruption.
void
onLaunch(afxMagicSpell spell, ShapeBase caster, SceneObject target, afxMagicMissile missile)
Called when the spell's casting stage ends and the delivery stage begins.
void
onImpact(afxMagicSpell spell, ShapeBase caster, SceneObject impacted, Point3F pos, Point3F normal)
Called at the spell's missile impact marking the end of the deliver stage and the start of the linger stage.
bool
onPreactivate(SimObject param_holder, ShapeBase caster, SceneObject target, SimObject extra)
Called during spell casting before spell instance is fully created.
void
onActivate(afxMagicSpell spell, ShapeBase caster, SceneObject target)
Called when the spell starts.
Public Attributes
bool
bool
float
int
Public Functions
void
pushCastingEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's casting phase.
void
pushDeliveryEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's delivery phase.
void
pushImpactEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's impact phase.
void
pushLaunchEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's launch phase.
void
pushLingerEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's linger phase.
void
reset()
Resets a spell datablock during reload.
Detailed Description
Defines the properties of an afxMagicSpell.
Casting Stage
float castingDur
...
int numCastingLoops
...
float extraCastingTime
...
afxEffectBaseData addCastingEffect
...
Delivery Stage
float deliveryDur
...
int numDeliveryLoops
...
float extraDeliveryTime
...
afxEffectBaseData addLaunchEffect
...
afxEffectBaseData addDeliveryEffect
...
Linger Stage
float lingerDur
...
int numLingerLoops
...
float extraLingerTime
...
afxEffectBaseData addImpactEffect
...
afxEffectBaseData addLingerEffect
...
Callbacks
onDamage(afxMagicSpell spell, string label, string flaver, uint target_id, float amount, U8 n, Point3F pos, float ad_amount, float radius, float impulse)
Called when the spell deals damage.
Parameters:
spell | the spell object |
onDeactivate(afxMagicSpell spell)
Called when the spell ends naturally.
Parameters:
spell | the spell object |
onInterrupt(afxMagicSpell spell, ShapeBase caster)
Called when the spell ends unnaturally due to an interruption.
Parameters:
spell | the spell object |
onLaunch(afxMagicSpell spell, ShapeBase caster, SceneObject target, afxMagicMissile missile)
Called when the spell's casting stage ends and the delivery stage begins.
Parameters:
spell | the spell object |
onImpact(afxMagicSpell spell, ShapeBase caster, SceneObject impacted, Point3F pos, Point3F normal)
Called at the spell's missile impact marking the end of the deliver stage and the start of the linger stage.
Parameters:
spell | the spell object |
onPreactivate(SimObject param_holder, ShapeBase caster, SceneObject target, SimObject extra)
Called during spell casting before spell instance is fully created.
onActivate(afxMagicSpell spell, ShapeBase caster, SceneObject target)
Called when the spell starts.
Parameters:
spell | the spell object |
Public Attributes
bool allowMovementInterrupts
...
bool launchOnServerSignal
...
afxMagicMissileData missile
...
float movementInterruptSpeed
...
int primaryTargetTypes
...
Public Functions
pushCastingEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's casting phase.
pushDeliveryEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's delivery phase.
pushImpactEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's impact phase.
pushLaunchEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's launch phase.
pushLingerEffect(afxEffectBaseData effect)
Adds an effect (wrapper or group) to a spell's linger phase.
reset()
Resets a spell datablock during reload.