1
Fork 0

Added quick start

development
Eddoursul 4 months ago
parent eff44b1e23
commit af3a933e2b
  1. BIN
      QuickStart.esp
  2. BIN
      scripts/EnderalUpgradeAlias.pex
  3. BIN
      scripts/_00e_mqp01_functions.pex
  4. BIN
      scripts/_00e_mqp01_startsc.pex
  5. BIN
      scripts/_00e_mqp02_functions.pex
  6. BIN
      scripts/_00e_mqp03_functions.pex
  7. BIN
      scripts/qf_mqp03_0007b1e5.pex
  8. 4
      source/scripts/EnderalUpgradeAlias.psc
  9. 6
      source/scripts/_00e_mqp01_functions.psc
  10. 39
      source/scripts/_00e_mqp01_startsc.psc
  11. 2
      source/scripts/_00e_mqp02_functions.psc
  12. 17
      source/scripts/_00e_mqp03_functions.psc
  13. 88
      source/scripts/qf_mqp03_0007b1e5.psc

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -7,8 +7,8 @@ float fPatchVersion
Event OnInit() Event OnInit()
; MQP01 ; MQP01
if (Game.GetForm(0x46F1A) as Quest).IsStageDone(10) Quest startQuest = Game.GetForm(0x46F1A) as Quest
if startQuest.IsStageDone(10) || startQuest.IsCompleted()
While Utility.IsInMenuMode() While Utility.IsInMenuMode()
Utility.WaitMenuMode(0.1) Utility.WaitMenuMode(0.1)
EndWhile EndWhile

@ -21,12 +21,6 @@ Function SetUpScene()
MQP01_DreamDoorREF.BlockActivation(True) MQP01_DreamDoorREF.BlockActivation(True)
Wait(5.0) Wait(5.0)
if EnderalFunctions.GetNewGameCount() > 1
Game.EnablePlayerControls()
Game.QuitToMainMenu()
Debug.MessageBox("Due to an engine bug, new game should not be started after quitting to the main menu. Please, restart Enderal first.")
endif
EndFunction EndFunction
Function UnlockDoor() Function UnlockDoor()

@ -2,23 +2,48 @@ Scriptname _00E_MQP01_StartSC extends ObjectReference
Event OnTriggerEnter (ObjectReference akActionREF) Event OnTriggerEnter (ObjectReference akActionREF)
if akActionRef == PlayerREF && !bDone if akActionRef == PlayerREF && !bDone
If !MQ10a.IsRunning() bDone = true ; deletion may take some time
If !MQ12c.IsRunning() Delete()
MQP01.SetCurrentStageID(10) If !MQ10a.IsRunning()
Self.Delete() If !MQ12c.IsRunning()
if EnderalFunctions.GetNewGameCount() > 1
Game.QuitToMainMenu()
Debug.MessageBox("Due to an engine bug, new game should not be started after quitting to the main menu. Please, restart Enderal first.")
return
endif
if _00E_QuickStartPrompt.Show() > 0
MQP01.CompleteAllObjectives()
MQP01.CompleteQuest()
MQP02.CompleteAllObjectives()
MQP02.CompleteQuest()
Utility.wait(0.5)
PlayerREF.MoveTo(_00E_ClassMenuOrigin)
Debug.SendAnimationEvent(PlayerRef, "IdleForceDefaultState")
Game.ShowRaceMenu()
Game.DisablePlayerControls(false, true, true, false, true, false, false, true)
MQP03.SetCurrentStageID(15)
(MQP02 as _00E_MQP02_Functions).AddRacialAbilites()
else
MQP01.SetCurrentStageID(10)
endif
EndIf
EndIf EndIf
EndIf EndIf
EndIf
EndEvent EndEvent
bool bDone bool bDone
Quest Property MQP01 Auto Quest Property MQP01 Auto
Quest Property MQP02 Auto
Quest Property MQP03 Auto
Quest Property MQ12c Auto Quest Property MQ12c Auto
Quest Property MQ10a Auto Quest Property MQ10a Auto
Actor Property PlayerREF Auto
Actor Property PlayerREF Auto
Message Property _00E_QuickStartPrompt Auto
ObjectReference Property _00E_ClassMenuOrigin Auto

@ -398,7 +398,7 @@ Function RocioKillPlayer()
Wait(3) Wait(3)
Game.RequestAutoSave() Game.RequestAutoSave()
Self.SetCurrentStageID(115) Self.SetCurrentStageID(115)
MQP03.Start() MQP03.SetCurrentStageID(5)
EndFunction EndFunction

@ -39,7 +39,7 @@ Function MovePlayerToStart()
DisablePlayerControls(false, true, true, false, true, false, false, true) DisablePlayerControls(false, true, true, false, true, false, false, true)
PlayerREF.SetAlpha(0.0) PlayerREF.SetAlpha(0.0)
PlayerREF.MoveTo(_00E_ClassMenuOrigin) PlayerREF.MoveTo(_00E_ClassMenuOrigin)
Self.SetCurrentStageID(10) SetCurrentStageID(10)
EndFunction EndFunction
@ -52,17 +52,22 @@ Function ShowVisionBinkMovie()
FadeToBlackHoldIMOD.PopTo(_00E_MQP03_WakeUpIMOD) FadeToBlackHoldIMOD.PopTo(_00E_MQP03_WakeUpIMOD)
Wait(4) Wait(4)
_00E_SilenceAbruptHighPriority.Remove() _00E_SilenceAbruptHighPriority.Remove()
Message.ResetHelpMessage("Empty")
_00E_MQP03_Thoughts01.ShowAsHelpMessage("Empty", 5, 1, 1)
SetCurrentStageID(15)
EndFunction
function SetupPlayer()
Game.SetInCharGen(false, true, false)
PlayerREF.AddShout(_00E_Class_Meditate) PlayerREF.AddShout(_00E_Class_Meditate)
Game.UnlockWord(_00E_Class_ClassMenuWord) Game.UnlockWord(_00E_Class_ClassMenuWord)
Game.TeachWord(_00E_Class_ClassMenuWord) Game.TeachWord(_00E_Class_ClassMenuWord)
_00E_MQP03_sMemoryPointGained.Show(1) _00E_MQP03_sMemoryPointGained.Show(1)
TalentPoints.SetValueInt(1) TalentPoints.SetValueInt(1)
PlayerREF.SetActorValue("dragonsouls", TalentPoints.GetValueInt()) PlayerREF.SetActorValue("dragonsouls", TalentPoints.GetValueInt())
Message.ResetHelpMessage("Empty")
_00E_MQP03_Thoughts01.ShowAsHelpMessage("Empty", 5, 1, 1)
RegisterForSingleUpdate(20) RegisterForSingleUpdate(20)
endfunction
EndFunction
Function StrandingCutscene() Function StrandingCutscene()
@ -226,4 +231,4 @@ WordOfPower Property _00E_Class_ClassMenuWord Auto
Shout Property _00E_Class_Meditate Auto Shout Property _00E_Class_Meditate Auto
VisualEffect Property FXCameraAttachEmbersHeavyEffects Auto VisualEffect Property FXCameraAttachEmbersHeavyEffects Auto
VisualEffect Property FXCameraAttachEmbersEffect Auto VisualEffect Property FXCameraAttachEmbersEffect Auto

@ -1,5 +1,5 @@
;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment ;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 22 ;NEXT FRAGMENT INDEX 28
Scriptname QF_MQP03_0007B1E5 Extends Quest Hidden Scriptname QF_MQP03_0007B1E5 Extends Quest Hidden
;BEGIN ALIAS PROPERTY PlayerAlias ;BEGIN ALIAS PROPERTY PlayerAlias
@ -7,6 +7,19 @@ Scriptname QF_MQP03_0007B1E5 Extends Quest Hidden
ReferenceAlias Property Alias_PlayerAlias Auto ReferenceAlias Property Alias_PlayerAlias Auto
;END ALIAS PROPERTY ;END ALIAS PROPERTY
;BEGIN FRAGMENT Fragment_1
Function Fragment_1()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST
;BEGIN CODE
kmyQuest.ShowVisionBinkMovie()
Game.SetHudCartMode(False)
;END CODE
EndFunction
;END FRAGMENT
;BEGIN FRAGMENT Fragment_16 ;BEGIN FRAGMENT Fragment_16
Function Fragment_16() Function Fragment_16()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions ;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
@ -19,10 +32,14 @@ kmyQuest.PrepareSoundAndWeather()
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_6 ;BEGIN FRAGMENT Fragment_27
Function Fragment_6() Function Fragment_27()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
Self.SetObjectiveDisplayed(5) kmyQuest.SetupPlayer()
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
@ -40,51 +57,58 @@ SetCurrentStageID(75)
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_9 ;BEGIN FRAGMENT Fragment_0
Function Fragment_9() Function Fragment_0()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions ;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions _00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST ;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
kmyQuest.ShowSkillbookTutorial() kmyQuest.MovePlayerToStart()
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_1 ;BEGIN FRAGMENT Fragment_13
Function Fragment_1() Function Fragment_13()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions ;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions _00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST ;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
kmyQuest.ShowVisionBinkMovie() kmyQuest.ShowThoughtBox06()
Game.SetHudCartMode(False)
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_11 ;BEGIN FRAGMENT Fragment_8
Function Fragment_11() Function Fragment_8()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions ;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions _00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST ;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
kmyQuest.ShowSleepTutorial() kmyQuest.ShowThoughtBox()
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_3 ;BEGIN FRAGMENT Fragment_9
Function Fragment_3() Function Fragment_9()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions ;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions _00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST ;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
kmyQuest.StrandingCutscene() kmyQuest.ShowSkillbookTutorial()
;END CODE
EndFunction
;END FRAGMENT
;BEGIN FRAGMENT Fragment_17
Function Fragment_17()
;BEGIN CODE
_00E_EPHandler.GiveEP(150)
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
@ -101,46 +125,34 @@ kmyQuest.ShowThoughtBox05()
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_0 ;BEGIN FRAGMENT Fragment_3
Function Fragment_0() Function Fragment_3()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions ;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions _00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST ;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
kmyQuest.MovePlayerToStart() kmyQuest.StrandingCutscene()
;END CODE
EndFunction
;END FRAGMENT
;BEGIN FRAGMENT Fragment_17
Function Fragment_17()
;BEGIN CODE
_00E_EPHandler.GiveEP(150)
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_8 ;BEGIN FRAGMENT Fragment_11
Function Fragment_8() Function Fragment_11()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions ;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions _00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST ;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
kmyQuest.ShowThoughtBox() kmyQuest.ShowSleepTutorial()
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT
;BEGIN FRAGMENT Fragment_13 ;BEGIN FRAGMENT Fragment_6
Function Fragment_13() Function Fragment_6()
;BEGIN AUTOCAST TYPE _00E_MQP03_Functions
Quest __temp = self as Quest
_00E_MQP03_Functions kmyQuest = __temp as _00E_MQP03_Functions
;END AUTOCAST
;BEGIN CODE ;BEGIN CODE
kmyQuest.ShowThoughtBox06() Self.SetObjectiveDisplayed(5)
;END CODE ;END CODE
EndFunction EndFunction
;END FRAGMENT ;END FRAGMENT

Loading…
Cancel
Save