local raycastResult = {} -- C equivalent: (1 << OBJECT_FLAG.TERRAIN) | (1 << OBJECT_FLAG.WATER) | (1 << OBJECT_FLAG.PLATFORM) local flag = bit.bor( bit.lshift(1, OBJECT_FLAG.TERRAIN:toNumber()), bit.lshift(1, OBJECT_FLAG.WATER:toNumber()), bit.lshift(1, OBJECT_FLAG.PLATFORM:toNumber()) ) -- Raycast from the screen position [400; 300], forward -- for a distance of 1000, only on objects with a TERRAIN, -- WATER or PLATFORM flag level:rayCast({ 400, 300 }, 1000, raycastResult, flag)