Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Вопрос Weap esp on ground

  • Автор темы Автор темы c_nan0
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
2 Ноя 2024
Сообщения
78
Реакции
11
пытался много чего сделать с ним а в итоге не получилось пытался так:

C++:
Expand Collapse Copy
    if (c_weapon_esp){
        const int max_entities = 1024;
        for (int i = 1; i < max_entities; ++i){
            uintptr_t entity = GetEntityByIndex(c_p_EntityList, i);
            if (!entity) continue;
            if (!IsWeapon(entity)) continue;
            uint32_t owner = Memory::Read<uint32_t>(entity + c_strgame::c_fielld::C_BaseEntity::m_hOwnerEntity);
            if (owner != 0xFFFFFFFF) continue;
            Vec3 pos = GetEntityPosition(entity);
            WeaponESP(c_p_ViewMatrix, pos);
        }
    }

но не получилось, если вы можете помочь и сказать как находить оружия на земле, то спасибо
 
pos - m_vecOrigin (+ не нужно делать проверку на владельца) (ведь он показывает позицию предметов которые не имеют своего овнера)

вот пример:

123:
Expand Collapse Copy
uintptr_t listEntry = memory->read<uintptr_t>(entityListBase + 8 * ((i & 0x7FFF) >> 9) + 16);
 uintptr_t entity = memory->read<uintptr_t>(listEntry + 0x70 * (i & 0x1FF));
 uintptr_t sceneNode = memory->read<uintptr_t>(entity + Offsets::m_pGameSceneNode);
 Vec3 origin = memory->read<Vec3>(sceneNode + 0x88);
 std::string weaponName;
 uintptr_t itemInfo = memory->read<uintptr_t>(entity + 0x10);
 if (itemInfo) {
     uintptr_t itemTypePtr = memory->read<uintptr_t>(itemInfo + 0x20);
     if (itemTypePtr) {
         char nameBuf[128]{};
         memory->read(itemTypePtr, nameBuf, sizeof(nameBuf) - 1);
         weaponName = nameBuf;
         std::transform(weaponName.begin(), weaponName.end(), weaponName.begin(), ::tolower);
     }

 }
 
pos - m_vecOrigin (+ не нужно делать проверку на владельца) (ведь он показывает позицию предметов которые не имеют своего овнера)

вот пример:

123:
Expand Collapse Copy
uintptr_t listEntry = memory->read<uintptr_t>(entityListBase + 8 * ((i & 0x7FFF) >> 9) + 16);
 uintptr_t entity = memory->read<uintptr_t>(listEntry + 0x70 * (i & 0x1FF));
 uintptr_t sceneNode = memory->read<uintptr_t>(entity + Offsets::m_pGameSceneNode);
 Vec3 origin = memory->read<Vec3>(sceneNode + 0x88);
 std::string weaponName;
 uintptr_t itemInfo = memory->read<uintptr_t>(entity + 0x10);
 if (itemInfo) {
     uintptr_t itemTypePtr = memory->read<uintptr_t>(itemInfo + 0x20);
     if (itemTypePtr) {
         char nameBuf[128]{};
         memory->read(itemTypePtr, nameBuf, sizeof(nameBuf) - 1);
         weaponName = nameBuf;
         std::transform(weaponName.begin(), weaponName.end(), weaponName.begin(), ::tolower);
     }

 }
если воркает то спасибо, единственный человек на югейм который знает
 
Назад
Сверху Снизу