-
Автор темы
- #1
source from uc and modificated by me:
тема уже была, но тот ноу ворк, этот рабочий, но быстро улетите
Код:
o localplayer = cheat::engine::get_localplayer();
if (localplayer)
{
auto controller = localplayer->PlayerController;
if (controller)
{
auto hud = controller->MyHUD;
if (hud)
{
DWORD old;
auto vtable = hud->GetVTable();
VirtualProtect(vtable, 0x1000, 0x40, &old);
if (vtable[57] != hook::process_event_ahud::hook)
{
hook::process_event_ahud::original = reinterpret_cast<process_event_t>(vtable[57]);
vtable[57] = hook::process_event_ahud::hook;
}
VirtualProtect(vtable, 0x1000, old, &old);
}
}
}
Код:
void hook::process_event_ahud::hook(Classes::UObject* object, Classes::UFunction* function, void* params)
{
// ReceiveDrawHUD
if (function && function->Name.ComparisonIndex == 4924)
{
auto hud = static_cast<Classes::AHUD*>(object);
// DRAW
}
}
тема уже была, но тот ноу ворк, этот рабочий, но быстро улетите