Working Shadow Dancer: if a weak enemy is killed under the Psychosis effect, it's reanimated to fight on player's side for 60 seconds
This commit is contained in:
parent
b13efe44df
commit
7843a8b161
BIN
Shadow Dancer fix.esp
Normal file
BIN
Shadow Dancer fix.esp
Normal file
Binary file not shown.
BIN
scripts/_00E_ShadowDancerReviveEffect.pex
Normal file
BIN
scripts/_00E_ShadowDancerReviveEffect.pex
Normal file
Binary file not shown.
42
source/scripts/_00E_ShadowDancerReviveEffect.psc
Normal file
42
source/scripts/_00E_ShadowDancerReviveEffect.psc
Normal file
@ -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
|
Loading…
Reference in New Issue
Block a user