BIS fnc bitflagsFlip: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "_{10,} " to "")
m (Text replacement - " *\| *([Cc]omments|COMMENTS|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments \("local" or "global"\)|Multiplayer Effects \("local" or "global"\)|Multiplayer Execution \("server" o...)
Line 1: Line 1:
{{DISPLAYTITLE:BIS_fnc_bitflagsFlip}}{{Function|Comments=
{{DISPLAYTITLE:BIS_fnc_bitflagsFlip}}{{Function


| arma3 |Game=
| arma3 |Game=
|1.66|Game version=
|1.66


|gr1= Bitwise |GROUP1=
|gr1= Bitwise


|arg= |MPARGUMENTS=  
|arg= |MPARGUMENTS=  
Line 16: Line 16:
Due to various limitations of the Real Virtuality engine this function is  
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  
intended to work with unsigned 24 bit integers only. This means that the  
supported range is 2^0...2^24 (1...16777216) |DESCRIPTION=
supported range is 2^0...2^24 (1...16777216)


| [flagset, flag] call '''BIS_fnc_bitflagsFlip''' |SYNTAX=
| [flagset, flag] call '''BIS_fnc_bitflagsFlip'''


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


| [[Number]]  - new flagset with given flag or flags flipped |RETURNVALUE=
| [[Number]]  - new flagset with given flag or flags flipped


|x1=<code>[1 + 16, 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 25 (which is 1 + 8 + 16)
|x1=<code>[1 + 16, 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 25 (which is 1 + 8 + 16)
[25, 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 17 (which is 1 + 16)
[25, 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 17 (which is 1 + 16)
[2 + 4 + 8, 2 + 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 4
[2 + 4 + 8, 2 + 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 4
[4, 2 + 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 14 (which is 2 + 4 + 8)</code>|EXAMPLE1=
[4, 2 + 8] [[call]] [[BIS_fnc_bitflagsFlip]]; // 14 (which is 2 + 4 + 8)</code>


| [[BIS fnc bitflagsSet]], [[BIS fnc bitflagsCheck]], [[BIS fnc bitflagsToArray]], [[BIS fnc bitflagsUnset]]|SEEALSO=
| [[BIS fnc bitflagsSet]], [[BIS fnc bitflagsCheck]], [[BIS fnc bitflagsToArray]], [[BIS fnc bitflagsUnset]]


|  |MPBEHAVIOUR=  
|  |MPBEHAVIOUR=  

Revision as of 22:36, 17 January 2021

Hover & click on the images for description

Description

Description:
Flips one or more flags (set gets unset and vice versa) 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_bitflagsFlip
Parameters:
flagset: Number - flagset
flag: Number - one or more flags to flip
Return Value:
Number - new flagset with given flag or flags flipped

Examples

Example 1:
[1 + 16, 8] call BIS_fnc_bitflagsFlip; // 25 (which is 1 + 8 + 16) [25, 8] call BIS_fnc_bitflagsFlip; // 17 (which is 1 + 16) [2 + 4 + 8, 2 + 8] call BIS_fnc_bitflagsFlip; // 4 [4, 2 + 8] call BIS_fnc_bitflagsFlip; // 14 (which is 2 + 4 + 8)

Additional Information

See also:
BIS fnc bitflagsSetBIS fnc bitflagsCheckBIS fnc bitflagsToArrayBIS 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


Bottom Section