SQS to SQF conversion: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Add sqf notrim) |
Lou Montana (talk | contribs) m (Fix examples) |
||
Line 23: | Line 23: | ||
| <sqs>; This is a comment</sqs> | | <sqs>; This is a comment</sqs> | ||
<sqs notrim> | <sqs notrim> | ||
; This is a | ; This is a | ||
; multiline | ; multiline | ||
Line 159: | Line 159: | ||
{ DEFAULT_COMMAND }; | { DEFAULT_COMMAND }; | ||
}; | }; | ||
</sqf> | |||
|- | |- | ||
! colspan="2" | | ! colspan="2" | | ||
Line 169: | Line 169: | ||
COMMAND_1 | COMMAND_1 | ||
</sqs> | </sqs> | ||
| <sqf> | | <sqf notrim> | ||
if (CONDITION) exitWith { COMMAND_2; }; | if (CONDITION) exitWith { COMMAND_2; }; | ||
COMMAND_1; | COMMAND_1; | ||
</sqf> | |||
|} | |} | ||
Latest revision as of 21:40, 21 July 2022
SQF Syntax has been introduced in Operation Flashpoint: Resistance v1.85 and is the Arma series' main scripting language since. The main differences with SQS Syntax are:
- execVM is used (instead of exec for SQS)
- Every command has to end with a semicolon (;)
- the following commands disappeared:
- Line returns do not impact code
- SQF can return a variable, where SQS cannot
Conversion examples
SQS | SQF |
---|---|
Comment | |
; This is a comment
; This is a
; multiline
; comment
comment "this is a comment"; "this is a comment"; |
// This is single-line comment /*
This is a
multiline
comment
*/ comment "this is a comment"; "this is a comment"; |
Condition wait | |
@CONDITION |
|
Delay | |
~DELAY ~5 |
sleep DELAY; sleep 5; |
Conditional command | |
Multi-conditional command | |
Cycle | |
Cycle with step | |
Structured conditional command | |
Exiting | |