There are many methods to make a script perform an action for a set amount of time. This tutorial will cover the simplest of them.
This script uses the timer. It will repeat the action until the timer is greater than the set limit.
These timer-based repeater scripts can be used in many different ways. The one pictured is for a sprite that will continuously move to the right for the set amount of time.
when green flag clicked go to x:(x location) y: (y location) reset timer repeat until <(timer) > (limit)> change x by (1) end
- x location is the x of where the sprite goes to before it starts.
- y location is the y of where the sprite goes to before it starts.
- limit is how long the action should be repeated for (e.g. if the limit were 10, the sprite would drift to the right for 10 seconds).
If the timer is already being used and cannot be reset without ruining the project, a variable can be used instead of the timer:
when gf clicked set [seconds v] to  //enter amount of time to repeat for repeat until <(seconds) = > wait (1) secs change [seconds v] by (1) end when gf clicked repeat until <(seconds) = > do action end
This method can also be used:
when gf clicked set [old timer v] to (timer) repeat until <(timer) > ((old timer) + (limit))> do action end
This method may be more exact, because the timer is always correct, whereas a variable is not always updated at the right millisecond.