I thought it would work, but it seems it doesn't, or at least, not as I thought it would. Multiple function calls seem to share the same variables so you can't tap the s1 square twice and get two s2 squares at different positions, they both end at the 2nd set of coordinates. Maybe you could just simply set the delay outside of the function, since it doesn't appear to be designed for this.