Scriptname _00E_NQ12Functions extends Quest  

;=====================================================================================
;              							EVENTS                  					 
;=====================================================================================

Event OnUpdate()

	If !Sila.IsInCombat()
		Sila.StartCombat(Game.GetPlayer())
	EndIf

EndEvent

;=====================================================================================
;              							FUNCTIONS                  					 
;=====================================================================================

Function SetUpNQ12Scene()

    MilbertRef.DisableNoWait()
    Sila.DisableNoWait()
	NQ12Blood.Enable()
	
EndFunction

Function EnableTriggerBox()

	NQ12TriggerArkLoc01.Enable()
	
EndFunction

Function EnablePainting()

	NQ12_SilaPaintingREF.Enable()

EndFunction

Function ShowThoughtMessage()

	SetObjectiveCompleted(20)
	Message.ResetHelpMessage("Empty")
	_00E_NQ12_Message01.ShowAsHelpMessage("Empty", 4, 0, 1)

EndFunction

Function ShowMessage()

	SetStage(40)
	SetObjectiveDisplayed(40)
	NQ12VerloreneDisableMarker.disable()
    MilbertRef.DisableNoWait()
	MilbertRef.MoveTo(NQ12SeehaimMilbertMarker)
    MilbertRef.EnableNoWait()
    Sila.DisableNoWait()
	Sila.MoveTo(NQ12SeehaimSilaMarker)
    Sila.EnableNoWait()
	NQ11_SC1.ForceStart()
		
EndFunction

Function InitiateCombat()

	NQ11_SC2Combat.ForceStart()
	SilaBase.SetEssential(0)
	Actor SilaActor = Sila as Actor
	SilaActor.StartCombat(Game.GetPlayer())
	Sila.AddItem(_00E_NQ12CageKey, 1)
	NQ12Blood.Disable()
	RegisterForSingleUpdate(3)
	
EndFunction

Function InitiateMilbertsDeath()

	NQ12Door.Lock(0)
	NQ12_SC3MilbertDeath.ForceStart()
	NQ12Blood.Disable()
	
EndFunction


Function KillMilbert()

	Actor SilaActor = Sila as Actor
	Actor MilbertActor = MilbertRef as Actor
	SilaActor.PlayIdleWithTarget(KillMove, MilbertActor)
	MilbertBase.SetEssential(0)
	MilbertActor.SetGhost(0)
	MilbertActor.KillEssential(SilaActor)
	MilbertActor.Kill(SilaActor)
	NQ12Blood.Disable()
	
EndFunction

;=====================================================================================
;              							PROPERTIES                  					 
;=====================================================================================

Actor Property Sila Auto
Actor Property MilbertRef Auto

ObjectReference Property NQ12Door Auto
ObjectReference Property NQ12TriggerArkLoc01 AUto
ObjectReference Property NQ12SeehaimMilbertMarker Auto
ObjectReference Property NQ12SeehaimSilaMarker Auto
ObjectReference Property NQ12VerloreneDisableMarker Auto
ObjectReference Property NQ12_SilaPaintingREF Auto
ObjectReference Property NQ12Blood Auto

ActorBase Property SilaBase Auto
ActorBase Property MilbertBase Auto

Scene Property NQ11_SC1 Auto
Scene Property NQ11_SC2Combat Auto
Scene Property NQ12_SC3MilbertDeath Auto

Message Property _00E_NQ12_Message01 Auto

Key Property _00E_NQ12CageKey Auto

Idle Property KillMove Auto