BIS fnc bitflagsCheck: Difference between revisions
m (Change game version to 1.66)  | 
				Lou Montana (talk | contribs)  m (Some wiki formatting)  | 
				||
| (42 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
{{  | {{RV|type=function  | ||
| arma3 |=  | |game1= arma3  | ||
|version1= 1.66  | |||
|  | |gr1= Bitwise  | ||
|  | |descr= Checks if one or more flags are set in the given flagset, represented with decimal or hexadecimal number<br>  | ||
(Hexadecimal number representation is simply auto-converted into decimal by the engine)<br>  | (Hexadecimal number representation is simply auto-converted into decimal by the engine)<br>  | ||
In other words, it simply performs a [[BIS_fnc_bitwiseAND|bitwise AND (&)]] operation on the two numbers: {{hl|flags & flagset > 0}}<br>  | |||
To check which flags are present in given flagset use [[BIS_fnc_bitflagsToArray]]<br><br>  | To check which flags are present in given flagset use [[BIS_fnc_bitflagsToArray]]<br><br>  | ||
| [flagset, flag] call   | |pr= Due to various limitations of the Real Virtuality engine this function is intended to work with unsigned 24 bit integers only. This means that the supported range is 2^0...2^24 (1..16777216).  | ||
|s1= [flagset, flag] call [[BIS_fnc_bitflagsCheck]]  | |||
|p1= flagset: [[Number]] - flagset  | |||
|p2= flag: [[Number]] - one or more flags to check  | |||
|p2= flag: [[Number]] - one or more flags to check   | |||
| [[Boolean]]    | |r1= [[Boolean]]  | ||
* [[true]]: one or more flags are set in given flagset  | * [[true]]: one or more flags are set in given flagset  | ||
* [[false]]: no given flag or flags are set in the given flagset   | * [[false]]: no given flag or flags are set in the given flagset  | ||
| [[  | |x1= <sqf>  | ||
[2 + 4 + 8, 8] call BIS_fnc_bitflagsCheck; // true  | |||
[2 + 4 + 8, 2 + 32] call BIS_fnc_bitflagsCheck; // true  | |||
[2 + 4 + 8, 1] call BIS_fnc_bitflagsCheck; // false  | |||
[2 + 4 + 8, 1 + 32] call BIS_fnc_bitflagsCheck; // false  | |||
</sqf>  | |||
|   | |seealso= [[BIS_fnc_bitflagsFlip]] [[BIS_fnc_bitflagsSet]] [[BIS_fnc_bitflagsToArray]] [[BIS_fnc_bitflagsUnset]]  | ||
}}  | }}  | ||
Latest revision as of 16:28, 27 July 2022
Description
- Description:
 - Checks if one or more flags are set in the given flagset, represented with decimal or hexadecimal number
(Hexadecimal number representation is simply auto-converted into decimal by the engine)
In other words, it simply performs a bitwise AND (&) operation on the two numbers: flags & flagset > 0
To check which flags are present in given flagset use BIS_fnc_bitflagsToArray - Execution:
 - call
 - Problems:
 - Due to various limitations of the Real Virtuality engine this function is intended to work with unsigned 24 bit integers only. This means that the supported range is 2^0...2^24 (1..16777216).
 - Groups:
 - Bitwise
 
Syntax
- Syntax:
 - [flagset, flag] call BIS_fnc_bitflagsCheck
 - Parameters:
 - flagset: Number - flagset
 - flag: Number - one or more flags to check
 - Return Value:
 - Boolean
 
Examples
- Example 1:
 
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