I'm not sure if it's a bug, but i noticed that RunAwayFrom(Self()) or RunAwayFromLocation(Self().x, Self().y) aren't working properly.
When using this function, npc does a move toward (x, y+1) field.
Ok. Now, lets block this field, so npc can't go there. This time npc goes to (x-1, y+1) field. Block this one too, and npc goes to (x+1, y+1) field. Block again, and npc goes to (x-1, y). If we block this one, npc will go to (x+1, y). Again, block, and npc lands on (x-1, y-1). Once more, block this field, and npc goes to (x+1, y-1). And the last one, block (x+1, y-1) field and npc... does nothing. He still has (x, y-1) field open, but he doesn't move there. Why?
PS. Just to be clear, I don't need help solving problem with this, because it's easy. I'm just reporting a bug - if it is a bug. If not, then 'it wasn't me'
