Hello again @Kyatric
It has been a while and I did progress somehow on my own, thanks to your and @Yann's directions of course. Now I'm trying to spawn preview sprites that indicate all the possible movement locations for the starting sprite, limited by obstacles and range. I have a crude working example of that but I'm still having several problems:
I'd like to detect collision between sprites that spawn on top of each other and kill the excess ones or even better, not spawn preview sprites at all if one already exists on target location but I've been unsuccessful to have such collision recognized by the events system. I still have an idea to add "occupied" x and y locations to an array and blacklist them from spawning but I couldn't get it working either. It has been several hours and despite the apparent simplicity of the matter it seems futile to keep trying all by myself.
Another problem is that the preview sprites are sometimes placed over obstacles. A workaround would be to keep them on different layers or z-ordering but this doesn't seem to be an intended behaviour.
The project itself has gotten a bit complicated therefore I removed the unnecessary parts and created this .capx
with the bare minimums to explain the problem.
PS: I'm also open to criticisms regarding use of arrays. Thanks! :)