enderalse/source/scripts/_00e_mq18a_functions.psc

172 lines
4.4 KiB
Plaintext
Raw Normal View History

Scriptname _00E_MQ18a_Functions extends Quest
Import Utility
;=====================================================================================
; FUNCTIONS
;=====================================================================================
Function SetUpCompanion()
if MQ17.akCompanion == _00E_MC_CaliaREF
akCompanion = _00E_MC_CaliaREF
Companion.ForceRefTo(_00E_MC_CaliaREF)
Else
akCompanion = _00E_MC_JesparREF
Companion.ForceRefTo(_00E_MC_JesparREF)
EndIf
if akCompanion.IsDisabled()
akCompanion.Enable()
EndIf
akCompanion.BlockActivation(True)
MQ18a_SC01_DreamSequence.ForceStart()
EndFunction
Function PortCompanion(Objectreference objPortTarget)
TimeFadeOut01FXS.Play(akCompanion)
Wait(2)
MAGConjurePortalClose.Play(akCompanion)
akCompanion.MoveTo(objPortTarget)
TimeFadeIn01FXS.Play(akCompanion)
EndFunction
Function FadeOutDream()
FadeToWhiteImod.Apply()
Wait(2)
Game.DisablePlayerControls()
FadeToWhiteHoldImod.ApplyCrossFade(afFadeDuration = 1.0)
Wait(4)
Weather.ReleaseOverride()
PlayerREF.SetScale(1)
SetStage(20)
EndFunction
Function StartSC02()
Levelsystem.RemoveAllitemsSafeVersion(None)
_00E_StarCityWeather.ForceActive(True)
_00E_BloodyFXShader.Stop(PlayerREF)
Game.ForceFirstPerson()
Levelsystem.SkipTimeToHour(18.4)
PlayerREF.SetAngle(MQ18a_SC02_PlayerWakeUpREF.GetAngleX(), MQ18a_SC02_PlayerWakeUpREF.GetAngleY(), MQ18a_SC02_PlayerWakeUpREF.GetAngleZ())
PlayerREF.MoveTo(MQ18a_SC02_WakeUpMarker)
PlayerREF.PlayIdle(TG05_Knockout)
akCompanion.MoveTo(MQ18a_SC02_CompanionSitLedgeMarker)
TimeFadeIn01FXS.Play(akCompanion)
akCompanion.BlockActivation(False)
MQ18a_SC02_StarCity.ForceStart()
EndFunction
Function StartSC02_Failsave()
If !MQ18a_SC02_StarCity.IsPlaying()
MQ18a_SC02_StarCity.ForceStart()
EndIf
EndFunction
Function WakeUp()
Game.ShowFirstPersonGeometry(True)
PlayerREF.SetOutfit(MinerClothesOutfit02)
PlayerREF.DispelAllSpells()
PlayerREF.PlayIdle(TG05_GetUp)
_00E_MQ18a_WakeUpImod.ApplyCrossFade(afFadeDuration = 3.0)
Wait(3)
Game.EnablePlayerControls()
MQ18a_SC02_PlayerWakeUpREF.BlockActivation(True)
EndFunction
Function StartMusic()
Levelsystem.RemoveSilence()
_00E_Music_Special_Ending_BraveNewWorld.Add()
EndFunction
Function SlowSpeed()
Game.ForceThirdPerson()
PlayerREF.SetActorValue("speedMult", 75)
Levelsystem.UpdateSpeed(PlayerREF)
EndFunction
Function ShowCredits()
Debug.ToggleMenus()
If _00E_AchievementsEnabled.GetValueInt() == 1
Steam.UnlockAchievement("END_COMPLETE_MQ18A_01")
EndIf
FadeToBlackHoldIMOD.Apply()
Wait(8)
Game.PlayBink("Enderal_Credits.bik")
FadeToBlackHoldIMOD.Remove()
Debug.ToggleMenus()
_00E_Game_PostCreditsMessage.Show()
Game.QuitToMainMenu()
EndFunction
;=====================================================================================
; PROPERTIES
;=====================================================================================
Actor Property akCompanion Auto Hidden
Actor Property _00E_MC_CaliaREF Auto
Actor Property _00E_MC_JesparREF Auto
Actor Property PlayerREF Auto
_00E_MQ17_Functions Property MQ17 Auto
_00E_QuestFunctions Property Levelsystem Auto
EffectShader Property TimeFadeOut01FXS Auto
EffectShader Property TimeFadeIn01FXS Auto
EffectShader Property _00E_BloodyFXShader Auto
Scene Property MQ18a_SC01_DreamSequence Auto
Scene Property MQ18a_SC02_StarCity Auto
Outfit Property MinerClothesOutfit02 Auto
Sound Property MAGConjurePortalClose Auto
Message Property _00E_Game_PostCreditsMessage Auto
GlobalVariable Property _00E_AchievementsEnabled Auto
ReferenceAlias Property Companion Auto
Idle Property TG05_Knockout Auto
Idle Property TG05_GetUp Auto
MusicType Property _00E_Music_Special_Ending_BraveNewWorld Auto
Weather Property _00E_StarCityWeather Auto
ImageSpaceModifier Property FadeToWhiteImod Auto
ImageSpaceModifier Property FadeToWhiteHoldImod Auto
ImageSpaceModifier Property _00E_MQ18a_WakeUpImod Auto
ImageSpaceModifier Property FadeToBlackHoldIMOD Auto
ObjectReference Property MQ18a_Companion_001 Auto
ObjectReference Property MQ18a_Companion_002 Auto
ObjectReference Property MQ18a_Companion_003 Auto
ObjectReference Property MQ18a_Companion_004 Auto
ObjectReference Property MQ18a_Companion_005 Auto
ObjectReference Property MQ18a_SC02_PlayerWakeUpREF Auto
ObjectReference Property MQ18a_SC02_CompanionSitLedgeMarker Auto
ObjectReference Property MQ18a_SC02_WakeUpMarker Auto