Actually it's simpler than that, the fix is to change the line:
rem set it at a random position in our world
setSpritePosition(spr,random(0,100),random(0,100))
to "byOffset" like this:
rem set it at a random position in our world
setSpritePositionByOffset(spr,random(0,100),random(0,100))
Because the sprites are not being positioned "by offset" the parallax offset is not making any difference to the sprite's position.
Hodgey's solution is right too but mine would run faster (if only microscopically
)
this.mess = abs(sin(times#))