Fixed the platform in Forgotten Homeland II calling a wrong quest function

This commit is contained in:
Eddoursul 2024-02-26 12:47:55 +01:00
parent a29d0c534d
commit ba9a1d43ac
8 changed files with 22 additions and 16 deletions

Binary file not shown.

Binary file not shown.

View File

@ -327,6 +327,8 @@ EndFunction
Function NexusElevatorDown() Function NexusElevatorDown()
Game.DisablePlayerControls()
PlayerREF.SetGhost(true)
akYaela.PlayIdle(activateDoor) akYaela.PlayIdle(activateDoor)
Wait(0.25) Wait(0.25)
QSTAstrolabeButtonPressX.Play(akYaela) QSTAstrolabeButtonPressX.Play(akYaela)
@ -363,8 +365,6 @@ Function NexusElevatorDown()
MQ13b_SC11_ShutterREF.Enable() MQ13b_SC11_ShutterREF.Enable()
MQ13b_SC11_ShutterREF.TranslateToRef(MQ13b_SC11_ShutterREFMarker, 300.0, 300.0) MQ13b_SC11_ShutterREF.TranslateToRef(MQ13b_SC11_ShutterREFMarker, 300.0, 300.0)
Timescale.SetValue(10000) Timescale.SetValue(10000)
Game.DisablePlayerControls()
PlayerREF.SetGhost(true)
Game.ForceFirstPerson() Game.ForceFirstPerson()
Game.ShakeCamera(afStrength = 0.5, afDuration = 10) Game.ShakeCamera(afStrength = 0.5, afDuration = 10)
int iTimer = 1 int iTimer = 1
@ -411,7 +411,6 @@ Function NexusElevatorStop()
_00E_MQ13b_SC10_NexusFadeHOLD.Apply() _00E_MQ13b_SC10_NexusFadeHOLD.Apply()
_00E_Func_AIWalk.PlayerAIWalkStop() _00E_Func_AIWalk.PlayerAIWalkStop()
PlayerREF.SetGhost(False) PlayerREF.SetGhost(False)
_00E_StaggerSelf.Cast(PlayerREF) _00E_StaggerSelf.Cast(PlayerREF)
bNexusLiftInMotion = False bNexusLiftInMotion = False

View File

@ -2,14 +2,14 @@ Scriptname _00E_MQ13b_SC08_ElevatorSC extends ObjectReference
Event OnTranslationAlmostComplete() Event OnTranslationAlmostComplete()
If iState == 0 && MQ13b.GetCurrentStageID() < 75 If MQ13b.GetCurrentStageID() < 75 && iState == 0
iState = 1
MQ13b.SetCurrentStageID(75) MQ13b.SetCurrentStageID(75)
MQ13b.StopElevatorSound() MQ13b.StopElevatorSound()
iState = 1
EndIf EndIf
EndEvent EndEvent
int iState int iState
_00E_MQ13b_Functions Property MQ13b Auto _00E_MQ13b_Functions Property MQ13b Auto

View File

@ -2,10 +2,13 @@ Scriptname _00E_MQ13b_SC09_ChainSC extends ObjectReference
Event OnActivate(ObjectReference akActionRef) Event OnActivate(ObjectReference akActionRef)
If MQ13b.GetCurrentStageID() == 80 If MQ13b.IsRunning() && MQ13b.GetCurrentStageID() <= 80
Utility.Wait(1) Utility.Wait(1)
MQ13b.SetCurrentStageID(85) MQ13b.SetCurrentStageID(85)
ElseIf MQ13c.GetCurrentStageID() == 25 return
endif
If MQ13c.GetCurrentStageID() == 25
MQ13b_SC09_HiddenStairs.PlayAnimation("up") MQ13b_SC09_HiddenStairs.PlayAnimation("up")
MQ13c.SetCurrentStageID(30) MQ13c.SetCurrentStageID(30)
EndIf EndIf
@ -14,4 +17,4 @@ EndEvent
Quest Property MQ13b Auto Quest Property MQ13b Auto
Quest Property MQ13c Auto Quest Property MQ13c Auto
BlackreachDoorScript Property MQ13b_SC09_HiddenStairs Auto BlackreachDoorScript Property MQ13b_SC09_HiddenStairs Auto

View File

@ -2,16 +2,20 @@ Scriptname _00E_MQ13b_SC10_ElevatorSC extends ObjectReference
Event OnTranslationComplete() Event OnTranslationComplete()
If !bIsOnBottom if MQ13c.GetCurrentStageID() > 0
bIsOnBottom = True if ! bIsUp
bIsUp = true
MQ13c.NexusElevatorStop()
endif
elseif ! bIsDown
bIsDown = true
MQ13b.NexusElevatorStop() MQ13b.NexusElevatorStop()
Elseif bIsOnBottom endif
MQ13c.NexusElevatorStop()
EndIf
EndEvent EndEvent
bool bIsOnBottom bool bIsDown
bool bIsUp
_00E_MQ13b_Functions Property MQ13b Auto _00E_MQ13b_Functions Property MQ13b Auto
_00E_MQ13c_Functions Property MQ13c Auto _00E_MQ13c_Functions Property MQ13c Auto