enderalse/source/scripts/_fs_theriantrophist_affinitycontrol.psc

48 lines
1.3 KiB
Plaintext

Scriptname _FS_Theriantrophist_AffinityControl extends Quest
_00E_FS_Affinity_DruidSC affinityDruidEventListener
_00E_FS_Affinity_BruteSC affinityBruteEventListener
_00E_FS_Affinity_NightwolfSC affinityNightwolfEventListener
Function RegisterForDruidAffinityEvents(_00E_FS_Affinity_DruidSC listener)
affinityDruidEventListener = listener
EndFunction
Function UnRegisterForDruidAffinityEvents()
affinityDruidEventListener = None
EndFunction
Function RegisterForBruteAffinityEvents(_00E_FS_Affinity_BruteSC listener)
affinityBruteEventListener = listener
EndFunction
Function UnRegisterForBruteAffinityEvents()
affinityBruteEventListener = None
EndFunction
Function RegisterForNightwolfAffinityEvents(_00E_FS_Affinity_NightwolfSC listener)
affinityNightwolfEventListener = listener
EndFunction
Function UnRegisterForNightwolfAffinityEvents()
affinityNightwolfEventListener = None
EndFunction
Function OnTransform(bool toWolf)
if (toWolf && affinityDruidEventListener)
affinityDruidEventListener.OnTransformToWolf()
Endif
EndFunction
Function OnWolfCombatHit(Actor target)
if (affinityBruteEventListener)
affinityBruteEventListener.OnWolfCombatHit(target)
EndIf
EndFunction
Function OnSneak(bool sneakStart)
if (sneakStart && affinityNightwolfEventListener)
affinityNightwolfEventListener.OnSneakStart()
EndIf
EndFunction