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

View File

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

View File

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

View File

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