diff --git a/Shadow Dancer fix.esp b/Shadow Dancer fix.esp new file mode 100644 index 00000000..31fd651a Binary files /dev/null and b/Shadow Dancer fix.esp differ diff --git a/scripts/_00E_ShadowDancerReviveEffect.pex b/scripts/_00E_ShadowDancerReviveEffect.pex new file mode 100644 index 00000000..0159e98e Binary files /dev/null and b/scripts/_00E_ShadowDancerReviveEffect.pex differ diff --git a/source/scripts/_00E_ShadowDancerReviveEffect.psc b/source/scripts/_00E_ShadowDancerReviveEffect.psc new file mode 100644 index 00000000..2a812ac8 --- /dev/null +++ b/source/scripts/_00E_ShadowDancerReviveEffect.psc @@ -0,0 +1,42 @@ +Scriptname _00E_ShadowDancerReviveEffect extends ObjectReference + +auto state Init + + event OnContainerChanged(ObjectReference akNewContainer, ObjectReference akOldContainer) + + GotoState("DoNothing") + + if ! akNewContainer + Disable() + Delete() + return + endif + + akNewContainer.RemoveItem(_00E_SE_ShadowDancerTokenItem, akNewContainer.GetItemCount(_00E_SE_ShadowDancerTokenItem), true) + + Actor aTarget = akNewContainer as Actor + + if ! aTarget || aTarget == PlayerRef + return + endif + + Utility.wait(2.2) + + _00E_SE_ShadowDancerReviveSpell.Cast(PlayerRef, aTarget) + aTarget.SetActorValue("Variable05", 77) + aTarget.SetActorValue("Aggression", 0) + aTarget.SetRelationshipRank(PlayerRef, 3) + + endevent + +endstate + +state DoNothing + +endstate + +Spell Property _00E_SE_ShadowDancerReviveSpell Auto + +Actor Property PlayerRef Auto + +MiscObject Property _00E_SE_ShadowDancerTokenItem Auto