Class FleePath Extends RandomPath
Returns a path heading away from a specified point to avoid.
The search will terminate when G > length (passed to the constructor) + FleePath.spread.
Can be used to make an AI to flee from an enemy (cannot guarantee that it will not be forced into corners though :D )
// Call a FleePath call like this, assumes that a Seeker is attached to the GameObject
Vector3 thePointToFleeFrom = Vector3.zero;
// The path will be returned when the path is over a specified length (or more accurately when the traversal cost is greater than a specified value).
// A score of 1000 is approximately equal to the cost of moving one world unit.
int theGScoreToStopAt = 10000;
// Create a path object
FleePath path = FleePath.Construct (transform.position, thePointToFleeFrom, theGScoreToStopAt);
// This is how strongly it will try to flee, if you set it to 0 it will behave like a RandomPath
path.aimStrength = 1;
// Determines the variation in path length that is allowed
path.spread = 4000;
// Get the Seeker component which must be attached to this GameObject
Seeker seeker = GetComponent<Seeker>();
// Start the path and return the result to MyCompleteFunction (which is a function you have to define, the name can of course be changed)
seeker.StartPath(path, MyCompleteFunction);
This is an A* Pathfinding Project Pro feature only. This function/class/variable might not exist in the Free version of the A* Pathfinding Project or the functionality might be limited.
The Pro version can be bought here
Public Methods
Inherited Public Members
Current state of the path.
Opens a connection between two nodes during the A* search.
Burst-compiled internal implementation of OpenCandidateConnection.
Open a connection to the temporary end node if necessary.
Returns the state of the path in the pathfinding pipeline.
Paths use this to skip adding nodes to the search heap.
An aim can be used to guide the pathfinder to not take totally random paths.
Calculate partial path if the target node cannot be reached.
Callback to call when the path is complete.
Total cost of this path as used by the pathfinding algorithm.
How long it took to calculate this path in milliseconds.
Which graph tags are traversable.
End node of the path.
End point of the path.
True if this path type has a well defined end point, even before calculation starts.
True if this path type has a well defined end point, even before calculation starts.
Optional ending condition for the path.
If the path failed, this is true.
Additional info on why a path failed.
Determines which heuristic to use.
Scale of the heuristic values.
Immediate callback to call when the path is complete.
Constraint for how to search for nodes.
End Point exactly as in the path request.
Start Point exactly as in the path request.
ID of this path.
G score to stop searching at.
Number of nodes this path has searched.
All G scores between searchLength and searchLength+spread are valid end points, a random one of them is chosen as the final point.
Start node of the path.
Start point of the path.
Penalties for each tag.
Provides additional traversal information to a path request.
Holds the (possibly post-processed) path as a Vector3 list.
Private/Protected Members
Calculates the path until completed or until the time has passed targetTick.
Writes text shared for all overrides of DebugString to the string builder.
Writes text shared for all overrides of DebugString to the string builder.
Applies a special case for grid nodes.
Called when a valid node has been found for the end of the path.
List of zeroes to use as default tag penalties.
Target to use for H score calculation.
True if the Reset function has been called.
Determines if a search for an end node should be done.
Determines if a search for an end node should be done.
Target to use for H score calculations.
The tag penalties that are actually used.
Current best target for the partial path.
Data for the thread calculating this path.