Scriptname _00E_MQ13c_FailsaveSC extends ObjectReference ;===================================================================================== ; EVENTS ;===================================================================================== Event OnTriggerEnter(ObjectReference akActionRef) If !bDone && akActionRef == PlayerREF If bYaela PortToPlayerIfNotNearby(MQ13c._00E_MC_YaelaREF) EndIf If bRomance PortToPlayerIfNotNearby(MQ13c.akCompanionRomance) EndIf If bKurmai PortToPlayerIfNotNearby(MQ13c._00E_SC_KurmaiREF) EndIf If bNoRomance PortToPlayerIfNotNearby(MQ13c.akCompanionNoRomance) EndIf EndIf EndEvent Event OnUpdate() If bRomance && !PlayerREF.HasLOS(MQ13c.akCompanionRomance) MQ13c.akCompanionRomance.MoveTo(PlayerREF) bDone = True ElseIf bNoRomance && !PlayerREF.HasLOS(MQ13c.akCompanionNoRomance) MQ13c.akCompanionNoRomance.MoveTo(PlayerREF) ElseIf bKurmai && !PlayerREF.HasLOS(MQ13c._00E_SC_KurmaiREF) MQ13c._00E_SC_KurmaiREF.MoveTo(PlayerREF) ElseIf bYaela && !PlayerREF.HasLOS(MQ13c._00E_MC_YaelaREF) MQ13c._00E_MC_YaelaREF.MoveTo(PlayerREF) Else RegisterForSingleUpdate(1) EndIf EndEvent ;===================================================================================== ; FUNCTIONS ;===================================================================================== Function PortToPlayerIfNotNearby(Actor akPortTarget) If !__Config_bDistanceCheck akPortTarget.MoveTo(PlayerREF) bDone = True Else If !PlayerREF.HasLOS(akPortTarget) akPortTarget.MoveTo(PlayerREF) bDone = True Else RegisterForSingleUpdate(1) EndIf EndIf EndFunction ;===================================================================================== ; PROPERTIES ;===================================================================================== bool bDone bool Property bYaela Auto bool Property bKurmai Auto bool Property bRomance Auto bool Property bNoRomance Auto bool Property __Config_bDistanceCheck = False Auto bool Property __Config_bResetAI = False Auto float Property __Config_fPortingDistance = 650.0 Auto {If distance-check is true, when should the NPC be ported to the player?} _00E_MQ13c_Functions Property MQ13c Auto Actor Property PlayerREF Auto