Difference between revisions of "InterruptCast - ObjectReference"

From the CreationKit Wiki
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

See Also[edit | edit source]