You have to wrap it up in foreach sprite1
else (this is optional)
do something else.
Sprite is singlular and will only do the first instance of first sprite.
Foreach loops through each instance of the sprite1. Hence instance variable, and instance variable of a particular instance of that sprite1
I just did something similiar, not time but locations of sprites moving and touching other objects.
This is how I understand it, and it works for me (using the foreach).
It takes some trial and error getting the sequence right with the flow of events too.