Lua:bOr
Jump to navigation
Jump to search
function bOr(int1, int2) : Integer
Performs a bitwise OR operation between two integer values. This function behaves the same as Lua's bitwise OR operator (|) inside Cheat Engine. It is typically used when combining bitmasks or ensuring specific bits are set.
Contents
Function Parameters
| Parameter | Type | Description |
|---|---|---|
| int1 | integer | The first integer value to be used in the bitwise OR operation. |
| int2 | integer | The second integer value to be combined with int1.
|
Returns
An integer representing the result of the bitwise OR operation.
Description
The bitwise OR operation compares each bit of the two integers and sets the bit in the result to 1 if either corresponding bit is 1. This is commonly used for:
- Combining bitmask flags
- Setting specific bit values
- Low-level memory and instruction manipulation
Binary breakdown example:
0001 (1) 0010 (2) ---- 0011 (3)
Usage Examples
Simple bitwise OR:
print( bOr(1, 2) ) -- 3
Using Lua's OR operator (equivalent):
print( 1 | 2 ) -- 3
Combining bitmask flags:
local FLAG_A = 0x01
local FLAG_B = 0x04
local combined = bOr(FLAG_A, FLAG_B)
print(string.format("0x%X", combined)) -- 0x5
Applying OR to set bits:
local value = 0x10
value = bOr(value, 0x02) -- Set bit 1
print(string.format("0x%X", value))
Behavior
- Always returns an integer.
- Only works on numeric values; non-integer types should be converted beforehand.
- Equivalent to the native bitwise OR operator (
|) in Cheat Engine's Lua.
Advanced Examples
Using OR to toggle feature flags:
local FEATURE_RENDER = 0x01 local FEATURE_PHYSICS = 0x02 local enabled = 0 -- Enable rendering enabled = bOr(enabled, FEATURE_RENDER) -- Enable physics enabled = bOr(enabled, FEATURE_PHYSICS) print(enabled) -- 3
Combining OR with bitwise AND for flag management:
local flags = 0
flags = bOr(flags, 0x08) -- Enable bit 3
if (flags & 0x08) ~= 0 then
print("Bit 3 enabled")
end