-
Автор темы
- #1
вальво накумарили гавна, и нужно это исправлять, для самых маленьких я создал эту тему.
первым делом хукаем get eye angles:
надеюсь самые маленькие додумаются, что такое "g_ctx->last_sent_eye_angles" и что с этим делать.
первым делом хукаем get eye angles:
C++:
q_angle* __fastcall c_hooks::hk_get_eye_angles::fn(void* ecx, void* edx) {
static int* first_return_addr = (int*)utils::sig_scan(e_dll::client, "8B CE F3 0F 10 00 8B 06 F3 0F 11 45 ? FF 90 ? ? ? ? F3 0F 10 55 ?");
static int* second_return_addr = (int*)utils::sig_scan(e_dll::client, "F3 0F 10 55 ? 51 8B 8E ? ? ? ?");
static int* third_return_addr = (int*)utils::sig_scan(e_dll::client, "8B 55 0C 8B C8 E8 ? ? ? ? 83 C4 08 5E 8B E5");
if (_ReturnAddress() != first_return_addr && _ReturnAddress() != second_return_addr && _ReturnAddress() != third_return_addr)
return original(ecx);
if (!ecx || ((c_base_player*)ecx)->get_index() != g_interfaces::engine->get_local_player())
return original(ecx);
return &g_ctx->last_sent_eye_angles;
}