So as long as it doesn't detect an obstacle it continues to go left... sounds like its doing what your asking of it.
How are you stopping it?
Have you tried using System:Trigger Once in the event conditions?
The thing that is wrong is not the collision detection, but the movement by itself.
The movement input keys only work if the object is not moving. And the movement only happens a single 32pixels at time to the left if there is no offset obstacle 32 pixels to the left of it. This would
Since it checks for obstacles before moving and the way the game will work, there will be really no need to check for collisions outside of this scope I believe.
Couldn't you, instead of "Xdest=Characters.x" use "XDest<Characters.x + 2" (2 or 4 or whatever works)
then set the Xdest to Characters.x
It didn't work...
But this gave me an idea, maybe it is the way the function works... perhaps I should use a "while"? I'm gonna try some new ideas.
But, does anyone know how to disable the pixel interpolation for the movement, so the smallest distance it can travel and detects at the time is 1pixel ?