Scriptname RenCrimeDogEffectScript extends ActiveMagicEffect

import Actor
import Utility

bool detectedplayer

RenCrimeSMCGQuestScript Property RenMainScript Auto

Topic Property DogBark  Auto

Quest Property DogDialogueQuest Auto

Form Property DogDialogFormID Auto

float saytimer
float prevsaytimer

bool artloaded = true

Actor targetactor
Actor PlayerRef

Idle Property DogBarkTalk Auto

Event OnEffectStart(Actor akTarget, Actor akCaster)
	
	targetactor = akTarget
	RegisterForSingleUpdate(1.0)
	
EndEvent

Event OnUnload()

	artloaded = false

EndEvent

Event OnLoad()

	artloaded = true

EndEvent

Event OnUpdate()

	if (artloaded == false)
		RegisterForSingleUpdate(1.0)
		return		
	endif

	if (PlayerRef == none)
		PlayerRef = Game.GetPlayer()
	endif
	
	if (targetactor == none)
		targetactor = GetTargetActor()
		RegisterForSingleUpdate(0.5)
		return
	endif
	
	if (PlayerRef.IsDetectedBy(targetactor) && PlayerRef.IsSneaking() && targetactor.GetCombatTarget() == none)
		
		saytimer = saytimer + (Utility.GetCurrentRealTime() - prevsaytimer)
		
		if (saytimer >= 5)
			targetactor.PlayIdle(DogBarkTalk)
			targetactor.CreateDetectionEvent(PlayerRef, 50)
			saytimer = 0
		endif
	else
		saytimer = 0
	endif

	prevsaytimer = Utility.GetCurrentRealTime()
	
	RegisterForSingleUpdate(1.0)
	
EndEvent
