It will work, I'm sure. Swap to one char, note his position, swap to the other char, note his position. Compare the two and move accordingly.
Eliminating the finditem is a great idea. Swapping is much quicker. I'm going to work this idea into my movement. I also want to go back to a position oriented system, now it's based on whatever direction the Primary char is facing, which *could* be a problem.