Jump to content

Is there a way to distinguish FastTravel from teleporting (i.e. MoveTo)?


Recommended Posts

In particular, for application in some follower Package.

 

IsPlayerMovingIntoNewSpace does detect any loadscreen i guess, useless.

 

There's a curious Condition IsTimePassing, but exact meaning is unknown.

 

ps. Well, anyway it's pointless i guess, because even if a char runs Sandbox around player and is not a Teammate, neither Treated as follower, then still teleports by game's consideration instead of keeping slow traveling, even if directly instructed to Travel to said Sandbox location, while outside of it. Though just curious. Ehm, or that's unresolved still side effect in script for now, nvm..

Edited by hereami
Link to comment
Share on other sites

There is no direct method, but an SKK workaround;

Bool bFastTravelMenu = false
Self.RegisterForPlayerTeleport()
Self.RegisterForMenuOpenCloseEvent("PipboyMenu")

;************************************************************

Event OnMenuOpenCloseEvent(string asMenuName, bool abOpening)
If (asMenuName == "PipboyMenu")
	If (abOpening == True)
		bFastTravelMenu = True

	ElseIf (abOpening == False)
		Utility.Wait(1.0) 		;for fast travel to happen 
		bFastTravelMenu = False
	EndIf
EndIf
EndEvent

;************************************************************

Event OnPlayerTeleport()
If (bFastTravelMenu == TRUE) 
   ;do fast travel stuff
   bFastTravelMenu = FALSE
EndIf

;************************************************************

Only consideration is if the player uses an internal/external load door within 1 second of closing the PipBoy that will be detected as fast travel.

Link to comment
Share on other sites

Cool, thanks. Sadly that no easy native way. IsTimePassing stays intriguing.

 

So, we still need a heavy-weight function of GameTime / Distance and pre/post-processing to determine if that was a teleport or a fair trip initiated and no way to distinguish while in progress for application in a Package.

A bypass then could be something involving RemoveBeforeFastTravel keyword i think, but only if that's processed by actual FastTravel and not by every MoveTo. Gotta check out, doubtful though.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...