Scriptname _00E_MQ13c_Functions extends Quest Conditional

Import _00E_QuestFunctions
Import Utility
Import Game

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

Function SetUp()

	GetRomance()

	akYaela = _00E_MC_YaelaREF
	akKurmai = _00E_SC_KurmaiREF
	MQ13b_NexusDoor.BlockActivation(True)
	akKurmai.Enable()
	akYaela.Enable()
	akCompanionRomance.Enable()
	
EndFunction

Function GetRomance()

	If CaliaRomance.GetValueInt() == 1
		akCompanionRomance = _00E_MC_CaliaREF
		akCompanionNoRomance = _00E_MC_JesparREF
	Elseif JesparRomance.GetValueInt() == 1
		akCompanionRomance = _00E_MC_JesparREF
		akCompanionNoRomance = _00E_MC_CaliaREF
	Else
		If SympathyJespar.GetValueInt() > SympathyCalia.GetValueInt() 
			bNoRomance = True
			akCompanionRomance = _00E_MC_JesparREF
			akCompanionNoRomance = _00E_MC_CaliaREF
		Else
			akCompanionRomance = _00E_MC_CaliaREF
			akCompanionNoRomance = _00E_MC_JesparREF
		Endif	
	EndIf
	
	refAliasCompanionRomance.ForceRefTo(akCompanionRomance)
	refAliasCompanionNoRomance.ForceRefTo(akCompanionNoRomance)
	
	Return
	
EndFunction

Function MoveElevatorUp()

	akYaela.UnequipItem(Torch01Intense)
	PlayerREF.UnequipItem(Torch01Intense, False, True)
	PlayerREF.RemoveItem(Torch01Intense, 1, False)
	Debug.SendAnimationEvent(akYaela, "IdleForceDefaultState")
    if akCompanionRomance.GetDistance(MQ13c_SC01_CaliaTranslateToMarker001) > 200
        ; Failsave for the case the companion stands far away from the
        ; center of the lift. (Side-effect of
        ; http://sureai.net:9898/browse/ERB-1325 .)
        akCompanionRomance.MoveTo(MQ13c_SC01_CaliaTranslateToMarker001)
        Wait(3)
    endif
    Levelsystem.SkipTimeToHour(10.5)
	fTimescaleBefore = Timescale.GetValue()
	_00E_Music_Special_Zyklus_OneSelection.Remove()
	_00E_SilenceAbruptHighPriority.Add()
	_00E_MQ13b_SC10_NexusFadeHOLD.ApplyCrossFade(4)
	MQ13b_SC10_NexusLift002.TranslateToRef(MQ13c_SC01_NexusLiftOriginMarker, 95)
	iNexusLiftSound = DRSStoneRotatingDiscLPM.Play(MQ13b_SC10_NexusLift002)
	bNexusLiftInMotion = True
	MQ13b_SC11_ShutterREF.TranslateToRef(MQ13c_SC01_ShaftOriginRef, 300.0, 300.0)
	_00E_MQ13b_SC10_NexusFadeBack.ApplyCrossFade(7)
	Game.ShakeCamera(afStrength = 0.1, afDuration = 15)
		
EndFunction

Function NexusElevatorStop()
	
	_00E_MQ13b_SC10_NexusFadeBack.Remove()
	_00E_MQ13b_SC10_NexusFadeHOLD.Remove()
	ImageSpaceModifier.RemoveCrossFade()
	Sound.StopInstance(iNexusLiftSound)
	ShakeCamera(afStrength = 0.5)
	PlayerREF.StopTranslation()
	akCompanionRomance.StopTranslation()
	bNexusLiftInMotion = False
	bLiftHasArrived = True
	
	If akYaela.GetDistance(MQ13c_SC01_YaelaTranslateMarker) > 200
		akYaela.MoveTo(MQ13c_SC01_YaelaTranslateMarker)
	EndIf
	
	If akCompanionRomance.GetDistance(MQ13c_SC01_CaliaTranslateToMarker) > 200
		akCompanionRomance.MoveTo(MQ13c_SC01_CaliaTranslateToMarker)
	EndIf
	
	PlayerAIWalkStop()
	
EndFunction

Function StartSC02()

	Debug.SetGodMode(0)
	akSteelbird = MQ13c_SC03_SteelbirdREF as Actor
	akSteelbird.Enable()
	akSteelbird.SetGhost(True)
	akYaela.MoveTo(MQ13c_SC01_YaelaTranslateMarker)
	akCompanionRomance.MoveTo(MQ13c_SC01_CaliaTranslateToMarker)
	
	akKurmai.MoveTo(MQ13c_SC02_KurmaiSpawnMarker)
	akKurmai.EquipItem(_03E_21_Sternlingsstreitkolben, true, true)
	MQ13c_SC02_KurmaiReappears.ForceStart()
	
EndFunction

Function StartSC03()

	akYaela.EquipItem(_04E_StabDerErdrung, 1, true)
	Levelsystem.RemoveSilence()
	_00E_SilenceAbruptHighPriority.Remove()
	_00E_Music_Combat_Epic.Add()
	akYaela.MoveTo(MQ13c_SC01_YaelaTranslateMarker)
	akCompanionRomance.MoveTo(MQ13c_SC01_CaliaTranslateToMarker)

	akSteelbird = MQ13c_SC03_SteelbirdREF as Actor
	akSteelbird.Enable()
	_00E_MQ04_CrystalExpImpactEXP.Apply()
	_00E_MQ04_CrystalTouch.Play(PlayerREF)
	akCompanionRomance.SetGhost(False)
	akKurmai.SetGhost(False)
	akKurmai.GetActorBase().SetEssential(False)
	_00E_Ability_StaggerSelfSpell.Cast(akYaela)
	_00E_Ability_StaggerSelfSpell.Cast(akCompanionRomance)
	_00E_Ability_StaggerSelfSpell.Cast(akKurmai)
	akCompanionRomance.SetGhost(True)
	JesparNoCombatComments.SetValueInt(1)
	akYaela.SetGhost(True)
	ShakeCamera()
	Wait(1)
	
	MQ13c_SC03_SteelbirdAttack.ForceStart()

EndFunction

Function SC03_BringSteelbirdToNexus()

    ; Move the Steelbird to the Nexus hall if he is away.
    
    ; Failsave for http://sureai.net:9898/browse/ERB-2253 .
    if akSteelbird.getDistance(MQ13c_SC02_KurmaiSpawnMarker) > 8000
        akSteelbird.moveTo(MQ13c_SC02_KurmaiSpawnMarker)
        ; This is of course not exactly where the Steelbird
        ; is supposed to be (it should be the DragonPerchTower,
        ; which is not a property), but it's close enough for
        ; the AI to pick up from here (I believe).
    endif
    
EndFunction

Function HoldTheDoor()

    ; Lock the door to the Atrium once everyone is inside. Makes the
    ; Steelbird banging on the door a tad more realistic.
    ; This fixes http://sureai.net:9898/browse/ERB-1230 .

	while (_00E_MC_JesparREF.GetParentCell() != MQ13cAtrium) || (_00E_MC_CaliaREF.GetParentCell() != MQ13cAtrium) || (PlayerREF.GetParentCell() != MQ13cAtrium)
        Utility.Wait(1)
    endwhile
    MQ13c_SC08_DoorREF.SetLockLevel(255)
    MQ13c_SC08_DoorREF.Lock(True)

EndFunction

Function SteelDragonRoar()

	_00E_MQ13c_Steelbird_RoarSingleM.Play(PlayerREF)

EndFunction

Function KillKurmai()
	
	akKurmai.SetGhost(False)
	akKurmai.GetActorBase().SetEssential(False)
	akKurmai.KillEssential(akKurmai)
	
	if !akKurmai.IsDead()
		akKurmai.KillEssential(akKurmai)
	EndIf
	
EndFunction

Function DragonIdle()

	If !NQ01.IsCompleted()
		NQ01.FailAllObjectives()
		NQ01.SetStage(35)
	EndIf
	
	MQ13c_SC03_CollisionPlane.Enable()
	akSteelbird.PlayIdle(Dragon_PerchRoar)
	_00E_MQ13c_Steelbird_RoarM.Play(PlayerREF)
	akKurmai.GetActorBase().SetEssential(False)
	akKurmai.SetGhost(False)
	
EndFunction

Function SpawnBarrier()
	
	MQ13c_SC03_FailsaveBox.Enable()
	akYaela.PlaceAtMe(_00E_A2_RiftExplosion)
	MQ13c_SC03_YaelaBarrier.PlayAnimation("PlayAnim02")
	_00E_MAGEldritchCharge_050M.Play(MQ13c_SC03_YaelaBarrier)
	iBarrierSound = QSTDA16MagicBarrierLPM.Play(MQ13c_SC03_YaelaBarrier)
	
EndFunction

Function OpenDoor()

	MQ13c_SC04_CollMarkerREF.Enable()
	MQ13c_SC03_MuratteParent.Disable()
	MQ13b_NexusDoor.BlockActivation(False)

EndFunction

Function PlayYaelaDeathSound()

	_00E_MQ13c_YaleaDeathM.Play(PlayerREF)

EndFunction

Function StartSC04()
	
	RequestAutoSave()
	MQ13c_SC04_CenturionREF.Enable()
	MQ13c_SC01_KillBoxREF.Enable()
    MQ13c_SC03_SteelbirdREF.StopCombat()
	akCompanionRomance.StopCombat()
	akCompanionRomance.StopCombatAlarm()
	akCompanionRomance.SheatheWeapon()
	
	if akCompanionRomance.GetDistance(PlayerREF) >= 200
		akCompanionRomance.MoveTo(MQ13c_SC04_CompMarker)
	EndIf

	MQ13c_SC04_CenturionAttack.ForceStart()
	
	_00E_QuestFunctions.SetNPCAsCompanion(akCompanionRomance, True, 600, 700, 200)
		
	MQ13c_SC04_PullChainREF.Activate(akCompanionRomance)	
	
EndFunction

Function EnterCombat()

    MQ13c_SC03_SteelbirdREF.StopCombat()
	MQ13c_SC04_DeadMurat.Enable()
	MQ13c_SC04_SpiderParent.Enable()
	
	; Activate all spiders to get them released into the room
	Form[] enemies = MQ13c_Nexushall_Spiders.ToArray()
	Int index = 0
	While index < enemies.Length
		Actor enemy = enemies[index] as Actor
		if enemy != MQ13c_SC04_CenturionREF
			enemy.Activate(akCompanionRomance)
		EndIf
		index += 1
	EndWhile

	MQ13c_SC04_CenturionREF.StartCombat(akCompanionRomance)
	akCompanionRomance.StartCombat(MQ13c_SC04_CenturionREF)

EndFunction

Function DisableBlockade()

	MQ13c_SC04_CollMarkerREF.Disable()
	MQ13c_SC04_CollMarkerREF001.Enable()
	
EndFunction

Function KillEnemies()

	int iIndex = MQ13c_Nexushall_Spiders.GetSize()
	
	while iIndex > 0
		iIndex -= 1
		Actor akActorToKill = MQ13c_Nexushall_Spiders.GetAt(iIndex) as Actor
		akActorToKill.Kill(PlayerREF)
	endwhile
	
EndFunction

Function CompanionCombatFailsave()

	if akCompanionRomance.IsInCombat()
		akCompanionRomance.StopCombat()
		akCompanionRomance.StopCombatAlarm()
	EndIf

EndFunction

Function RemoveCombatMusic()

	JesparNoCombatComments.SetValueInt(0)
	_00E_Music_Combat_Epic.Remove()

EndFunction

Function ActivateBlockade()
	
	RequestAutoSave()

	MQ13c_SC04_Lever.Enable()
	
	if bCompanionInLiftZone
		akCompanionRomance.MoveTo(PlayerREF)
	EndIf
	
	MQ13c_SC04_PressurePlate.Activate(MQ13c_SC04_PressurePlate)
	MQ13c_SC04_BarrierREF.TranslateToRef(MQ13c_SC04_BarrierTranslateMarker, 300.0)
	
	while !MQ13c_SC05_Botanicum.IsPlaying()
		MQ13c_SC04_PressurePlate.Activate(MQ13c_SC04_PressurePlate)
		Wait(0.75)
	EndWhile
	
EndFunction

Function PlayImpact()

	ShakeCamera(afStrength = 0.15)

EndFunction

Function StartSC05()

	MQ13c_SC05_Botanicum.ForceStart()

EndFunction

Function OpenSecretDoor()
	
	MQ13c_SC04_SecretDoorREF.Activate(MQ13c_SC04_SecretDoorREF)
	MQ13c_SC04_MoveableWallREF.TranslateTo(MQ13c_SC04_MoveableWallREF.GetPositionX(), MQ13c_SC04_MoveableWallREF.GetPositionY(), MQ13c_SC04_MoveableWallREF.GetPositionZ() - 250.0, -09.0280, 0.0, 270.0073, 100.0)
	StartSC05()
	SetUpDebris()
	
EndFunction

Function SunlightFailsave()

	_00E_MQ13b_SC10_NexusFadeBack.Remove()
	_00E_MQ13b_SC10_NexusFadeHOLD.Remove()
	ImageSpaceModifier.RemoveCrossFade()

	_00E_QuestFunctions.SetNPCAsCompanion(akCompanionRomance, True)

EndFunction

Function SetUpDebris()

	_00E_MQ07a_YoungMageREF.MoveTo(_00E_NPCDumpMarker)
	akCompanionNoRomance.MoveTo(_00E_NPCDumpMarker)
	MQ13b_StarshipREF002.Disable()
	MQ13b_StarshipREF003.Disable()
	MQ13c_SC05_PropMarker.Enable()
		
EndFunction

Function StartSC06()

	MQ13c_SC06_FailsaveREF.Enable()

	MQ13c_SC06_TravelToGearTower.ForceStart()

EndFunction

Function OpenCage01()

	_00E_QuestFunctions.SetNPCAsCompanion(akCompanionRomance, True, 600, 700, 200)
	
	MQ13c_SC06_Wall01.TranslateTo(MQ13c_SC06_Wall01.GetPositionX(), MQ13c_SC06_Wall01.GetPositionY(), MQ13c_SC06_Wall01.GetPositionZ() - 2000, MQ13c_SC06_Wall01.GetAngleX(), MQ13c_SC06_Wall01.GetAngleY(), MQ13c_SC06_Wall01.GetAngleZ(),  150.0)
	OBJDwemerRepositoryRotateM.Play(MQ13c_SC06_Wall01)
	Wait(3)
	MQ13c_SC06_Wall01_Navcut.Disable()
	MQ13c_SC06_CageDoor01_Open = True
	
	int iIndex = MQ13c_SC06_Cage01_Enemies.GetSize()
	
	while iIndex > 0
		iIndex -= 1
		Actor akActorToCheck = MQ13c_SC06_Cage01_Enemies.GetAt(iIndex) as Actor
		akActorToCheck.EvaluatePackage()
		akActorToCheck.StartCombat(PlayerREF)
	EndWhile
	
EndFunction

Function OpenCage02()

	MQ13c_SC06_Wall02.TranslateTo(MQ13c_SC06_Wall02.GetPositionX(), MQ13c_SC06_Wall02.GetPositionY(), MQ13c_SC06_Wall02.GetPositionZ() - 2000, MQ13c_SC06_Wall02.GetAngleX(), MQ13c_SC06_Wall02.GetAngleY(), MQ13c_SC06_Wall02.GetAngleZ(),  150.0)
	OBJDwemerRepositoryRotateM.Play(MQ13c_SC06_Wall02)
	Wait(3)
	MQ13c_SC06_Wall02_Navcut.Disable()
	MQ13c_SC06_CageDoor02_Open = True
	
	int iIndex = MQ13c_SC06_Cage02_Enemies.GetSize()
	
	while iIndex > 0
		iIndex -= 1
		Actor akActorToCheck = MQ13c_SC06_Cage02_Enemies.GetAt(iIndex) as Actor
		akActorToCheck.EvaluatePackage()
		akActorToCheck.StartCombat(PlayerREF)
	EndWhile
	
EndFunction

Function OpenCage03()

	MQ13c_SC06_Wall03.TranslateTo(MQ13c_SC06_Wall03.GetPositionX(), MQ13c_SC06_Wall03.GetPositionY(), MQ13c_SC06_Wall03.GetPositionZ() - 2000, MQ13c_SC06_Wall03.GetAngleX(), MQ13c_SC06_Wall03.GetAngleY(), MQ13c_SC06_Wall03.GetAngleZ(),  150.0)
	OBJDwemerRepositoryRotateM.Play(MQ13c_SC06_Wall03)
	Wait(3)
	MQ13c_SC06_Wall03_Navcut.Disable()
	MQ13c_SC06_CageDoor03_Open = True
	
	int iIndex = MQ13c_SC06_Cage03_Enemies.GetSize()
	
	while iIndex > 0
		iIndex -= 1
		Actor akActorToCheck = MQ13c_SC06_Cage03_Enemies.GetAt(iIndex) as Actor
		akActorToCheck.EvaluatePackage()
		akActorToCheck.StartCombat(PlayerREF)
	EndWhile
	
EndFunction

Function EnableCrystalActivation()

	_00E_QuestFunctions.SetNPCAsCompanion(akCompanionRomance, False)
	MQ13c_SC06_CrystalActREF.Enable()

EndFunction

Function ActivateTurret()

	_00E_MQ13c_sCrystalDoesntMove.Show()
	_00E_MQ04_CrystalTouch.Play(PlayerREF)
	
EndFunction

Function StartSC07()

	MQ13c_SC07_TurretAttack.ForceStart()

EndFunction

Function ActivateTurret02()

	Game.RequestAutoSave()
	SetObjectiveCompleted(15)
	Levelsystem.RemoveSilence()
	_00E_Music_Combat_Shieldbrothers.Add()
	_00E_MQ13c_TurretChargeSoundM.Play(MQ13c_SC06_TurretFX)
	MQ13c_SC06_TurretFX.PlayGamebryoAnimation("mCharge")
	
EndFunction

Function FireBolt01()

	MQ13c_SC06_TurretFX.PlayGamebryoAnimation("mCast")
	VoiceDragonShock.Cast(MQ13c_SC06_TurretFX, MQ13c_SC06_TurretCastMarker001)
	
EndFunction

Function GoToFiringState()

	GoToState("FiringTurret")
	
EndFunction

Function FireBolt02()

	MQ13c_SC06_TurretFX.PlayGamebryoAnimation("mCast")
	VoiceDragonShock.Cast(MQ13c_SC06_TurretFX, MQ13c_SC06_TurretCastMarker002)
	
EndFunction

Function FireBolt03()

	MQ13c_SC06_TurretFX.PlayGamebryoAnimation("mCast")
	VoiceDragonShock.Cast(MQ13c_SC06_TurretFX, MQ13c_SC06_TurretCastMarker003)
	
EndFunction

Function OpenSecretPassage()

	SetStage(95)
	MQ13c_SC07_WallTranslater.TranslateToRef(MQ13c_SC07_WallTranslateRef, 400.0)
	OBJDwemerRepositoryRotateM.Play(MQ13c_SC07_WallTranslater)
	SetObjectiveDisplayed(20)
	akCompanionNoRomance.Enable()
	akCompanionNoRomance.MoveTo(MQ13c_SC06_CompanionNoRomanceMarker)
	
EndFunction

Function TurretFireAtThePlayer()

	MQ13c_SC06_TurretFX.PlayGamebryoAnimation("mCast")
	VoiceDragonShock.Cast(MQ13c_SC06_TurretFX, PlayerREF)

EndFunction

Function SetPlayerInSafeZone()

	MQ13c_SC07_PlayerInSafeZone = True

EndFunction

Function CloseShutter()

	GameHour.SetValue(8.0) ; Probably to flavor lighting (?), no proper SkipTimeToHour needed
	_00E_Music_Combat_Shieldbrothers.Remove()
	MQ13c_SC07_WallTranslater.TranslateToRef(MQ13c_SC07_WallTranslateBackREF, 400.0)
	OBJDwemerRepositoryRotateM.Play(MQ13c_SC07_WallTranslater)

EndFunction

Function FireTurret()

	If !MQ13c_SC07_PlayerInSafeZone
		FireBolt01()
		Wait(2)
		FireBolt02()
		Wait(2)
		FireBolt03()
	Else
		If MQ13c_SC07_TurretBoxREF.bPlayerOnSurface	
			TurretFireAtThePlayer()
		EndIf
	EndIf
	
	
EndFunction

Function StopFiring()

	GoToState("defaultState")
	
EndFunction

Function SetObjective()

	SetObjectiveCompleted(20)
	
	if akCompanionRomance == _00E_MC_CaliaREF
		SetObjectiveDisplayed(30)
	Else
		SetObjectiveDisplayed(25)
	EndIf

EndFunction

Function StartSC08()

	akCompanionRomance.MoveTo(PlayerREF)
	akCompanionNoRomance.MoveTo(PlayerREF)
	MQ13c_AtriumDoorREF.BlockActivation(True)
	GameHour.SetValue(10.75) ; Probably to flavor lighting (?), no proper SkipTimeToHour needed
	
	MQ13c_SC08_TravelToBridge.ForceStart()

EndFunction

Function SpawnSteelbird()
	
	SetObjectiveCompleted(30)
	SetObjectiveCompleted(25)
	SetObjectiveDisplayed(35)
	RequestAutoSave()
	akSteelbirdAtrium.SetGhost(False)
	akSteelbird = MQ13c_SC08_SteelbirdSpawn.PlaceActorAtMe(MQ13c_SC03_SteelbirdREF.GetActorBase(), 1) as Actor
	_00E_MQ13c_Steelbird_RoarSingleM.Play(PlayerREF)
	Levelsystem.RemoveSilence()
	_00E_Music_Combat_Shieldbrothers.Remove()
	_00E_Music_Special_Zyklus_OneSelection.Remove()
	_00E_Music_Combat_EpicOneSelection.Remove()
	_00E_Music_Combat_Epic.Remove()
	_00E_SilenceAbruptHighPriority.Remove()
	_00E_Music_Combat_BonehunterNoCond.Remove()
	akSteelbird.Enable()
	akSteelbird.MoveTo(MQ13c_SC08_SteelbirdSpawn)
	akSteelbird.StartCombat(PlayerREF)
	Utility.Wait(1)
	_00E_Music_Combat_BonehunterNoCond.Add()
	MQ13c_AtriumDoorREF.BlockActivation(False)
	bSteelbirdAtriumSpawned = True
	
EndFunction

Function StartSteelbirdAttack()

	GoToState("SteelbirdAttacksAtrium")

EndFunction

Function BangOnDoor()
	
	MQ13c_SC08_DoorBangDust002.PlaceAtMe(FXdustDropMedExplosion, 1)	
	MQ13c_SC08_DoorBangDust001.PlaceAtMe(FXdustDropMedExplosion, 1)
	AMBrCivilWarCatapultsDistantM.Play(PlayerREF)
	TRPSwingGrateImpactFleshHighRadiusM.Play(MQ13c_SC08_DoorREF)
	MQ13c_SC08_DoorREF.PlayImpactEffect(PHYGenericMetalHeavyImpactSet)
	
	If PlayerREF.GetDistance(MQ13c_SC08_DoorREF) < 500.0
		ShakeCamera(afStrength = 0.8)
	Else
		ShakeCamera(afStrength = 0.5)
	EndIf
		
	If RandomFloat(0, 1) > 0.5
		_00E_MQ13c_Steelbird_RoarM.Play(MQ13c_SC08_SteelbirdSpawnMarker)
	EndIf
	
EndFunction

Function SteeldragonEnter()
	
	OBJVerticalSarcophagusOpenM.Play(MQ13c_SC08_DoorREF)
	MQ13c_SC08_DoorBangDust002.PlaceAtMe(FXdustDropMedExplosion, 1)	
	MQ13c_SC08_DoorBangDust001.PlaceAtMe(FXdustDropMedExplosion, 1)
	akSteelbirdAtrium = MQ13c_SC08_SteelbirdSpawnMarker.PlaceActorAtMe(MQ13c_SC03_SteelbirdREF.GetActorBase(), 1)
	refAliasSteelbird.ForceRefTo(akSteelbirdAtrium)
	TRPSwingGrateImpactFleshHighRadiusM.Play(MQ13c_SC08_DoorREF)
	MQ13c_SC08_DoorREF.PlayImpactEffect(PHYGenericMetalHeavyImpactSet)
	Wait(0.5)
	TRPSwingGrateImpactFleshHighRadiusM.Play(MQ13c_SC08_DoorREF)
	MQ13c_SC08_DoorREF.PlayImpactEffect(PHYGenericMetalHeavyImpactSet)
	MQ13c_SC08_DoorREF.SetOpen(True)
	_00E_MQ13c_Steelbird_RoarM.Play(MQ13c_SC08_SteelbirdSpawnMarker)
	ShakeCamera()
	Wait(3)
	CollapseReactor()
	
EndFunction

Function StartSC09()

	MQ13c_SC08_DoorREF.BlockActivation(True)
	MQ13c_SC09_Killscene.ForceStart()

EndFunction

Function PlayerEnterAIWalk()

	Game.ForceFirstPerson()
	_00E_QuestFunctions.PlayerAIWalk(True)
	PlayerCapsuleChair.Activate(PlayerREF, true)

EndFunction

Function CollapseReactor()

	MQ13c_SC09_SteelbirdColMarker.Enable()
	MAGNightingaleSubterfugeFire2DHighRadiusM.Play(MQ13c_SC09_ReactorREF)
	Wait(0.5)
	OBJEyeofMagnusVanishM.Play(MQ13c_SC09_ReactorREF)
	MQ13c_SC09_ReactorREF.PlaceAtMe(MGEyeRemoveExplosion)
	Wait(5)
	ShakeCamera(afStrength = 1.0)
	QSTAlduinDeathExplosionC.Play(MQ13c_SC09_ReactorREF)
	MQ13c_SC09_ReactorREF.PlaceAtMe(_00E_MQ13c_SC09_LethalShockExplosion)
	MQ13c_SC09_ReactorREF.PlaceAtMe(ExplosionShockMass01)
	
	If GetStage() < 120
		Wait(0.7)
		akCompanionRomance.SetGhost(False)
		akCompanionRomance.GetActorBase().SetEssential(False)
		akCompanionNoRomance.GetActorBase().SetEssential(False)
		akCompanionNoRomance.SetGhost(False)
		ShockFXShader.Play(PlayerREF)
		ShockFXShader.Play(akCompanionNoRomance)
		ShockFXShader.Play(akCompanionRomance)
		MAGShockExpMassImod.Apply()
		akCompanionNoRomance.Kill(akSteelbirdAtrium)
		akCompanionRomance.Kill(akSteelbirdAtrium)
		PlayerREF.Kill(akSteelbirdAtrium)
	EndIf

EndFunction

Function PlayLaunchSequence()

    PlayerREF.SetGhost(True)
	MQ13c_Capsule_ParentREF.Enable()
	SetObjectiveCompleted(45)
	_00E_MQ13c_Steelbird_RoarSingleM.Play(PlayerREF)
	_00E_Music_Combat_BonehunterNoCond.Remove()
	bCapsuleClosed = True
	ForceFirstPerson()
	int iCapsuleLaunch = _00E_MQ13c_CapsuleLaunch_WithSteelbirdM.Play(PlayerREF)
	Sound.SetInstanceVolume(iCapsuleLaunch, 0.3)
	OBJVerticalSarcophagusOpenM.Play(MQ13c_SC08_DoorREF)
	MQ13c_SC08_DoorBangDust002.PlaceAtMe(FXdustDropMedExplosion, 1)	
	MQ13c_SC08_DoorBangDust001.PlaceAtMe(FXdustDropMedExplosion, 1)
	akSteelbirdAtrium = MQ13c_SC08_SteelbirdSpawnMarker.PlaceActorAtMe(MQ13c_SC03_SteelbirdREF.GetActorBase(), 1)
	refAliasSteelbird.ForceRefTo(akSteelbirdAtrium)
	TRPSwingGrateImpactFleshHighRadiusM.Play(MQ13c_SC08_DoorREF)
	MQ13c_SC08_DoorREF.PlayImpactEffect(PHYGenericMetalHeavyImpactSet)
	Wait(0.5)
	MQ13c_SC09_Grid.Disable()
	TRPSwingGrateImpactFleshHighRadiusM.Play(MQ13c_SC08_DoorREF)
	_00E_MQ13c_SC09_BashOpenDoorM.Play(MQ13c_SC08_DoorREF)
	MQ13c_SC08_DoorREF.PlayImpactEffect(PHYGenericMetalHeavyImpactSet)
	MQ13c_SC08_DoorREF.SetOpen(True)
	_00E_MQ13c_Steelbird_RoarM.Play(MQ13c_SC08_SteelbirdSpawnMarker)
	ShakeCamera()
	Levelsystem.SkipTimeToHour(18.4)
	MQ13c_SC09_PlayerButtonREF.Activate(GetPlayer())
	QSTDwemerGong01.Play(PlayerREF)
	Wait(1)
	TRPDwemerPistonOutM.Play(PlayerREF)
	MAGNightingaleSubterfugeFire2DHighRadiusM.Play(MQ13c_SC09_ReactorREF)
	OBJEyeofMagnusVanishM.Play(MQ13c_SC09_ReactorREF)
	MQ13c_SC09_ReactorREF.PlaceAtMe(MGEyeRemoveExplosion)
	ShakeCamera(afStrength = 0.1)
	_00E_MQ13c_Steelbird_RoarM.Play(MQ13c_SC09_PlayerButtonREF)
	ShakeCamera(GetPlayer(), 0.2, 3)
	Wait(5.5)
	ShakeCamera(afStrength = 1.0)
	QSTAlduinDeathExplosionC.Play(MQ13c_SC09_ReactorREF)
	MQ13c_SC09_ExpMarker01.PlaceAtMe(FireBallExp01)
	Wait(0.5)
	MQ13c_SC09_ExpMarker02.PlaceAtMe(FireBallExp01)
	Wait(0.5)
	MQ13c_SC09_ReactorREF.PlaceAtMe(AlduinFirestormImpactExplosion)
	MQ13c_SC09_ReactorREF.PlaceAtMe(FireStormExplosion)
	Wait(1.5)
	_00E_MQ13c_LaunchCapsuleMotionBlur.Apply()
	ShakeCamera(GetPlayer(), RandomFloat(0.8, 0.9), 8)
	PlayerREF.TranslateTo(PlayerREF.GetPositionX(), PlayerREF.GetPositionY(), (PlayerREF.GetPositionZ() - 15000.0), PlayerREF.GetAngleX(), PlayerREF.GetAngleY(), PlayerREF.GetAngleZ(), 700.0, 700.0)
	MQ13c_SC09_CapsuleREF.TranslateTo(MQ13c_SC09_CapsuleREF.GetPositionX(), MQ13c_SC09_CapsuleREF.GetPositionY(), (MQ13c_SC09_CapsuleREF.GetPositionZ() - 15000.0), MQ13c_SC09_CapsuleREF.GetAngleX(), MQ13c_SC09_CapsuleREF.GetAngleY(), MQ13c_SC09_CapsuleREF.GetAngleZ(), 717.0, 717.0)
	Wait(8)
	FadeToWhiteHoldImod.ApplyCrossFade(afFadeDuration = 3.0)
	PlayerREF.StopTranslation()
	MQ13c_SC09_CapsuleREF.StopTranslation()
	Wait(2)
	SetStage(125)
	
EndFunction

Function UpdateObjectives()

	fSteelbirdTimer = fSteelbirdTimer + __Config_fExtraTimeAfterMapHasBeenFound
	SetObjectiveCompleted(40)
	SetObjectiveDisplayed(45)
	
EndFunction

Function MoreTime()

	fSteelbirdTimer = fSteelbirdTimer + 10
	
EndFunction

Function CloseCompanionCapsules()

	MQ13c_SC09_Button02RomanceREF.Activate(akCompanionRomance)
	MQ13c_SC09_Button01NoRomanceREF.Activate(akCompanionNoRomance)

EndFunction

Function EnableCrashSite()

	MQ13c_Capsule_ParentREF.Enable()
	MQ13b_Capsule_Chronikum_REF.Enable()
	PlayerREF.StopTranslation()
	Levelsystem.SkipTimeToHour(0)
	Timescale.SetValue(10)
	MQ13c_SC10_Linker.Enable()
	akCompanionRomance.MoveTo(MQ13c_SC10_CompanionRomanceMarker)
	akCompanionNoRomance.MoveTo(MQ13c_SC10_CompanionNoRomanceMarker)
	akCompanionNoRomance.MoveTo(MQ13c_SC10_CompanionWoundedMarkerREF)
	PlayerREF.MoveTo(MQ13c_SC10_PlayerStartMarker)
    ; I have moved the two Enable's (under this comment) beneath the
    ; four MoveTo's (above this comment). This fixed the CTD reported
    ; at http://forum.sureai.net//tracker.php?p=8&t=10816 .
	akCompanionRomance.Enable()
	akCompanionNoRomance.Enable()

    PlayerREF.SetGhost(False)
	
	MQ13c_SC10_CrashSiteScene.ForceStart()

EndFunction

Function PlayerWakeUp()

	if akCompanionRomance == _00E_MC_JesparREF
		SetObjectiveDisplayed(50)
	Else
		SetObjectiveDisplayed(55)
	EndIf
	
	ImageSpaceModifier.RemoveCrossFade(afFadeDuration = 0.1)
	FadeToWhiteHoldImod.Remove()
	_00E_WakeUp.ApplyCrossFade()
	PlayerREF.PlayIdle(Idle_1stPersonWoozyGetUpFromBed)
	Wait(3)
	PlayerAIWalkStop()
	Game.EnablePlayerControls()
	
EndFunction

Function ShowSearchObjective()

	_00E_TeleportGlobal.SetValueInt(0)

	if akCompanionNoRomance == _00E_MC_JesparREF
		SetObjectiveCompleted(55)
		SetObjectiveDisplayed(50)
	Else
		SetObjectiveCompleted(50)
		SetObjectiveDisplayed(55)
	EndIf

EndFunction

Function CompleteSearchObjective()

	if akCompanionNoRomance == _00E_MC_JesparREF
		SetObjectiveCompleted(50)
	Else
		SetObjectiveCompleted(55)
	EndIf

EndFunction

Function FadeOutAndStartSC11()

	FadeToBlackIMOD.Apply()
	Wait(2)
	FadeToBlackHoldIMOD.ApplyCrossFade(1)
	MQ13c_SC10_bHasFaded = True
	
	If _00E_MC_JorrekRef.IsEnabled()
		_00E_MC_JorrekRef.Disable()
	EndIf
	
	_00E_MC_YuslanRef.Enable()
	_00E_MC_TealorREF.Enable()
	_00E_MC_NataraREF.Enable()
	_00E_MC_LexREF.Enable()
	_00E_MC_YuslanRef.MoveTo(_00E_MQ08Prologue_NataraChair)
	_00E_MC_TealorREF.MoveTo(_00E_MQ08aPrologue_TeaorThrone)
	_00E_MC_NataraREF.MoveTo(_00E_MQ08Prologue_NataraChair)
	_00E_MC_NataraREF.MoveTo(MQ10bJorrek)
	akCompanionRomance.MoveTo(_00E_MQ08aPrologue_YuslanChair)
	PlayerREF.MoveTo(_00E_MQ08aPrologue_KonstantinChair)
	akCompanionNoRomance.MoveTo(MQ06_SC2_PlayerBed)
	_00E_MC_LexREF.MoveTo(LexStool)
	SetStage(140)
	MQ13c_SC11_Emporium.ForceStart()
	
	PlayerREF.Activate(_00E_MQ08aPrologue_KonstantinChair)
	
EndFunction

Function FadeBack()

	FadeToBlackBackImod.ApplyCrossFade(3)

EndFunction

Function StartFinalCompanionQuest()

	If akCompanionRomance == _00E_MC_JesparREF && !CQJ06.IsCompleted()
		CQJ06.SetStage(5)
	Elseif akCompanionRomance == _00E_MC_CaliaREF && !CQC06.IsCompleted()
		CQC06.SetStage(5)
	EndIf
	
EndFunction

Function MQ13cAddSilence()

	Levelsystem.SetAllowIdleChatter(False)
	_00E_SilenceAbruptHighPriority.Add()

EndFunction

Function MQ13cRemoveSilence()

	Levelsystem.SetAllowIdleChatter(True)
	_00E_SilenceAbruptHighPriority.Remove()

EndFunction

Function FinishUP()

	Levelsystem.RemoveSilence()
	Levelsystem.SetAllowIdleChatter(True)
	Levelsystem.GiveEP(__Config_iRewardEXP)
	MQ14.SetStage(5)
	TimeScale.SetValue(10)
	
EndFunction

Function CompanionQuestFailsave()

	If MQ14.GetStage() < 15

		if (JesparRomance.GetValueInt() == 1) && !(CQJ06.IsRunning())
			CQJ06.SetStage(5)
		Elseif (CaliaRomance.GetValueInt() == 1) && !(CQC06.IsRunning())
			CQC06.SetStage(5)
		EndIf
	
	EndIf
	
EndFunction

;=====================================================================================
;              							 STATES                   					 
;=====================================================================================

State SteelbirdAttacksAtrium


Event OnBeginState()

	fSteelbirdTimer = __Config_fSteelbirdTimer
	RegisterForSingleUpdate(5)
	
EndEvent

Event OnUpdate()
	
	If (fSteelbirdTimer > 0) && !MQ13c_SC09_PlayerIsInCapsule
		BangOnDoor()
        if GetStage() < 120
            _00E_MQ13c_sSteelBirdTimerMSG.Show(fSteelbirdTimer as Int)
            fSteelbirdTimer = (fSteelbirdTimer - __Config_fKnockInterval)
            RegisterForSingleUpdate(__Config_fKnockInterval)
        endif
	Else
		Return
	EndIf
	
EndEvent

EndState

State FiringTurret

Event OnBeginState()

	if !PlayerREF.IsDead()

		MQ13c_SC07_TurretIsFiring = True
		FireTurret()
		RegisterForSingleUpdate(1)

	EndIf
	
EndEvent
	
Event OnUpdate()

	if !PlayerREF.IsDead()
	
		FireTurret()
		RegisterForSingleUpdate(1)
		
	EndIf
	
EndEvent

EndState

;=====================================================================================
;              							 PROPERTY                   					 
;=====================================================================================

; TIMESCALE AUF DEFAULT-WERT ZUR�CKSETZEN! ; MUSIC-Types REMOVEN! ; GOD MODE RUNTERSETZEN!

bool bNoRomance
bool bCapsuleClosed
bool bNexusLiftInMotion

int iNexusLiftSound
int iBarrierSound

float fTimescaleBefore

float Property fSteelbirdTimer Auto Conditional Hidden

bool Property bLiftHasArrived Auto Conditional Hidden
bool Property bCompanionInLiftZone Auto Hidden


bool Property MQ13c_SC06_CageDoor01_Open Auto Conditional Hidden
bool Property MQ13c_SC06_CageDoor02_Open Auto Conditional Hidden
bool Property MQ13c_SC06_CageDoor03_Open Auto Conditional Hidden
bool Property MQ13c_SC07_PlayerInSafeZone Auto Conditional Hidden
bool Property MQ13c_SC07_TurretIsFiring Auto Conditional Hidden
bool Property MQ13c_SC09_PlayerIsInCapsule Auto Conditional Hidden
bool Property MQ13c_SC10_bHasFaded Auto Conditional Hidden
bool Property bSteelbirdAtriumSpawned Auto Conditional Hidden

float Property __Config_fSteelbirdTimer = 100.0 Auto
float Property __Config_fKnockInterval = 10.0 Auto
float Property __Config_fExtraTimeAfterMapHasBeenFound = 30.0 Auto

Int Property __Config_iRewardEXP = 1500 Auto

Actor akYaela
Actor akKurmai
Actor akSteelbird
Actor akSteelbirdAtrium

Light Property Torch01Intense Auto

Quest Property NQ01 Auto
Quest Property MQ14 Auto
Quest Property CQJ06 Auto
Quest Property CQC06 Auto

MusicType Property _00E_Music_Special_Zyklus_OneSelection Auto
MusicType Property _00E_Music_Combat_EpicOneSelection Auto
MusicType Property _00E_Music_Combat_Epic Auto
MusicType Property _00E_Music_Combat_Shieldbrothers Auto
MusicType Property _00E_SilenceAbruptHighPriority Auto
MusicType Property _00E_Music_Combat_BonehunterNoCond Auto

ReferenceAlias Property refAliasCompanionRomance Auto
ReferenceAlias Property refAliasCompanionNoRomance Auto
ReferenceAlias Property refAliasSteelbird Auto

ImpactDataSet Property PHYGenericMetalHeavyImpactSet Auto

_00E_QuestFunctions Property Levelsystem Auto

Actor Property akCompanionRomance Auto Hidden
Actor Property akCompanionNoRomance Auto Hidden

Actor Property PlayerREF Auto
Actor Property _00E_MC_JesparREF Auto
Actor Property _00E_MC_CaliaREF Auto
Actor Property _00E_SC_KurmaiREF Auto
Actor Property _00E_MC_JorrekRef Auto
Actor Property _00E_MC_YaelaREF Auto
Actor Property MQ13c_SC04_CenturionREF Auto
Actor Property MQ13c_SC04_SpiderParent Auto
Actor Property _00E_MQ07a_YoungMageREF Auto
Actor Property MQ13c_SC03_SteelbirdREF Auto
Actor Property _00E_MC_TealorREF Auto
Actor Property _00E_MC_NataraREF Auto
Actor Property _00E_MC_YuslanRef Auto
Actor Property _00E_MC_LexRef Auto

Idle Property Dragon_PerchRoar Auto
Idle Property Idle_1stPersonWoozyGetUpFromBed Auto

ObjectReference Property MQ13b_SC10_NexusLift002 Auto
ObjectReference Property MQ13b_SC11_ShutterREF Auto
ObjectReference Property MQ13c_SC01_ShaftOriginRef Auto
ObjectReference Property MQ13c_SC01_YaelaTranslateMarker Auto
ObjectReference Property MQ13c_SC01_CaliaTranslateToMarker Auto
ObjectReference Property MQ13c_SC01_CaliaTranslateToMarker001 Auto
ObjectReference Property MQ13c_SC01_NexusLiftOriginMarker Auto
ObjectReference Property MQ13c_SC02_KurmaiSpawnMarker Auto
ObjectReference Property MQ13c_SC03_YaelaBarrier Auto
ObjectReference Property MQ13c_SC03_CollisionPlane Auto
ObjectReference Property MQ13b_NexusDoor Auto
ObjectReference Property MQ13c_SC03_FailsaveBox Auto
ObjectReference Property MQ13c_SC04_CompMarker Auto
ObjectReference Property MQ13c_SC03_MuratteParent Auto
ObjectReference Property MQ13c_SC04_DeadMurat Auto
ObjectReference Property MQ13c_SC04_Lever Auto
ObjectReference Property MQ13c_SC04_MoveableWallREF Auto
ObjectReference Property MQ13c_SC04_SecretDoorREF Auto
ObjectReference Property _00E_NPCDumpMarker Auto
ObjectReference Property MQ13b_StarshipREF002 Auto
ObjectReference Property MQ13b_StarshipREF003 Auto
ObjectReference Property MQ13c_SC05_PropMarker Auto
ObjectReference Property MQ13c_SC04_PressurePlate Auto
ObjectReference Property MQ13c_SC04_CollMarkerREF Auto
ObjectReference Property MQ13c_SC04_CollMarkerREF001 Auto
ObjectReference Property MQ13c_SC04_BarrierREF Auto
ObjectReference Property MQ13c_SC04_BarrierTranslateMarker Auto
ObjectReference Property MQ13c_SC06_Wall01 Auto
ObjectReference Property MQ13c_SC06_Wall01_Navcut Auto
ObjectReference Property MQ13c_SC06_Wall02_Navcut Auto
ObjectReference Property MQ13c_SC06_Wall02 Auto
ObjectReference Property MQ13c_SC06_Wall03_Navcut Auto
ObjectReference Property MQ13c_SC06_Wall03 Auto
ObjectReference Property MQ13c_SC06_CrystalActREF Auto
ObjectReference Property MQ13c_SC06_TurretFX Auto
ObjectReference Property MQ13c_SC06_TurretCastMarker001 Auto
ObjectReference Property MQ13c_SC06_TurretCastMarker002 Auto
ObjectReference Property MQ13c_SC06_TurretCastMarker003 Auto
ObjectReference Property MQ13c_SC06_CompanionNoRomanceMarker Auto
ObjectReference Property MQ13c_SC07_WallTranslater Auto
ObjectReference Property MQ13c_SC07_WallTranslateRef Auto
ObjectReference Property MQ13c_SC07_WallTranslateBackREF Auto
ObjectReference Property MQ13c_SC08_SteelbirdSpawn Auto
ObjectReference Property MQ13c_SC08_DoorBangDust001 Auto
ObjectReference Property MQ13c_SC08_DoorBangDust002 Auto
ObjectReference Property MQ13c_SC08_DoorREF Auto
ObjectReference Property MQ13c_SC08_SteelbirdSpawnMarker Auto
ObjectReference Property MQ13c_SC09_ReactorREF Auto
ObjectReference Property MQ13c_SC09_SteelbirdColMarker Auto
ObjectReference Property MQ13c_SC09_CapsuleREF Auto
ObjectReference Property MQ13c_SC09_Button02RomanceREF Auto
ObjectReference Property MQ13c_SC09_Button01NoRomanceREF Auto
ObjectReference Property MQ13c_SC09_PlayerButtonREF Auto
ObjectReference Property MQ13c_SC09_Grid Auto
ObjectReference Property MQ13c_SC09_ExpMarker01 Auto
ObjectReference Property MQ13c_SC09_ExpMarker02 Auto
ObjectReference Property MQ13c_SC10_Linker Auto
ObjectReference Property MQ13c_SC10_CompanionWoundedMarkerREF Auto
ObjectReference Property MQ13c_SC10_CompanionRomanceMarker Auto
ObjectReference Property MQ13c_SC10_CompanionNoRomanceMarker Auto
ObjectReference Property MQ13c_SC10_PlayerStartMarker Auto
ObjectReference Property _00E_MQ08aPrologue_TeaorThrone Auto
ObjectReference Property _00E_MQ08Prologue_NataraChair Auto
ObjectReference Property _00E_MQ08aPrologue_YuslanChair Auto
ObjectReference Property LexStool Auto
ObjectReference Property _00E_MQ08aPrologue_KonstantinChair Auto
ObjectReference Property MQ06_SC2_PlayerBed Auto
ObjectReference Property MQ13c_SC01_KillBoxREF Auto
ObjectReference Property MQ13c_SC06_FailsaveREF Auto
ObjectReference Property MQ13b_Capsule_Chronikum_REF Auto
ObjectReference Property MQ13c_SC04_PullChainREF Auto
ObjectReference Property MQ13c_AtriumDoorREF Auto
ObjectReference Property MQ10bJorrek Auto
ObjectReference Property PlayerCapsuleChair Auto
ObjectReference Property MQ13c_Capsule_ParentREF Auto

_00E_MQ13c_SC07_TurretSC Property MQ13c_SC07_TurretBoxREF Auto

Formlist Property MQ13c_SC06_Cage01_Enemies Auto
Formlist Property MQ13c_SC06_Cage02_Enemies Auto
Formlist Property MQ13c_SC06_Cage03_Enemies Auto
Formlist Property MQ13c_Nexushall_Spiders Auto

Explosion Property _00E_A2_RiftExplosion Auto
Explosion Property FXdustDropMedExplosion Auto
Explosion Property MGEyeRemoveExplosion Auto
Explosion Property _00E_MQ13c_SC09_LethalShockExplosion Auto
Explosion Property ExplosionShockMass01 Auto
Explosion Property FireStormExplosion Auto
Explosion Property AlduinFirestormImpactExplosion Auto
Explosion Property FireballExp01 Auto

Weapon Property _04E_StabDerErdrung Auto
Weapon Property _03E_21_Sternlingsstreitkolben Auto

Scene Property MQ13c_SC02_KurmaiReappears Auto
Scene Property MQ13c_SC03_SteelbirdAttack Auto
Scene Property MQ13c_SC04_CenturionAttack Auto
Scene Property MQ13c_SC05_Botanicum Auto
Scene Property MQ13c_SC06_TravelToGearTower Auto
Scene Property MQ13c_SC07_TurretAttack Auto
Scene Property MQ13c_SC08_TravelToBridge Auto
Scene Property MQ13c_SC09_Killscene Auto
Scene Property MQ13c_SC10_CrashSiteScene Auto
Scene Property MQ13c_SC11_Emporium Auto

Sound Property DRSStoneRotatingDiscLPM Auto
Sound Property _00E_MQ04_CrystalTouch Auto
Sound Property _00E_MQ13c_Steelbird_RoarSingleM Auto
Sound Property _00E_MAGEldritchCharge_050M Auto
Sound Property QSTDA16MagicBarrierLPM Auto
Sound Property _00E_MQ13c_Steelbird_RoarM Auto
Sound Property OBJDwemerRepositoryRotateM Auto
Sound Property AMBrCivilWarCatapultsDistantM Auto
Sound Property TRPSwingGrateImpactFleshHighRadiusM Auto
Sound Property OBJVerticalSarcophagusOpenM Auto
Sound Property MAGNightingaleSubterfugeFire2DHighRadiusM Auto
Sound Property OBJEyeofMagnusVanishM Auto
Sound Property QSTAlduinDeathExplosionC Auto
Sound Property QSTDwemerGong01 Auto
Sound Property TRPDwemerPistonOutM Auto
Sound Property _00E_MQ13c_TurretChargeSoundM Auto
Sound Property _00E_MQ13c_YaleaDeathM Auto
Sound Property _00E_MQ13c_SC09_BashOpenDoorM Auto
Sound Property _00E_MQ13c_CapsuleLaunch_WithSteelbirdM Auto

EffectShader Property ShockFXShader Auto

Spell Property _00E_Ability_StaggerSelfSpell Auto
Spell Property VoiceDragonShock Auto

Message Property _00E_MQ13c_sCrystalDoesntMove Auto
Message Property _00E_MQ13c_sSteelBirdTimerMSG Auto

ImageSpaceModifier Property _00E_MQ13b_SC10_NexusFadeHOLD Auto
ImageSpaceModifier Property _00E_MQ13b_SC10_NexusFadeBack Auto
ImageSpaceModifier Property _00E_MQ04_CrystalExpImpactEXP Auto
ImageSpaceModifier Property MAGShockExpMassImod Auto
ImageSpaceModifier Property FadeToBlackHoldIMOD Auto
ImageSpaceModifier Property FadeToBlackIMOD Auto
ImageSpaceModifier Property FadeToBlackBackIMOD Auto
ImageSpaceModifier Property _00E_WakeUp Auto
ImageSpaceModifier Property FadeToWhiteHoldImod Auto
ImageSpaceModifier Property _00E_MQ13c_LaunchCapsuleMotionBlur Auto

GlobalVariable Property GameHour Auto
GlobalVariable Property Timescale Auto
GlobalVariable Property CaliaRomance Auto
GlobalVariable Property JesparRomance Auto
GlobalVariable Property SympathyJespar Auto
GlobalVariable Property SympathyCalia Auto
GlobalVariable Property JesparNoCombatComments Auto
GlobalVariable Property _00E_TeleportGlobal Auto

Cell Property MQ13cAtrium Auto