So this means that the MoveAction isn’t getting any valid positions…
Ok, after a fourth pass through your Pathfinding, I noticed this…
What’s likely happening is that you’re short circuting th pathfinding when the path is Walkable, when you really want to short circuit it when the tile is not (!) walkable.
Try this:
Those pesky ! or missing ! can make or break a good algorithm.