breakOut: Difference between revisions
Jump to navigation
Jump to search
Killzone Kid (talk | contribs) No edit summary |
Killzone Kid (talk | contribs) (alt syntax, example) |
||
Line 9: | Line 9: | ||
| Breaks block out of scope named name. Nil is returned. | | Breaks block out of scope named name. Nil is returned. | ||
Scope name can be assigned using [[scopeName]] command. |= Description | Scope name can be assigned using [[scopeName]] command. | ||
<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 | |||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
Line 17: | Line 20: | ||
| [[Nothing]] |= Return value | | [[Nothing]] |= Return value | ||
| s2= value '''breakOut''' name (''since Arma 3 v1.47'') |= Syntax | |||
|p21= value: [[Anything]] |= Parameter 1 | |||
|p22= name: [[String]] |= Parameter 1 | |||
| r2= [[Anything]] |= Return value | |||
|x1= <code>[[scopeName]] "main"; | |x1= <code>[[scopeName]] "main"; | ||
Line 30: | Line 40: | ||
}; | }; | ||
</code> |= Example 1 | </code> |= Example 1 | ||
|x2= <code>[[call]] { | |||
[[scopeName]] "main"; | |||
[[call]] { | |||
123 [[breakOut]] "main" | |||
}; | |||
345 | |||
}; // call returns 123</code> |= Example 2 | |||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
Revision as of 21:30, 24 June 2015
Description
- Description:
- Breaks block 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
Alternative Syntax
- Syntax:
- value breakOut name (since Arma 3 v1.47)
- Parameters:
- value: Anything
- name: String
- 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"