G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
UGothicNavigationSystem Class Reference

Static Public Member Functions

Static Functions
static UClass StaticClass ()
Static Public Member Functions inherited from UNavigationSystemV1
static bool CanAnyMovmentModeTargetBeReached (const AGothicCharacter Character, const AGothicCharacter Target, float32 ReachRangeXY, float32 ReachRangeZ, bool bDebugDraw, FVector &OutWalkableCharacterLocation)
 When following TargetCharacter, is the Target within given range at the closest end location? Character does not need a complete path to Target, but that last path point needs to be within ReachRange on XY and both need to be within similar height respective to their character height.
static bool CanGroundedTargetBeReached (const AGothicCharacter Character, const AGothicCharacter Target, float32 ReachRangeXY, float32 ReachRangeZ, bool bDebugDraw, FVector &OutWalkableCharacterLocation)
 When following TargetCharacter, is the Target within given range at the closest end location? This is intended use for a Target that is moving on ground Character does not need a complete path to Target, but that last path point needs to be within ReachRange on XY and both need to be within similar height respective to their character height.
static bool CanLocationBeReached3D (const AGothicCharacter Character, FVector Location3D, float32 ReachRangeXY, float32 ReachRangeZ, bool bFailWhenLocationOnDifferentFloor, bool bDebugDraw, FVector &FoundNavLocation)
static bool CanMoveInDirection (const AGothicCharacter Character, FVector FromLocation, FVector MoveDirection, float32 MoveDistance)
 Can someone move in a straight line from the given location in direction without leaving NavMesh?
static bool CanReachLocationWithoutNavLinks (const AGothicCharacter Character, FVector StartNavAgentLocation, FVector EndLocation, float32 ReachDistance=- 1.000000)
 Can the character reach EndLocation on the closest path without using a NavLink? Character does not need to stand on NavMesh when has a last-valid-navlocation.
static bool CanTargetBeReached3D (const AGothicCharacter Character, const AGothicCharacter Target, float32 ReachRangeXY, float32 ReachRangeZ, bool bDebugDraw, FVector &OutAccessableCharacterLocation)
 When following TargetCharacter, is the Target within given range at the closest end location? This takes any combination of Target and Character MovementModes and situations into account. Be aware it does not automatically use the HalfHeight/Radius of characters. Add them to ReachRangeXY and ReachRangeZ if you require it. If You pass ReachRangeZ 0 and ReachRangeXY 0 that would mean the actor locations of Target + Character would be the same to return a success.
static bool DoesPathExist (const AGothicCharacter Character, FVector StartLocation, FVector EndLocation)
 Returns true, if there is a path between the two given locations. Uses default query extent in project settings.
static bool DoesPathExistCustomAgentSize (const AGothicCharacter Character, FVector StartLocation, FVector EndLocation, float32 AgentRadius, float32 AgentHeight)
 Returns true, if there is a path between the two given locations. Custom extent for querying.
static bool DoesPathExistForUnspawnedCharacter (const UObject WorldContext, const USpawnAIAgentDefinition SpawnDefinition, FVector StartLocation, FVector EndLocation)
static bool DoesPathExistWithinCostLimit (const AGothicCharacter Character, FVector StartLocation, FVector EndLocation, float32 CostLimit)
 Returns true, if there is a path between the two given locations within the given pathfinding cost limit.
static bool DoesPathExistWithinLengthLimit (const AGothicCharacter Character, FVector StartLocation, FVector EndLocation, float32 LengthLimit, float32 &OutPathLength)
 Returns true if there is a path that is shorter than the given LengthLimit.
static float32 GetDistanceUntilMoveObstructed (const AGothicCharacter Character, FVector FromLocation, FVector MoveDirection, float32 MoveDistance)
 Try moving in MoveDirection on NavMesh.
static FVector GetNavigationDatasDefaultQueryExtent ()
static FVector GetNavLocationFrom3DLocation (const AGothicCharacter Character, FVector Location3D)
static bool IsCharacterInRangeOfLocation (const AGothicCharacter Character, const AGothicCharacter OptionalTarget, FVector CharacterLocationToReachOutFrom, FVector TargetLocation, float32 ReachRangeXY, float32 ReachRangeZ, bool bDebugDraw=false)
 When character is standing at given location, is he within ReachRange and are both at similar height?
static bool ProjectCharacterForClosestNavMeshZ (const AGothicCharacter Character, FVector ReferenceCharacterLocation, FVector &OutLocation, FVector Extent=FVector())
 Project the top, middle and bottom location of characters SimpleCollisions and picks the location that is closest to the given ReferenceLocation.
static bool ProjectPoint (const AGothicCharacter Character, FVector Location, FVector &OutLocation)
 Is point on NavMesh?
static bool ProjectPointAnyNavData (const AActor PotentialCharacterStateProvider, FVector Location, FVector &OutLocation, FVector ExtentMultiplier)
 Is point on NavMesh? Tries to retrieve character from given actor to find it's NavMesh and Filter. If this is not possible, location is projected onto MainNavData.
static bool ProjectPointCustomExtentForUnspawnedCharacter (const UObject WorldContext, const USpawnAIAgentDefinition SpawnDefinition, FVector Location, FVector &OutLocation, FVector Extent)
static bool ProjectPointExtent (const AGothicCharacter Character, FVector Location, FVector &OutLocation, FVector Extent)
 Is point on NavMesh?
static bool TryGetRandomNavigablePointInRadius (const AGothicCharacterState CharacterState, FVector Center, float32 Radius, FVector &OutPoint)
 Returns true when a point on NavMesh or Waynet is found within the given radius around center.
static UClass StaticClass ()
static bool GetRandomReachablePointInRadius (FVector Origin, FVector &RandomLocation, float32 Radius, ANavigationData NavData=nullptr, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr)
 Generates a random location reachable from given Origin location.
static bool NavigationRaycast (FVector RayStart, FVector RayEnd, FVector &HitLocation, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr, AController Querier=nullptr)
 Performs navigation raycast on NavigationData appropriate for given Querier.
static UNavigationSystemV1 GetNavigationSystem ()
 Blueprint functions.
static ENavigationQueryResult GetPathCost (FVector PathStart, FVector PathEnd, float &PathCost, ANavigationData NavData=nullptr, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr)
 Potentially expensive. Use with caution. Consider using UPathFollowingComponent::GetRemainingPathCost instead.
static ENavigationQueryResult GetPathLength (FVector PathStart, FVector PathEnd, float &PathLength, ANavigationData NavData=nullptr, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr)
 Potentially expensive. Use with caution.
static bool IsNavigationBeingBuilt ()
static bool GetRandomLocationInNavigableRadius (FVector Origin, FVector &RandomLocation, float32 Radius, ANavigationData NavData=nullptr, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr)
 Generates a random location in navigable space within given radius of Origin.
static bool ProjectPointToNavigation (FVector Point, FVector &ProjectedLocation, ANavigationData NavData, TSubclassOf< UNavigationQueryFilter > FilterClass, const FVector QueryExtent=FVector())
 Project a point onto the NavigationData.
static UNavigationPath FindPathToActorSynchronously (FVector PathStart, AActor GoalActor, float32 TetherDistance=50.000000, AActor PathfindingContext=nullptr, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr)
 Finds path instantly, in a FindPath Synchronously. Main advantage over FindPathToLocationSynchronously is that the resulting path will automatically get updated if goal actor moves more than TetherDistance away from last path node.
static UNavigationPath FindPathToLocationSynchronously (FVector PathStart, FVector PathEnd, AActor PathfindingContext=nullptr, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr)
 Finds path instantly, in a FindPath Synchronously.
static bool IsNavigationBeingBuiltOrLocked ()
static bool GetRandomPointInNavigableRadius (FVector Origin, FVector &RandomLocation, float32 Radius, ANavigationData NavData=nullptr, TSubclassOf< UNavigationQueryFilter > FilterClass=nullptr)
Static Public Member Functions inherited from UNavigationSystemBase
static UClass StaticClass ()
Static Public Member Functions inherited from UObject
static UClass StaticClass ()

Additional Inherited Members

Public Member Functions inherited from UNavigationSystemV1
void SetGeometryGatheringMode (ENavDataGatheringModeConfig NewMode)
void SetbInitialBuildingLocked (bool Value)
 if set to true will result navigation system not rebuild navigation until a call to ReleaseInitialBuildingLock() is called. Does not influence editor-time generation (i.e. does influence PIE and Game). Defaults to false.
void SetbAllowClientSideNavigation (bool Value)
 If false, will not create nav collision when connecting as a client.
void SetbSkipAgentHeightCheckWhenPickingNavData (bool Value)
 false by default, if set to true will result in not caring about nav agent height when trying to match navigation data to passed in nav agent
void SetbShouldDiscardSubLevelNavData (bool Value)
 If true, games should ignore navigation data inside loaded sublevels.
void SetbGenerateNavigationOnlyAroundNavigationInvokers (bool Value)
 If set to true navigation will be generated only around registered "navigation enforcers" This has a range of consequences (including how navigation octree operates) so it needs to be a conscious decision. Once enabled results in whole world being navigable. See: RegisterNavigationInvoker.
void SetbTickWhilePaused (bool Value)
 If true, will update navigation even when the game is paused.
void SetbAutoCreateNavigationData (bool Value)
 Should navigation system spawn default Navigation Data when there's none and there are navigation bounds present?
void SetbSpawnNavDataInNavBoundsLevel (bool Value)
 If true will try to spawn the navigation data instance in the sublevel with navigation bounds, if false it will spawn in the persistent level.
void OnNavigationBoundsUpdated (ANavMeshBoundsVolume NavVolume)
 @todo document
void RegisterNavigationInvoker (AActor Invoker, float32 TileGenerationRadius=3000.000000, float32 TileRemovalRadius=5000.000000)
 Registers given actor as a "navigation enforcer" which means navigation system will make sure navigation is being generated in specified radius around it. Note:: you need NavigationSystem's GenerateNavigationOnlyAroundNavigationInvokers to be set to true to take advantage of this feature.
void ResetMaxSimultaneousTileGenerationJobsCount ()
 Brings limit of simultaneous navmesh tile generation jobs back to Project Setting's default value.
void SetMaxSimultaneousTileGenerationJobsCount (int MaxNumberOfJobs)
 will limit the number of simultaneously running navmesh tile generation jobs to specified number.
void UnregisterNavigationInvoker (AActor Invoker)
 Removes given actor from the list of active navigation enforcers. See: RegisterNavigationInvoker for more details.
bool ReplaceAreaInOctreeData (const UObject Object, TSubclassOf< UNavArea > OldArea, TSubclassOf< UNavArea > NewArea)
Public Member Functions inherited from UObject
bool MarkPackageDirty () const
void RemoveFromRoot ()
bool GetIsRooted () const
bool IsTransient () const
bool Modify (bool bAlwaysMarkDirty=true)
void SetTransactional (bool bTransactional)
bool IsSupportedForNetworking () const
UClass GetClass () const
UObject GetOuter () const
UObject GetTypedOuter (TSubclassOf< UObject > Target) const
 Traverses the outer chain searching for the next object of a certain type.
UPackage GetOutermost () const
UPackage GetPackage () const
void AddToRoot ()
UWorld GetWorld () const
FName GetName () const
FString GetFullName (const UObject StopOuter=nullptr) const
FString GetPathName (const UObject StopOuter=nullptr) const
bool IsA (const UClass Class) const
 Returns true if this object is of the specified type, or a child of that type.
void SaveConfig ()
void LoadConfig ()
void ReloadConfig ()
void CopyScriptPropertiesFrom (const UObject OtherObject)
void opCast (?&Address) const
FString ToString () const
Public Attributes inherited from UNavigationSystemV1
TArray< FNavDataConfig > SupportedAgents
 List of agents types supported by this navigation system.
FNavAgentSelector SupportedAgentsMask
 NavigationSystem's properties in Project Settings define all possible supported agents, but a specific navigation system can choose to support only a subset of agents. Set via NavigationSystemConfig.
TSoftClassPtr< UCrowdManagerBase > CrowdManagerClass
FName DefaultAgentName
 If not None indicates which of navigation datas and supported agents are going to be used as the default ones. If navigation agent of this type does not exist or is not enabled then the first available nav data will be used as the default one.
float32 ActiveTilesUpdateInterval
 Minimal time, in seconds, between active tiles set update.
float InvokersMaximumDistanceFromSeed
 When in use, invokers farther away from any invoker seed will be ignored (set to -1 to disable).
float32 GatheringNavModifiersWarningLimitTime
 -1.0f by default, if set to a positive value, all calls to GetNavigationData will be timed and compared to it. Over the limit calls will be logged as warnings. In seconds. Non-shipping build only.
int GeometryExportTriangleCountWarningThreshold
 Warnings are logged if exporting the navigation collision for an object exceed this triangle count. Use -1 to disable.
float32 DirtyAreaWarningSizeThreshold
 -1 by default, if set to a positive value dirty areas with any dimensions in 2d over the threshold created at runtime will be logged
ENavDataGatheringModeConfig DataGatheringMode
 Sets how navigation data should be gathered when building collision information.
FOnNavDataGenericEvent OnNavigationGenerationFinishedDelegate
Public Attributes inherited from UObject
const UClass Class
const UObject Outer
const UPackage Outermost
const UPackage Package
const UWorld World
const FName Name
const bool IsRooted

Member Function Documentation

◆ StaticClass()

UClass StaticClass ( )
static