breakOut: Difference between revisions
Jump to navigation
Jump to search
Killzone Kid (talk | contribs) (alt syntax, example) |
Killzone Kid (talk | contribs) (explanations) |
||
Line 7: | Line 7: | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| Breaks | | Breaks the code execution out of scope {} named ''name''. Nil is returned. Scope name can be assigned using [[scopeName]] command. | ||
Scope name can be assigned using [[scopeName]] command. | |||
<br><br> | <br><br> | ||
Since Arma 3 v1.47, [[breakOut]] can be used to return value. It is the closest SQF comes to having "return" like operation. |= Description | Since Arma 3 v1.47, [[breakOut]] can be used to return ''value''. It is the closest SQF comes to having "return" like operation. |= Description | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| '''breakOut''' name |= Syntax | | '''breakOut''' name |= Syntax | ||
|p1= name: [[String]] |= Parameter 1 | |p1= name: [[String]] - name of the scope (previously set with [[scopeName]]) |= Parameter 1 | ||
| [[Nothing]] |= Return value | | [[Nothing]] |= Return value | ||
Line 23: | Line 21: | ||
| s2= value '''breakOut''' name (''since Arma 3 v1.47'') |= Syntax | | s2= value '''breakOut''' name (''since Arma 3 v1.47'') |= Syntax | ||
|p21= value: [[Anything]] |= Parameter 1 | |p21= value: [[Anything]] - a value to return |= Parameter 1 | ||
|p22= name: [[String]] |= Parameter 1 | |p22= name: [[String]] - name of the scope (previously set with [[scopeName]]) |= Parameter 1 | ||
| r2= [[Anything]] |= Return value | | r2= [[Anything]] |= Return value |
Revision as of 21:34, 24 June 2015
Description
- Description:
- Breaks the code execution out of scope {} named name. Nil is returned. Scope name can be assigned using scopeName command.
Since Arma 3 v1.47, breakOut can be used to return value. It is the closest SQF comes to having "return" like operation. - Groups:
- Uncategorised
Syntax
- Syntax:
- breakOut name
- Parameters:
- name: String - name of the scope (previously set with scopeName)
- Return Value:
- Nothing
Alternative Syntax
- Syntax:
- value breakOut name (since Arma 3 v1.47)
- Parameters:
- value: Anything - a value to return
- name: String - name of the scope (previously set with scopeName)
- Return Value:
- Anything
Examples
- Example 1:
scopeName "main"; while {true} do { scopeName "loop1"; while {true} do { scopeName "loop2"; if (condition1) then {breakTo "main"}; // Breaks all scopes and return to "main" if (condition2) then {breakOut "loop2"}; // Breaks scope named "loop2" sleep 1; }; sleep 1; };
- Example 2:
call { scopeName "main"; call { 123 breakOut "main" }; 345 }; // call returns 123
Additional Information
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
Notes
- Posted on 19 Aug, 2008
- alef
-
When "name" is nil, the command is ignored.
When "name" is an undefined scope name or "", the script quits current scope.if (true) then { hint "1"; breakOut nil; hint "2"; }; //result "2" if (true) then { hint "1"; breakOut ""; hint "2"; }; //result "1" if (true) then { hint "1"; breakOut "dskfhdsklfh"; hint "2"; }; //result "1"