onEachFrame
Jump to navigation
Jump to search
Description
- Description:
- Runs given statement every frame.
- Groups:
- Event Handlers
Syntax
- Syntax:
- onEachFrame statement
- Parameters:
- statement: String or Code
- Return Value:
- Nothing
Examples
- Example 1:
- Example 2:
- Private variables defined outside of the onEachFrame scope are not inherited:
_myvar = "bob"; myvar = "bill"; onEachFrame { hintSilent str [_myvar, myvar]; }; // Result: [any, "bill"]
- Example 3:
- Only one onEachFrame loop can exist at any time:
Note how "first" never gets shown even though it precedes "second". This is because script thread is executing within the same frame and first onEachFrame is overwritten before it has a chance to execute its statement.
- Example 4:
- Script suspension is not permitted within onEachFrame scope:
- Example 5:
- onEachFrame {}; // Reset event
Additional Information
- See also:
- diag_frameNo diag_fps
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on Jan 05, 2023 - 07:32 (UTC)
-
There is a way for running a code, more or less each second instead of each frame, very similar (but not equivalent) to a lazy loop.
or in its stackable version:
At 60 FPS, this code will run each second. Less often if FPS falls, more often at higher FPS. The code stays in unscheduled EH scope.