4
Fork 0

Moved TeleportNPC() to TeleportControl

remove-levelsystem
Eddoursul 4 months ago
parent b811b908db
commit 1583e90ff0
  1. BIN
      Enderal - Forgotten Stories.esm
  2. BIN
      Skyrim.esm
  3. BIN
      TeleportControl.esp
  4. BIN
      scripts/_00E_EnderalControls.pex
  5. BIN
      scripts/_00E_TeleportControl.pex
  6. BIN
      scripts/_00e_cqj04_functions.pex
  7. BIN
      scripts/_00e_fs_nq01_functions.pex
  8. BIN
      scripts/_00e_fs_nq02_functions2.pex
  9. BIN
      scripts/_00e_fs_nqr02_functions.pex
  10. BIN
      scripts/_00e_fs_nqr03_functions.pex
  11. BIN
      scripts/_00e_mq02_functions.pex
  12. BIN
      scripts/_00e_mq07a_functions.pex
  13. BIN
      scripts/_00e_mq10b_questfunctions.pex
  14. BIN
      scripts/_00e_mq12b_functions.pex
  15. BIN
      scripts/_00e_nq21_questfunctions.pex
  16. BIN
      scripts/_00e_nq26_questfunctions.pex
  17. BIN
      scripts/_00e_nq_g_06_functions.pex
  18. BIN
      scripts/_00e_playerfunctions.pex
  19. BIN
      scripts/_00e_questfunctions.pex
  20. BIN
      scripts/_00e_teleport_suntempleme.pex
  21. BIN
      scripts/_00e_teleportationmescript.pex
  22. BIN
      scripts/tif__0102ee99.pex
  23. 2
      source/scripts/_00E_EnderalControls.psc
  24. 66
      source/scripts/_00E_TeleportControl.psc
  25. 2
      source/scripts/_00e_cqj04_functions.psc
  26. 4
      source/scripts/_00e_fs_nq01_functions.psc
  27. 2
      source/scripts/_00e_fs_nq02_functions2.psc
  28. 2
      source/scripts/_00e_fs_nqr02_functions.psc
  29. 12
      source/scripts/_00e_fs_nqr03_functions.psc
  30. 2
      source/scripts/_00e_mq02_functions.psc
  31. 6
      source/scripts/_00e_mq07a_functions.psc
  32. 2
      source/scripts/_00e_mq10b_questfunctions.psc
  33. 2
      source/scripts/_00e_mq12b_functions.psc
  34. 4
      source/scripts/_00e_nq21_questfunctions.psc
  35. 2
      source/scripts/_00e_nq26_questfunctions.psc
  36. 4
      source/scripts/_00e_nq_g_06_functions.psc
  37. 4
      source/scripts/_00e_playerfunctions.psc
  38. 83
      source/scripts/_00e_questfunctions.psc
  39. 4
      source/scripts/_00e_teleport_suntempleme.psc
  40. 2
      source/scripts/_00e_teleportationmescript.psc
  41. 2
      source/scripts/tif__0102ee99.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.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -4,7 +4,7 @@ _00E_SkillControl Property SkillControl Auto
_00E_FadeToBlackControl Property FadeToBlackControl Auto
_00E_TeleportPlayer Property TeleportPlayer Auto
_00E_TeleportControl Property TeleportControl Auto
_00E_SafeItemRemove Property SafeItemRemove Auto

@ -1,4 +1,4 @@
Scriptname _00E_TeleportPlayer extends Quest Hidden
Scriptname _00E_TeleportControl extends Quest Hidden
import Utility
@ -64,6 +64,60 @@ Event OnUpdate()
Game.EnablePlayerControls()
EndEvent
Function TeleportNPC(Actor NPCToTeleport, ObjectReference TeleportTarget)
{Teleport an NPC, with animations and FX}
Weapon weap01 = NPCToTeleport.GetEquippedWeapon(0)
Weapon weap02 = NPCToTeleport.GetEquippedWeapon(1)
If weap01 != None
NPCToTeleport.UnEquipItem(weap01)
EndIf
If weap02 != None
NPCToTeleport.UnEquipItem(weap02)
EndIf
NPCToTeleport.PlayIdle(IdleMagic_01)
_00E_TeleportCastSound.Play(NPCToTeleport)
Wait(3)
if NPCToTeleport.GetActorBase().GetSex() == 0
NPCToTeleport.PlayIdle(IdleT02AscendMale)
Else
NPCToTeleport.PlayIdle(IdleT02AscendFemale)
EndIf
_00E_MagicProtectionSpellM.Play(NPCToTeleport)
Wait(4)
TimeFadeOut01FXS.Play(NPCToTeleport)
Wait(2)
_00E_A2_Ghostwalk_TeleportDoneSound.Play(NPCToTeleport)
ObjectReference TeleportFXMarker = NPCToTeleport.PlaceAtMe(XMarkerHeading, 1)
TeleportFXMarker.MoveTo(NPCToTeleport, 0.0, 0.0, 100.0)
ObjectReference FXExplosion = TeleportFXMarker.PlaceAtMe(_00E_TeleportExplosion, 1)
_00E_NPCTeleportExplosionIMOD.Apply()
Game.ShakeCamera(afStrength = 0.2)
NPCToTeleport.MoveTo(TeleportTarget)
Debug.sendAnimationEvent(NPCToTeleport, "IdleWebEnterInstant")
NPCToTeleport.setActorValue("Variable03", 5)
TimeFadeOut01FXS.Stop(NPCToTeleport)
If NPCToTeleport.Is3DLoaded()
TimeFadeIn01FXS.Play(NPCToTeleport)
EndIf
Wait(0.5)
NPCToTeleport.playidle(WebIdleExit)
Wait(1)
TimeFadeIn01FXS.Stop(NPCToTeleport)
NPCToTeleport.setActorValue("Variable03", 0)
If weap01 != None
NPCToTeleport.EquipItem(weap01)
EndIf
If weap02 != None
NPCToTeleport.EquipItem(weap02)
EndIf
EndFunction
actor Property PlayerRef Auto
Idle Property IdleT02AscendMale Auto
@ -87,3 +141,13 @@ Idle Property WebIdleExit Auto
Idle Property IdleForceDefaultState Auto
ActorBase Property Player Auto
Sound Property _00E_TeleportCastSound Auto
STATIC Property XMarkerHeading Auto
ImageSpaceModifier Property _00E_NPCTeleportExplosionIMOD Auto
Idle Property IdleMagic_01 Auto
Explosion Property _00E_TeleportExplosion Auto

@ -45,7 +45,7 @@ Function TeleportJespar()
CQJ04_SC01_Leandra001.SetOutfit(_00E_UCProstituteOutfit)
If GetStage() == 30
Levelsystem.TeleportNPC(_00E_MC_JesparREF, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_MC_JesparREF, _00E_NPCDumpMarker)
Else
; Do Nothing
EndIf

@ -327,7 +327,7 @@ Function PortBackYuslanClearFirstAct()
_00E_TeleportGlobal.SetValueInt(0)
FS_NQ01_YuslanREF.RemoveFromFaction(IgnoreInCombatFaction)
Levelsystem.TeleportNPC(FS_NQ01_YuslanREF, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_NQ01_YuslanREF, _00E_NPCDumpMarker)
RegisterForSingleUpdateGameTime(48.0)
_00E_FS_NQ01_Barrier1.Disable()
_00E_FS_NQ01_Barrier1Msg.Disable()
@ -759,7 +759,7 @@ EndFunction
Function TeleportYuslan()
Levelsystem.TeleportNPC(FS_NQ01_YuslanREF, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_NQ01_YuslanREF, _00E_NPCDumpMarker)
FS_NQ01_YuslanREF.Disable()
FS_NQ01_YuslanREF.DeleteWhenAble()

@ -29,7 +29,7 @@ Function TeleportEsmeToDuenenhaim()
RegisterForUpdateGameTime(24)
GameDay = GameDaysPassed.GetValue() as Int
Levelsystem.TeleportNPC(_00E_FS_NQ02_EsmeREF, _00E_FS_NQ02_EsmeTeleportMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_FS_NQ02_EsmeREF, _00E_FS_NQ02_EsmeTeleportMarker)
StopTravelWithEsme()
wait(0.1)
_00E_FS_NQ02_EsmeREF.Disable()

@ -191,7 +191,7 @@ Function FinishUp()
_00E_EPHandler.GiveEP(__Config_iRewardEXP)
FS_NQR03.SetStage(5)
Self.CompleteQuest()
Levelsystem.TeleportNPC(FS_NQR02_TharaelREF, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_NQR02_TharaelREF, _00E_NPCDumpMarker)
FS_NQR02_TharaelREF.Disable()
FS_NQR02_DummyToDisableREF.Enable()
FS_NQR02_IAmInTheWayDogREF.Enable()

@ -95,7 +95,7 @@ EndFunction
Function TeleportBrotherGalang()
Levelsystem.TeleportNPC(FS_NQR03_LethoREF, FS_NQR03_BrotherGriefMarkerREF)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_NQR03_LethoREF, FS_NQR03_BrotherGriefMarkerREF)
SetStage(20)
SetObjectiveCompleted(10)
SetObjectiveDisplayed(15)
@ -156,9 +156,9 @@ EndFunction
Function TeleportPlayer()
Levelsystem.TeleportNPC(FS_NQR03_BrotherGreedREF, FS_NQR03_BrotherGreedMarkerREF)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_NQR03_BrotherGreedREF, FS_NQR03_BrotherGreedMarkerREF)
FS_NQR03_BrotherGreedREF.EvaluatePackage()
_00E_PlayerFunctions.GetPlayerTeleport().TeleportPlayer(FS_NQR03_DarkValleyMarkerREF)
_00E_PlayerFunctions.GetTeleportControl().TeleportPlayer(FS_NQR03_DarkValleyMarkerREF)
SetStage(75)
RegisterForSingleUpdate(2)
@ -245,15 +245,15 @@ EndFunction
Function TeleportBrotherGreed()
Levelsystem.TeleportNPC(FS_NQR03_BrotherGreedREF, FS_NQR03_TeleportBackMarkerBrotherGreed)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_NQR03_BrotherGreedREF, FS_NQR03_TeleportBackMarkerBrotherGreed)
EndFunction
Function TeleportPlayerAndBrotherGreed()
Levelsystem.TeleportNPC(FS_NQR03_BrotherGreedREF, FS_NQR03_TeleportBackMarkerBrotherGreed)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_NQR03_BrotherGreedREF, FS_NQR03_TeleportBackMarkerBrotherGreed)
FS_NQR03_BrotherGreedREF.EvaluatePackage()
_00E_PlayerFunctions.GetPlayerTeleport().TeleportPlayer(FS_NQR03_TeleportBackMarkerPlayer)
_00E_PlayerFunctions.GetTeleportControl().TeleportPlayer(FS_NQR03_TeleportBackMarkerPlayer)
RegisterForSingleUpdate(2)
SetObjectiveCompleted(50)

@ -175,7 +175,7 @@ EndFunction
Function TeleportJesparAway()
PlayerREF.AddItem(_01E_TeleportrolleFlusshaim, 1, false)
Levelsystem.TeleportNPC(_00E_MC_JesparREF, MQ02_D5_JesparTeleportMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_MC_JesparREF, MQ02_D5_JesparTeleportMarker)
Self.SetStage(135)
SetFlusshaimTavernBarStoolsOwner(PlayerREF.GetActorBase())

@ -730,11 +730,11 @@ Function Teleport(String WhoToTeleport)
MQ07a_SC13_WordOfTheDead.Disable()
if WhoToTeleport == "Jespar"
Levelsystem.TeleportNPC(_00E_MC_JesparREF, MQ07a_SC13_JesparTeleport)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_MC_JesparREF, MQ07a_SC13_JesparTeleport)
ElseIf WhoToTeleport == "Both"
Game.DisablePlayerControls()
Levelsystem.TeleportNPC(_00E_MC_JesparREF, MQ07a_SC13_JesparTeleport)
_00E_PlayerFunctions.GetPlayerTeleport().TeleportPlayer(MQ07a_SC13_PlayerTeleport)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_MC_JesparREF, MQ07a_SC13_JesparTeleport)
_00E_PlayerFunctions.GetTeleportControl().TeleportPlayer(MQ07a_SC13_PlayerTeleport)
EndIf
EndFunction

@ -85,7 +85,7 @@ Function PortJespar()
Levelsystem.RemoveSilence()
_00E_SilenceAbruptHighPriority.remove()
Actor JesparActor = _00E_MC_JesparRef as actor
Levelsystem.TeleportNPC(JesparActor, MQ10bJesparPortMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(JesparActor, MQ10bJesparPortMarker)
If !CQC02.IsCompleted() && CQC02.IsRunning()

@ -373,7 +373,7 @@ EndFunction
Function TeleportYuslan()
Levelsystem.TeleportNPC(_00E_MC_YuslanRef, MQ07a_SC14_YoungMageMarker001)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_MC_YuslanRef, MQ07a_SC14_YoungMageMarker001)
EndFunction

@ -9,8 +9,8 @@ Function PrepareSC2()
EndFunction
Function PortToContainer()
Levelsystem.TeleportNPC(NQ21JungerArkanist, _00E_NPCDumpMarker)
Levelsystem.TeleportNPC(NQ21AdeligeFrau, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(NQ21JungerArkanist, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(NQ21AdeligeFrau, _00E_NPCDumpMarker)
SetObjectiveCompleted(50)
SetObjectiveDisplayed(60)
EndFunction

@ -77,7 +77,7 @@ EndFunction
Function PortPahtira()
Game.ShakeCamera(None,1.5,10)
AMBRumbleShakeGreybeards.Play(PlayerREF)
Levelsystem.TeleportNPC(Phatira, NQ23PortMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(Phatira, NQ23PortMarker)
_00E_BlackFadeSleepy.ApplyCrossFade()
Wait(8)
Phatira.Disable()

@ -132,11 +132,11 @@ Function StopFight()
if !_00E_NQ_G_06_MercenaryKilean_MageREF.IsDisabled()
_00E_NQ_G_06_MercenaryKilean_MageREF.StopCombat()
_00E_NQ_G_06_MercenaryKilean_MageREF.SetGhost(True)
Levelsystem.TeleportNPC(_00E_NQ_G_06_MercenaryKilean_MageREF, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_NQ_G_06_MercenaryKilean_MageREF, _00E_NPCDumpMarker)
ElseIf !_00E_NQ_G_06_MercenaryEnderalean_MageREF.IsDisabled()
_00E_NQ_G_06_MercenaryEnderalean_MageREF.StopCombat()
_00E_NQ_G_06_MercenaryEnderalean_MageREF.SetGhost(True)
Levelsystem.TeleportNPC(_00E_NQ_G_06_MercenaryEnderalean_MageREF, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(_00E_NQ_G_06_MercenaryEnderalean_MageREF, _00E_NPCDumpMarker)
EndIf
EndFunction

@ -35,8 +35,8 @@ _00E_FadeToBlackControl function GetFadeToBlackControl() Global
return (Game.GetForm(0x14) as _00E_PlayerFunctions).ControlRepository.FadeToBlackControl
endfunction
_00E_TeleportPlayer function GetPlayerTeleport() Global
return (Game.GetForm(0x14) as _00E_PlayerFunctions).ControlRepository.TeleportPlayer
_00E_TeleportControl function GetTeleportControl() Global
return (Game.GetForm(0x14) as _00E_PlayerFunctions).ControlRepository.TeleportControl
endfunction
_00E_SafeItemRemove function GetSafeItemRemove() Global

@ -317,62 +317,6 @@ Function PriestHeal()
EndFunction
Function TeleportNPC(Actor NPCToTeleport, ObjectReference TeleportTarget)
{Teleport an NPC, with animations and FX}
Weapon weap01 = NPCToTeleport.GetEquippedWeapon(0)
Weapon weap02 = NPCToTeleport.GetEquippedWeapon(1)
If weap01 != None
NPCToTeleport.UnEquipItem(weap01)
EndIf
If weap02 != None
NPCToTeleport.UnEquipItem(weap02)
EndIf
NPCToTeleport.PlayIdle(IdleMagic_01)
_00E_TeleportCastSound.Play(NPCToTeleport)
Wait(3)
if NPCToTeleport.GetActorBase().GetSex() == 0
NPCToTeleport.PlayIdle(IdleT02AscendMale)
Else
NPCToTeleport.PlayIdle(IdleT02AscendFemale)
EndIf
_00E_MagicProtectionSpellM.Play(NPCToTeleport)
Wait(4)
TimeFadeOut01FXS.Play(NPCToTeleport)
Wait(2)
_00E_A2_Ghostwalk_TeleportDoneSound.Play(NPCToTeleport)
ObjectReference TeleportFXMarker = NPCToTeleport.PlaceAtMe(XMarkerHeading, 1)
TeleportFXMarker.MoveTo(NPCToTeleport, 0.0, 0.0, 100.0)
ObjectReference FXExplosion = TeleportFXMarker.PlaceAtMe(_00E_TeleportExplosion, 1)
_00E_NPCTeleportExplosionIMOD.Apply()
Game.ShakeCamera(afStrength = 0.2)
NPCToTeleport.MoveTo(TeleportTarget)
Debug.sendAnimationEvent(NPCToTeleport, "IdleWebEnterInstant")
NPCToTeleport.setActorValue("Variable03", 5)
TimeFadeOut01FXS.Stop(NPCToTeleport)
If NPCToTeleport.Is3DLoaded()
TimeFadeIn01FXS.Play(NPCToTeleport)
EndIf
Wait(0.5)
NPCToTeleport.playidle(WebIdleExit)
Wait(1)
TimeFadeIn01FXS.Stop(NPCToTeleport)
NPCToTeleport.setActorValue("Variable03", 0)
If weap01 != None
NPCToTeleport.EquipItem(weap01)
EndIf
If weap02 != None
NPCToTeleport.EquipItem(weap02)
EndIf
Return
EndFunction
Function SetAllowIdleChatter(bool bAllow = False)
if !bAllow
@ -438,9 +382,6 @@ EndFunction
bool Property bAllowIdleChatter = True Auto Conditional Hidden ; Set this to true when NPCs shouldn't Idle around
float Property fCameraMaxDistance Auto Hidden
float Property fBaseGravity Auto Hidden
;Actor akPlayerCopy
ActorBase Property _00E_MC_Jespar Auto
ActorBase Property _00E_MC_Calia Auto
@ -470,8 +411,6 @@ ReferenceAlias Property Levelsystem_SympathyActor Auto
;--------------------------------------VISION-----------------------------------
VisualEffect Property MS04MemoryFXBody01VFX Auto
MusicType Property _00E_SilenceTransitionLowPriority02 Auto
MusicType Property _00E_Music_Special_MQ12b_Samael Auto
MusicType Property _00E_SilenceLongTransitionHighPriority Auto
@ -491,22 +430,8 @@ Keyword Property BrawlKeyword Auto
;-------------------------------------TELEPORT SCRIPT-----------------------------------
VisualEffect Property MGTeleportInEffect Auto
Actor Property PlayerREF Auto
ActorBase Property Player Auto
EffectShader Property TimeFadeOut01FXS Auto
EffectShader Property TimeFadeIn01FXS Auto
Explosion Property _00E_TeleportExplosion Auto
Idle Property WebIdleExit Auto
Idle Property IdleT02AscendMale Auto
Idle Property IdleT02AscendFemale Auto
Static Property XMarkerHeading Auto
Sound Property _00E_MagicProtectionSpellM Auto
Sound Property _00E_A2_Ghostwalk_TeleportDoneSound Auto
Sound Property _00E_TeleportCastSound Auto
Message Property _00E_Tutorial_Brawl Auto
Message Property _00E_Tutorial_Companions02_Jespar Auto
@ -548,18 +473,10 @@ Message Property _00E_Levelsystem_sEldritchBloodAttackVictimMarkingRemoved Auto
Message Property _00E_Levelsystem_sEldritchBloodVictimMarkingRemoved Auto
Message Property _00E_Levelsystem_sGhostwalkEnemyTooCloseToWall Auto
Idle Property IdleMagic_01 Auto
Spell Property _00E_PriestCureDiseases Auto
GlobalVariable Property _00E_HeadtrackGlobal Auto
ImageSpaceModifier Property _00E_NPCTeleportExplosionIMOD Auto
SoundCategory Property AudioCategoryAMB Auto
SoundCategory Property AudioCategoryAMBr Auto
SoundCategory Property AudioCategorySFX Auto
Static Property XMarker Auto
bool bUnlockedSynergyAchievement

@ -11,9 +11,9 @@ Event OnEffectStart (Actor akTarket, Actor akCaster)
MAGVampireSunlight.Play(PlayerREF)
PlayerREF.AddItem(_01E_TeleportrolleSonnentempel, 1)
Elseif ((_00E_TeleportGlobal.GetValueInt() == 1) && (MQ12b.GetStage() == 115) ||(MQ12b.GetStage() == 120))
_00E_PlayerFunctions.GetPlayerTeleport().TeleportPlayer(_00E_TeleportMarker_Suntemple)
_00E_PlayerFunctions.GetTeleportControl().TeleportPlayer(_00E_TeleportMarker_Suntemple)
ElseIf (_00E_TeleportGlobal.GetValueInt() == 0)
_00E_PlayerFunctions.GetPlayerTeleport().TeleportPlayer(_00E_TeleportMarker_Suntemple)
_00E_PlayerFunctions.GetTeleportControl().TeleportPlayer(_00E_TeleportMarker_Suntemple)
EndIf
EndEvent

@ -29,7 +29,7 @@ Event OnEffectStart (Actor akTarket, Actor akCaster)
If __Config_TeleportTargetMarker.GetParentCell() == ability_container
_00E_Teleport_sNoTargetMarked.Show()
Else
_00E_PlayerFunctions.GetPlayerTeleport().TeleportPlayer(__Config_TeleportTargetMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportPlayer(__Config_TeleportTargetMarker)
EndIf
EndIf

@ -6,7 +6,7 @@ Scriptname TIF__0102EE99 Extends TopicInfo Hidden
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
Levelsystem.TeleportNPC(FS_EnvironmentScene05_RhalaimREF, _00E_NPCDumpMarker)
_00E_PlayerFunctions.GetTeleportControl().TeleportNPC(FS_EnvironmentScene05_RhalaimREF, _00E_NPCDumpMarker)
GetOwningQuest().SetStage(10)
;END CODE
EndFunction

Loading…
Cancel
Save