Difference between revisions of "InterruptCast - ObjectReference"
Jump to navigation
Jump to search
imported>Jlundin (Created page with 'Category:Scripting Category:Papyrus '''Member of:''' ObjectReference Script Interrupts and stops any spell-casting this object might be doing. == Syntax == <source …') |
imported>Cipscis (Cleaned up larger example a bit, mainly removing lines that didn't do anything, and trying to make the script do what I've guessed it's intended to do) |
||
(4 intermediate revisions by one other user not shown) | |||
Line 20: | Line 20: | ||
; Stop this flame trap from casting | ; Stop this flame trap from casting | ||
FlameTrap.InterruptCast() | FlameTrap.InterruptCast() | ||
</source><br> | |||
<source lang="papyrus">;This example script extends ActiveMagicEffect | |||
float Property max auto | |||
Event OnEffectStart(Actor akTarget, Actor akCaster) | |||
; Let's say you want to restore your health through a script. | |||
If (Game.GetPlayer() == akTarget) | |||
If (akTarget.GetActorValuePercentage("health") >= max) | |||
akTarget.InterruptCast() | |||
Debug.Notification("You cannot cast this spell at this time") | |||
; Because your health is at 100% (represented by 1.0) this casting will be interrupted until the condition is met. | |||
ElseIf (akTarget.GetActorValuePercentage("health") <= max) | |||
akTarget.RestoreAV("health", 300) | |||
EndIf | |||
EndIf | |||
EndEvent | |||
</source> | </source> | ||
Latest revision as of 21:33, 28 February 2012
Member of: ObjectReference Script
Interrupts and stops any spell-casting this object might be doing.
Syntax[edit | edit source]
Function InterruptCast() native
Parameters[edit | edit source]
None.
Return Value[edit | edit source]
None.
Examples[edit | edit source]
; Stop this flame trap from casting
FlameTrap.InterruptCast()
;This example script extends ActiveMagicEffect
float Property max auto
Event OnEffectStart(Actor akTarget, Actor akCaster)
; Let's say you want to restore your health through a script.
If (Game.GetPlayer() == akTarget)
If (akTarget.GetActorValuePercentage("health") >= max)
akTarget.InterruptCast()
Debug.Notification("You cannot cast this spell at this time")
; Because your health is at 100% (represented by 1.0) this casting will be interrupted until the condition is met.
ElseIf (akTarget.GetActorValuePercentage("health") <= max)
akTarget.RestoreAV("health", 300)
EndIf
EndIf
EndEvent