For the 9 points, just set 9(n) imagepoints , and use the expressions Sprite.ImagePointX(n) & Sprite.ImagePointY(n) as the positions to find a path to. Pick n in a choose(...,n)
https://www.scirra.com/manual/63/image-points
Set the obstacles on 'custom' in the pathfinding behaviour. And add obstacles, if you need to, in actions. And do use the 'create obstacle map' at least once somewhere, if you have obstacles.
The object will stop moving when reaching end of path, if it does not, you probaly let it find a path each tick. Or youre pathfinding has a problem.
If i may say some things that i personal dislike in your project. They are just personal taste. Just gentle tips:
Plz, name you sprites. Its difficult to look into a capX where everything is named 'sprite(n)'.
You can as well after the "direction = 1" condition move the sprite. Dont need the second 'action in between agent'.
When you enter the battle arena, all those blue solids still count as obstacles when finding a path. Needs more time to calculate, can lead to unecpected behaviour. Since now you have solids set as obstacles in the path behaviour.
All the blue obstacles are so many collission calculations. You can speed things up by 600% when you bring them in a tilemap.
Not that my opion counts in anyway or any other way on this forum.
Plz yell if you still have problems.