I'm saying the sub events don't need to be in a function, you can have on timer finished then execute those sub events from there. The logic looks a bit convoluted for doing what you are trying to do which is to wait for a couple of seconds then move, right? Also when you wait in a function I believe the parameters you pass through get lost so when you are picking the sprites at the start of the function, i think param 0 and param 1 are no longer valid.