case: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " \|(x[0-9]|p[0-9]{1,2}|descr|game[0-9]|version[0-9]|s[0-9]|exec|r[0-9]|arg|eff|branch|serverExec|gr[0-9]|mp|pr|seealso) +=" to " |$1=")
m (Some wiki formatting)
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{RV|type=command
{{RV|type=command


| arma1
|game1= arma1
|version1= 1.00
 
|game2= arma2
|version2= 1.00
 
|game3= arma2oa
|version3= 1.50
 
|game4= tkoh
|version4= 1.00
 
|game5= arma3
|version5= 0.50


|gr1= Program Flow
|gr1= Program Flow


|1.00
|descr= This command is used as a keyword inside a [[switch]] structure to define a value case.
{{Feature|important|
This command '''must''' be written and used inside a [[switch]] construct, never stored in a variable, otherwise its behaviour is not guaranteed - see {{Link|https://foxhound.international/arma-3-sqf-grammar.html}} for further explanation.
}}


| This command is used inside a [[switch]] construct. <br>Although the syntax below states that this operator takes only one argument, that is most likely not true. It seems like it needs two arguments of which the left one is some sort of hidden variable that gets defined inside a [[switch]] construct. That is the reason why <b>this operator can not be used outside a [[switch]] construct</b>. (see https://foxhound.international/arma-3-sqf-grammar.html for further explaination)<br>
|s1= [[case]] b
Also note that it is not possible to store the returned [[Switch Type]] in a variable and use that variable in another [[switch]] construct. It will never lead to an execution of the corresponding code block.
 
| '''case''' b


|p1= b: [[Anything]]
|p1= b: [[Anything]]


| [[Switch Type]]
|r1= [[Switch Type]]


|x1= <code>[[switch]] (_condition) [[do]] {
|x1= <sqf>
    [[case]] 1: { [[hint]] "1" };
switch (_condition) do
    [[case]] 2: { [[hint]] "2" };
{
    [[default]] { [[hint]] "default" };
case 1: { hint "1" };
};</code>
case 2: { hint "2" };
default { hint "default" };
};
</sqf>


|seealso= [[Control Structures]], [[switch]], [[default]]
|seealso= [[Control Structures]] [[switch]] [[default]]
}}
}}
{{GameCategory|arma1|Scripting Commands}}
{{GameCategory|arma2|Scripting Commands}}
{{GameCategory|arma3|Scripting Commands}}
{{GameCategory|tkoh|Scripting Commands}}

Latest revision as of 16:36, 10 September 2023

Hover & click on the images for description

Description

Description:
This command is used as a keyword inside a switch structure to define a value case.
This command must be written and used inside a switch construct, never stored in a variable, otherwise its behaviour is not guaranteed - see https://foxhound.international/arma-3-sqf-grammar.html for further explanation.
Groups:
Program Flow

Syntax

Syntax:
case b
Parameters:
b: Anything
Return Value:
Switch Type

Examples

Example 1:
switch (_condition) do { case 1: { hint "1" }; case 2: { hint "2" }; default { hint "default" }; };

Additional Information

See also:
Control Structures switch default

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