Hey man. The script is working pretty well. There's a couple problems though...
I don't think the transitions are set up in the right place. FIrst of all, I'm not sure how it does this, but with my maps 100x100 it transitions at the coordinates (25, 25) It's really hard to explain it it's like on the map, all the squares from (25, 0) to (25, 99) are considered the edge of the map. same goes for the Y axis. From (0, 25) to (99, 25) considered to be the edge of the map also. Here's the freaky thing. I kinda fixed it by modifying my numbers a little bit. I can kinda understand why it did this also...
It's my understanding that this script would work for someone that uses no pixel movement. But for me, I use a pixel movement of 2. If you think about it, thats 4 moves per square, and the points (25, 25) are actually 4 times less than the actual size of the map 100x100. so I experimented and found that, when I use a pixel movement of 2, if I change the dimensions specified in the script for the map size from 100x100 to 400x400 it fixed it. It kinda fixed it, but it didn't because The part of the character that the x and y coordinates is tracked by can't be on the coordinate at the right and bottom of the map, so I made the dimensions 397x397. This gave me the ability to transition actually at the edge of the map, where it was supposed to be. I don't think it's supposed to be like that though. I think it's supposed to be where if you have a pixel movement rate of 2, it should still transition at the edges of the map when I specify the dimensions at 100x100. It might just be a minor adjustment. I hope that makes sense, reading it to myself, I have a hard time understanding it. It's hard for me to explain it lol sorry...
The second error. For now, I kept the dimensions at 397x397 just so I could test out if the teleportations were working out perfectly. The area it teleports me to is correct, but the position inside the area is wierd. When I exit the map to the right, I should end up on the left of the next map, still retaining my Y-coordinate. The same goes to all the other directions. Not only that, but the screen isn't on the player. It's in the middle of nowhere not centered over me. Somehow, I think pixel movement has effected how the transfer system works also. Hope you can fix this. In the meantime, I'll make a dummy project without pixel movement and just regular, and see if it works perfectly, that way we will know that the pixel movement is what we need to look at. Thanks dude. Hope the errors can be fixed. =D