If you had bothered to check my script, you would see I had done exactly that. If you want to fix this, then you will need a way to activate my script in a way the still allows the player to move if you do not use the 'applymovement 0xFF @pointer' bits. The map to map script worked on my script, just as long as you placed an overworld on every map. I have managed to solve many of these problems, yet I am completely stumped when it comes to removing the loop.
That's your problem, if you remove the loop, the script will no longer work for you because of how you wrote it.
You'll need to make your script branch off once movement of the second sprite is completed, and end the script.
The other thing wrong, is that as soon as you do that, the script will most likely be really buggy... actually, I guarantee it will be buggy, and broken. And this script will take up some serious space in your hack. (The script itself, and then like 9 or more bytes for every map you apply it to.
Not to mention have you made a workaround for when the player jumps off a cliff?
What about running speed? (If you are running, the sprite won't change speed with you, it will cause you to stop moving for a second or two while it walks.)
Don't even get me started on biking... (Same as running, more severe.)
Flight would not be bad, except when you fly, you leave your pokemon behind momentarily.
Surfing? No way buddy, not only would the pokemon try to follow you in the water, but it would be left behind by one tile.
And what about interfering scripts?
There are simply too many factors in place for your script to work under ANY condition.
And besides, you require JPAN's patch for it, we try to find solutions for people that don't use it, so that it will be available to ANYONE.
This is a job for ASM, I'm only learning ASM at the moment, so I am of little use... I can read it, I just don't know exactly how to apply it.
*cough*
Would be helpful if there was another ASM tutorial...*cough*
[EDIT] I just realized... How would your script work for the player walking down onto another map or from the left, Since (I assume) the sprite X/Y coordinates are stored in an UNSIGNED byte, wouldn't that mean that there can't be a -1 for your sprite to rest on? Or does it not require a signed byte? I have not tested this at all, but I knew it was a problem from the start.
(For reference, an unsigned byte has a range of 0 to 255, whereas a signed byte has a range from -127 to 127)