BIS fnc bitflagsCheck: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
Line 25: Line 25:


|x1=<code>[2 + 4 + 8, 8] call BIS_fnc_bitflagsCheck; // true
|x1=<code>[2 + 4 + 8, 8] call BIS_fnc_bitflagsCheck; // true
[2 + 4 + 8, 2 + 32] 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] [[call]] [[BIS_fnc_bitflagsCheck]]; // false
[2 + 4 + 8, 1 + 32] [[call]] [[BIS_fnc_bitflagsCheck]]; // false</code>
[2 + 4 + 8, 1 + 32] [[call]] [[BIS_fnc_bitflagsCheck]]; // false</code>

Revision as of 22:38, 12 July 2022

Hover & click on the images for description

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

Limitations:
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)
Execution:
call
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
  • true: one or more flags are set in given flagset
  • false: no given flag or flags are set in the given flagset

Examples

Example 1:
[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

Additional Information

See also:
BIS fnc bitflagsFlip BIS fnc bitflagsSet BIS fnc bitflagsToArray BIS fnc bitflagsUnset

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