Canceled path because a new one was requested - how to know when it's finished?

Is there a way to check if a path being requested by a seeker is done calculating? I’ve tried looking at some of the obvious functions but they always return complete even though I’m getting an error message back telling me it’s not complete.

The general way to do it that I can see is to Create your own OnPathComplete method and pass it into the .StartPath function.
Then you’ll need some sort of bool called IsFindingPath that you set to true just before you call StartPath and then set to false in the OnPathComplete method.


There is also the Seeker.IsDone method which you can use.
The “Canceled path because a new one was requested” is logged when you first request a path through a seeker, then while that path was being calculated you request another one, since seekers are built for single characters which will always follow a single path, it finds it unnecessary to keep calculating the old path since you have requested a new one, so it cancels the old one. The old path will not cause any OnPathComplete callbacks to be called.

Even if a path couldn’t be fully calculated for some reason (no valid path exists, or similar), it is is still considered “Completed”, though it will have an error (path.error).

Thanks for the responses - both solutions worked fine, went with Aron’s because its more core.