Untitled

 avatar
unknown
c_cpp
a month ago
664 B
2
Indexable
bool is_player_visible(QWORD client_info, int client_num) {
    auto sighted_enemy_fools = driver::read<client_bits_t>(client_info + offsets::BO6::visible_offset);
    int data_index = client_num >> 5;               // Equivalent to client_num / 32
    int bit_position = client_num & 0x1F;           // Equivalent to client_num % 32
    uint32_t bitmask = 1 << (31 - bit_position);    // Shift to create a bitmask at the correct position
    if (data_index >= sizeof(sighted_enemy_fools.data) / sizeof(sighted_enemy_fools.data[0])) {
        return false;
    }
    bool is_visible = (sighted_enemy_fools.data[data_index] & bitmask) != 0;
    return is_visible;
}
Leave a Comment