But why are you creating roads every tick?
The straight parts of the road can be done with single stretched rectangle sprites, and the rounded turns can be done by putting a circle sprite at the turns. It ends up looking the same as in the video of your game anyway, plus only uses maybe 20 or so sprites at any given time.
You shouldn't be generating road by time intervals anyway. Just add more as the end of the road gets too close to the top of the screen.
Destroying the road should be as simple as just checking when the y is below the bottom of the screen and it's off screen.
At any rate this is how any similar games you've seen would do it.
In the example the view is fixed and all the sprites are moved down. You can do the opposite, leave everything fixed and just scroll down. The only real change other than not moving the road would be to to reference the top and bottom in the view instead of using fixed y positions.
So instead of y>-100 use y>viewtop-100
and instead of y>480+100 use y>viewbottom+100
I apologize if that's not the names of those expressions, but the actual one's should be similar.
RJ...always nice to hear from you and your solution is also very close to my requirement. Best part is less cpu consumption that makes a lot of difference. Also, as kriand stated it is going out of layout most of time I am facing the issue. His provided solution I couldn't implement, my bad not an expert of construct 2. One more problem is when I put some tiled background below it then it looks like road is floating above tiled bg and not at all real. Any solution for this?
Also, apologies for couldn't replying early as I was so frustated with the issues in the zombie game that I left it for sometime and started developing other sniper shooting game. Output is really good. You can try it here and feedback is always welcome bit.ly/affleeq2
Now I am back to zombie game. gonna work harder this time.