Вопрос Помогите с UserCmd

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
22 Апр 2022
Сообщения
16
Реакции
1
Я не могу понять как получить UserCmd через какой костыль и тд
если поможете буду благодарен)

и можно примерным кодом чтобы понять
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
CCSGOInput:
Expand Collapse Copy
int GetCommandIndex(void* pController) {
        static auto GetCommandIndex = reinterpret_cast<void* (__fastcall*)(void*, int*)>(MEM::GetAbsoluteAddress(MEM::FindPattern(CLIENT_DLL, "E8 ? ? ? ? 8B 8D ? ? ? ? 8D 51"), 1, 0));

        int nIndex = 0;
        GetCommandIndex(pController, &nIndex);

        return nIndex;
    }

    CUserCmd* GetUserCmd(void* pController, DWORD SequenceNumber) {
        static auto GetUserCmd = reinterpret_cast<CUserCmd * (__fastcall*)(void*, DWORD)>(MEM::GetAbsoluteAddress(MEM::FindPattern(CLIENT_DLL, "E8 ? ? ? ? 48 8B 0D ? ? ? ? 45 33 E4 48 89 44 24"), 1, 0));

        return GetUserCmd(pController, SequenceNumber);
    }

    void* GetUserCmdEntry(void* pController, int nCommandIndex) {
        static auto GetUserCmdEntry = reinterpret_cast<void* (__fastcall*)(void*, int)>(MEM::GetAbsoluteAddress(MEM::FindPattern(CLIENT_DLL, "E8 ? ? ? ? 48 8B CF 4C 8B E8 44 8B B8"), 1, 0));

        return GetUserCmdEntry(pController, nCommandIndex);
    }

    CUserCmd* GetCmd() {
        static void* CmdBaseAddress = MEM::ResolveRelativeAddress(MEM::FindPattern(CLIENT_DLL, "48 8B 0D ? ? ? ? E8 ? ? ? ? 48 8B CF 4C 8B E8"), 0x3, 0x7);

        if (!CmdBaseAddress)
            return nullptr;

        auto pLocalController = CCSPlayerController::GetLocalPlayerController();
        if (!pLocalController)
            return nullptr;

        int nIndex = GetCommandIndex(pLocalController);
        if (!nIndex)
            return nullptr;

        int nCommandIndex = nIndex - 1;

        if (nCommandIndex == -1)
            nCommandIndex = 0xFFFFFFFF;

        void* pCmdEntry = GetUserCmdEntry(CmdBaseAddress, nCommandIndex);
        if (!pCmdEntry)
            return nullptr;

        DWORD SequenceNumber = [I]reinterpret_cast<DWORD[/I]>([I](__int64[/I])pCmdEntry + 0x5C00);

        CUserCmd* pCmd = GetUserCmd(pLocalController, SequenceNumber);

        return pCmd;
    }
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Последнее редактирование:
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Назад
Сверху Снизу