enderalse/source/scripts/_00e_a2_starlingdummydebuffsc.psc

58 lines
1.8 KiB
Plaintext
Raw Normal View History

Scriptname _00E_A2_StarlingdummyDebuffSC extends activemagiceffect
;=====================================================================================
; EVENTS
;=====================================================================================
Event OnEffectStart(Actor akTarget, Actor akCaster)
_00E_Ability_StaggerSelfSpell.Cast(akTarget, akTarget)
SelfActor = akTarget
UpdateHealth(SelfActor)
EndEvent
Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked)
iDamage = Health - SelfActor.GetActorValue("Health")
UpdateHealth(SelfActor)
if (iDamage > 0)
AugmentDamage()
EndIf
EndEvent
;=====================================================================================
; FUNCTIONS
;=====================================================================================
Function AugmentDamage()
Float iDamageToDeal = iDamage*((_00E_A2_StarlingdummyDebuffEnch.GetNthEffectMagnitude(0))/100)
_00E_A2_StarlingdummyPoisonSP.SetNtheffectMagnitude(0, iDamageToDeal)
_00E_A2_StarlingdummyPoisonSP.RemoteCast(SelfActor, Game.GetPlayer(), SelfActor)
EndFunction
Function UpdateHealth(Actor HealthActor)
Health = HealthActor.GetActorValue("Health")
EndFunction
;=====================================================================================
; PROPERTIES
;=====================================================================================
Actor SelfActor
float Health
float iDamage
Enchantment Property _00E_A2_StarlingdummyDebuffEnch Auto
Spell Property _00E_A2_StarlingdummyPoisonSP Auto
Spell Property _00E_Ability_StaggerSelfSpell Auto