Okay, I'm having a problem.
I've been doing the chasing system this way:
if (player.x - spearman.x) > 0 --> spearman.x += 1; set mirrored.
if (player.x - spearman.x) <= 0 --> spearman.x -= 1; set not mirrored.
Same thing done with Y coord, as I'm doing an isometric game.
This way, it compared positions, and the enemy sprite turns accordingly towards my character.
Of course, doing the "set speed 0" thing won't work, as the enemy will still be moving by coordinates.
I guess I have to do something like this:
if (player.x - spearman.x) && (Distance(player.x,player.y,spearman.x, spearman.y) >= 30) > 0 --> spearman.x += 1; set mirrored.
This way, it will only come to me when it's further than 30px from me, I guess.
However, I can't manage to get the syntax correctly. >.<
EDIT: Nevermind. Think I got it working :D