Hi,
I'm done trying to solve this on my own... That's 2 sleepless nights now...I need help, guys.
I'm trying to make a sky sprite move sideways, right to left. The idea was to have two screen-sized objects- one starting its loop at x=0, and one just before, at x=800. When the first one reaches x== -800, it's supposed to move directly to x == 800 and then continue moving left. And the same with sky object 2. Of course, the sprite is designed the way that it seamlessly blends into another one. But I end up with this empty gap between them after just the first loop....
Here's the sprite I'm using:

I started off with this code (oS1 = sky sprite 1m oS2 = sprite 2) :
function room_AfterFadeIn()
{
oS1.Move(-800, 536, 3, eNoBlock, eAnywhere);
oS2.Move(-800, 536, 3, eNoBlock, eAnywhere);
}
function room_RepExec()
{
if (oS1.X == -800){
oS1.X=800;
oS1.Move(-800, 536, 3, eNoBlock, eAnywhere);
}
if (oS2.X == -800){
oS2.X=800;
oS2.Move(-800, 536, 3, eNoBlock, eAnywhere);
}
}
Please, have you any idea what I'm doing wrong? Is moving objects directly to the other side of the screen causing some sort of delay that creates the gap? But if so, the gap should be growing with each loop, and it isn't.... Perhaps you've got a better idea how to do it?