Path

The Path component will be inserted to an entity when after a path is found. It is also returned when calling the manual pathfinding methods on Grid.

You can use it draw paths in your game, for example when highlighting tiles for a path in a turn based game.

There are a few notable methods on Path.

path() -> &[UVec3]

Returns an array of all positions in the path.

cost() -> u32

The full cost of the path. It is the sum of all movement costs for each cell in the grid that the path crosses over.

len() -> usize

The total number of positions currently in the path.

next() -> Option<UVec3>

Returns the next position in the path without removing it. Very useful in animation systems to play a different animation based on tile transition for example, playing a jumping animation when the next position is a higher z depth.

pop() -> Option<UVec3>

Removes and returns the next position of the path.

See the crate docs for more. A couple of notable ones are reverse() and translate_by(offset)