Difference between revisions of "ScriptEffectUpdate"
imported>ShadowDancer (adding note) |
imported>ShadowDancer (updating note with new info) |
||
Line 5: | Line 5: | ||
'''Note:''' | '''Note:''' | ||
* | * When the '''ScriptEffectUpdate''' block is placed before the '''ScriptEffectFinish''' block, it ''<u>will</u>'' be processed before the '''ScriptEffectFinish''' block in the script as the spell ends. In this instance, if there is an active '''Return''' statement in '''ScriptEffectUpdate''', then the '''ScriptEffectFinish''' block will never run. | ||
Revision as of 00:19, 25 August 2007
Usage
begin ScriptEffectUpdate
Special block type used only by Magic Effect scripts. This block will start running on the first iteration of a scripted spell effect and run each time the spell is updated until the spell ends.
Note:
- When the ScriptEffectUpdate block is placed before the ScriptEffectFinish block, it will be processed before the ScriptEffectFinish block in the script as the spell ends. In this instance, if there is an active Return statement in ScriptEffectUpdate, then the ScriptEffectFinish block will never run.
Constant Enchantments
Unfortunately, this block won't fire when used as a scripted effect for constant (apparel) enchantments. If you need a constant enchantment, you can use two scripts to accomplish the effect. Put one script on the item to have the enchantment and use the OnEquip and OnUnEquip blocks to add and remove an ability. The script will look like this:
scriptname MyCoolConstantEnchScript ref Wearer Begin OnEquip set Wearer to GetContainer Wearer.AddSpell MyCoolConstantEnchAbility End Begin OnUnEquip set Wearer to GetContainer Wearer.RemoveSpell MyCoolConstantEnchAbility End
Then, you create the ability and give it a scripted effect. Use the ScriptEffectUpdate block in the script to run the scripted enchantment that you wanted for the item. Remember to code for speed, as this block will be run every frame as long as the player is near.