151 lines
3.7 KiB
Plaintext
151 lines
3.7 KiB
Plaintext
Scriptname _00E_TeleportControl extends Quest Hidden
|
|
|
|
import Utility
|
|
|
|
Function TeleportPlayer(ObjectReference TeleportTarget)
|
|
|
|
Game.DisablePlayerControls(abCamSwitch = true)
|
|
Wait(3)
|
|
_00E_EquipControl.SheatheWeapon(PlayerREF)
|
|
TeleportIn()
|
|
PlayerREF.MoveTo(TeleportTarget)
|
|
TeleportOut()
|
|
|
|
_00E_Func_RefreshFace.RefreshFace()
|
|
|
|
EndFunction
|
|
|
|
Function TeleportIn()
|
|
|
|
Game.ForceThirdPerson()
|
|
|
|
if Player.GetSex() == 0
|
|
PlayerREF.PlayIdle(IdleT02AscendMale)
|
|
Else
|
|
PlayerREF.PlayIdle(IdleT02AscendFemale)
|
|
EndIf
|
|
|
|
_00E_MagicProtectionSpellM.Play(PlayerREF)
|
|
Wait(2.7)
|
|
TimeFadeOut01FXS.Play(PlayerREF)
|
|
Wait(1.3)
|
|
_00E_TeleportImod.Apply()
|
|
Wait(2)
|
|
|
|
EndFunction
|
|
|
|
Function TeleportOut()
|
|
|
|
_00E_A2_Ghostwalk_TeleportDoneSound.Play(playerREF)
|
|
PlayerREF.PlaceAtMe(_00E_NPCOorbayaTeleportExplosionBlue, 1)
|
|
Debug.sendAnimationEvent(playerREF, "IdleWebEnterInstant")
|
|
PlayerREF.setActorValue("Variable03", 5)
|
|
TimeFadeOut01FXS.Stop(PlayerREF)
|
|
TimeFadeIn01FXS.Play(PlayerREF)
|
|
Wait(0.5)
|
|
PlayerREF.playidle(WebIdleExit)
|
|
TimeFadeIn01FXS.Stop(PlayerREF)
|
|
PlayerREF.setActorValue("Variable03", 0)
|
|
PlayerREF.DrawWeapon()
|
|
Wait(3)
|
|
Debug.SendAnimationEvent(PlayerREF, "IdleForceDefaultState")
|
|
PlayerREF.PlayIdle(IdleForceDefaultState)
|
|
PlayerREF.setActorValue("Variable03", 0)
|
|
Game.EnablePlayerControls()
|
|
_FS_Phasmalist_ControlQuest.MoveApparitionToPlayer()
|
|
RegisterForSingleUpdate(2)
|
|
|
|
EndFunction
|
|
|
|
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
|
|
|
|
Idle Property IdleT02AscendFemale Auto
|
|
|
|
Sound Property _00E_MagicProtectionSpellM Auto
|
|
|
|
EffectShader Property TimeFadeOut01FXS Auto
|
|
|
|
ImageSpaceModifier Property _00E_TeleportImod Auto
|
|
|
|
Sound Property _00E_A2_Ghostwalk_TeleportDoneSound Auto
|
|
|
|
Explosion Property _00E_NPCOorbayaTeleportExplosionBlue Auto
|
|
|
|
EffectShader Property TimeFadeIn01FXS Auto
|
|
|
|
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
|