[Вопрос] Как сделать функцию ApplyAAAHooks переключаемой по чекбоксу ? [Suicide.cc]

Начинающий
Статус
Оффлайн
Регистрация
10 Авг 2017
Сообщения
8
Реакции[?]
0
Поинты[?]
0
Суть вопроса в том, что изначально функция включена, что достаточно сильно мешает комфортной игре. И в меню не нашел как это выключить. Всё до чего додумалась моя тупая бошка - вырезать её.
Вот пример из ММ:

Кто не понял на скрине видно что Yaw выровнены к 1

Код:
void ApplyAAAHooks()
{
    ClientClass *pClass = Interfaces::Client->GetAllClasses();
    while (pClass)
    {
        const char *pszName = pClass->m_pRecvTable->m_pNetTableName;

            if (!strcmp(pszName, "DT_CSPlayer"))
            {
                for (int i = 0; i < pClass->m_pRecvTable->m_nProps; i++)
                {
                    RecvProp *pProp = &(pClass->m_pRecvTable->m_pProps[i]);
                    const char *name = pProp->m_pVarName;

                    // Pitch Fix
                    if (!strcmp(name, "m_angEyeAngles[0]"))
                    {
                        pProp->m_ProxyFn = FixX;
                    }

                    // Yaw Fix
                    if (!strcmp(name, "m_angEyeAngles[1]"))
                    {
                        Utilities::Log("Yaw Fix Applied");
                        pProp->m_ProxyFn = FixY;
                    }
                }
            }

            else if (!strcmp(pszName, "DT_BaseViewModel"))
            {
                for (int i = 0; i < pClass->m_pRecvTable->m_nProps; i++)
                {
                    RecvProp *pProp = &(pClass->m_pRecvTable->m_pProps[i]);
                    const char *name = pProp->m_pVarName;

                    // Knives
                    if (!strcmp(name, "m_nModelIndex"))
                    {
                        oRecvnModelIndex = (RecvVarProxyFn)pProp->m_ProxyFn;
                        pProp->m_ProxyFn = Hooked_RecvProxy_Viewmodel;
                    }
                }
            }
            pClass = pClass->m_pNext;
        }
    
}

Исходники брал отсюда.

До сих пор жду ответа
 
Последнее редактирование:
Забаненный
Статус
Оффлайн
Регистрация
26 Авг 2017
Сообщения
66
Реакции[?]
35
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Суть вопроса в том, что изначально функция включена, что достаточно сильно мешает комфортной игре. И в меню не нашел как это выключить. Всё до чего додумалась моя тупая бошка - вырезать её.
Вот пример из ММ:

Кто не понял на скрине видно что Yaw выровнены к 1


Исходники брал отсюда.
Добавь перед кодом if(!strcmp(name , и т.д))
код if(путь до функции) { и потом до ekse if добавь еще скоробку } и все
 
Начинающий
Статус
Оффлайн
Регистрация
10 Авг 2017
Сообщения
8
Реакции[?]
0
Поинты[?]
0
Добавь перед кодом if(!strcmp(name , и т.д))
код if(путь до функции) { и потом до ekse if добавь еще скоробку } и все
Половину не понял, можно по подробней ? Там нужно сурсы смотреть, кусок кода я просто так кинул.
(Просьба камни в лицо не кидать)
 
Забаненный
Статус
Оффлайн
Регистрация
26 Авг 2017
Сообщения
66
Реакции[?]
35
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Половину не понял, можно по подробней ? (Просьба камни в лицо не кидать)
дай мне код весь
 
Код:
for (int i = 0; i < pClass->m_pRecvTable->m_nProps; i++)
            {
                RecvProp *pProp = &(pClass->m_pRecvTable->m_pProps[i]);
                const char *name = pProp->m_pVarName;
if


//Menu::Window.SkinTab.KnifeModel.GetIndex()

Menu::Window.misc.ApplyHooks.GetState()
{
                // Pitch Fix
                if (!strcmp(name, "m_angEyeAngles[0]"))
                {
                    pProp->m_ProxyFn = FixX;
                }

                // Yaw Fix
                if (!strcmp(name, "m_angEyeAngles[1]"))
                {
                    Utilities::Log("Yaw Fix Applied");
                    pProp->m_ProxyFn = FixY;
                }
            }
        }
}
Не забуль добавить функции и под себя сделать , а то хз
 
              ru p2cs > all                      
Разработчик
Статус
Оффлайн
Регистрация
19 Авг 2016
Сообщения
1,578
Реакции[?]
1,961
Поинты[?]
131K
Суть вопроса в том, что изначально функция включена, что достаточно сильно мешает комфортной игре. И в меню не нашел как это выключить. Всё до чего додумалась моя тупая бошка - вырезать её.
Вот пример из ММ:

Кто не понял на скрине видно что Yaw выровнены к 1

Код:
void ApplyAAAHooks()
{
    ClientClass *pClass = Interfaces::Client->GetAllClasses();
    while (pClass)
    {
        const char *pszName = pClass->m_pRecvTable->m_pNetTableName;

            if (!strcmp(pszName, "DT_CSPlayer"))
            {
                for (int i = 0; i < pClass->m_pRecvTable->m_nProps; i++)
                {
                    RecvProp *pProp = &(pClass->m_pRecvTable->m_pProps[i]);
                    const char *name = pProp->m_pVarName;

                    // Pitch Fix
                    if (!strcmp(name, "m_angEyeAngles[0]"))
                    {
                        pProp->m_ProxyFn = FixX;
                    }

                    // Yaw Fix
                    if (!strcmp(name, "m_angEyeAngles[1]"))
                    {
                        Utilities::Log("Yaw Fix Applied");
                        pProp->m_ProxyFn = FixY;
                    }
                }
            }

            else if (!strcmp(pszName, "DT_BaseViewModel"))
            {
                for (int i = 0; i < pClass->m_pRecvTable->m_nProps; i++)
                {
                    RecvProp *pProp = &(pClass->m_pRecvTable->m_pProps[i]);
                    const char *name = pProp->m_pVarName;

                    // Knives
                    if (!strcmp(name, "m_nModelIndex"))
                    {
                        oRecvnModelIndex = (RecvVarProxyFn)pProp->m_ProxyFn;
                        pProp->m_ProxyFn = Hooked_RecvProxy_Viewmodel;
                    }
                }
            }
            pClass = pClass->m_pNext;
        }
   
}

Исходники брал отсюда.

До сих пор жду ответа
убери вообще хук оттуда recvprop и все.
или просто ретурнь оригинал углы
Код:
void PitchHook(const CRecvProxyData* pData, void* pStruct, void* pOut)
{
C_BaseEntity *pPlayer = (C_BaseEntity*)pStruct;
float flPitch = pData->m_Value.m_Float;
*(float*)pOut = flPitch;
}
void YawHook(const CRecvProxyData *pData, void *pStruct, void *pOut)
{
C_BaseEntity *pPlayer = (C_BaseEntity*)pStruct;
float yaw = pData->m_Value.m_Float;
*(float*)pOut = yaw;
}
 
Забаненный
Статус
Оффлайн
Регистрация
23 Ноя 2016
Сообщения
371
Реакции[?]
123
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Код:
*(float*)pOut = yaw;
Добавь это в самый конец FixY функции
Вуаля, все будет работать
 
Сверху Снизу