BIS fnc bitflagsUnset: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|(arg|eff|serverExec|mp|seealso)= " to "")
m (Text replacement - "[[BIS fnc " to "[[BIS_fnc_")
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{RV|type=function
{{RV|type=function


| arma3
|game1= arma3
|1.66
|version1= 1.66


|gr1= Bitwise
|gr1= Bitwise


| Unsets one or more flags in the given flagset, represented with decimal or hexadecimal number<br>
|descr= Unsets one or more flags 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>
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>
Line 14: Line 14:
supported range is 2^0...2^24 (1...16777216)
supported range is 2^0...2^24 (1...16777216)


| [flagset, flag] call '''BIS_fnc_bitflagsUnset'''
|s1= [flagset, flag] call [[BIS_fnc_bitflagsUnset]]


|p1= flagset: [[Number]] - flagset
|p1= flagset: [[Number]] - flagset
|p2= flag: [[Number]] - one or more flags to unset
|p2= flag: [[Number]] - one or more flags to unset


| [[Number]]  - new flagset with given flag or flags unset
|r1= [[Number]]  - new flagset with given flag or flags unset


|x1=<code>[2 + 4 + 8, 8] [[call]] [[BIS_fnc_bitflagsUnset]]; // 6 (which is 2 + 4)
|x1=<sqf>[2 + 4 + 8, 8] call BIS_fnc_bitflagsUnset; // 6 (which is 2 + 4)
[2 + 4 + 8, 2 + 8] [[call]] [[BIS_fnc_bitflagsUnset]]; // 4
[2 + 4 + 8, 2 + 8] call BIS_fnc_bitflagsUnset; // 4
[2 + 4 + 8, 1 + 8] [[call]] [[BIS_fnc_bitflagsUnset]]; // 6 (which is 2 + 4)
[2 + 4 + 8, 1 + 8] call BIS_fnc_bitflagsUnset; // 6 (which is 2 + 4)
[2 + 4 + 8, 1 + 8 + 8 + 2 + 2] [[call]] [[BIS_fnc_bitflagsUnset]]; // 10 (which is 2 + 8, since 1 + 8 + 8 + 2 + 2 is in fact 1 + 4 + 16)</code>
[2 + 4 + 8, 1 + 8 + 8 + 2 + 2] call BIS_fnc_bitflagsUnset; // 10 (which is 2 + 8, since 1 + 8 + 8 + 2 + 2 is in fact 1 + 4 + 16)</sqf>


|seealso= [[BIS fnc bitflagsFlip]], [[BIS fnc bitflagsCheck]], [[BIS fnc bitflagsToArray]], [[BIS fnc bitflagsSet]]
|seealso=   [[BIS_fnc_bitflagsFlip]] [[BIS_fnc_bitflagsCheck]] [[BIS_fnc_bitflagsToArray]] [[BIS_fnc_bitflagsSet]]
}}
}}

Latest revision as of 19:04, 13 July 2022

Hover & click on the images for description

Description

Description:
Unsets one or more flags in the given flagset, represented with decimal or hexadecimal number
(Hexadecimal number representation is simply auto-converted into decimal by the engine)
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_bitflagsUnset
Parameters:
flagset: Number - flagset
flag: Number - one or more flags to unset
Return Value:
Number - new flagset with given flag or flags unset

Examples

Example 1:
[2 + 4 + 8, 8] call BIS_fnc_bitflagsUnset; // 6 (which is 2 + 4) [2 + 4 + 8, 2 + 8] call BIS_fnc_bitflagsUnset; // 4 [2 + 4 + 8, 1 + 8] call BIS_fnc_bitflagsUnset; // 6 (which is 2 + 4) [2 + 4 + 8, 1 + 8 + 8 + 2 + 2] call BIS_fnc_bitflagsUnset; // 10 (which is 2 + 8, since 1 + 8 + 8 + 2 + 2 is in fact 1 + 4 + 16)

Additional Information

See also:
BIS_fnc_bitflagsFlip BIS_fnc_bitflagsCheck BIS_fnc_bitflagsToArray BIS_fnc_bitflagsSet

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