Я недавно пытался использовать ловушку, я получаю игру cra sh при вызове функции bool "origIsEnemy", но "origIsDead" работает, как написать код может правильно прочитать IsEnemy (модуль BaseUnit), пожалуйста ?
внутриигровая функция dump.cs:
public bool get_isDead(); // RVA: 0xC636F8 Offset: 0xC636F8
public bool IsEnemy(BaseUnit unit); // RVA: 0xC6EE38 Offset: 0xC6EE38
мой скрипт хука:
bool (*origIsDead)(void *_this);
bool _hookIsDead(void * _this)
{
bool mydata1 = origIsDead(_this);
return origIsDead(_this);
}
bool (*origIsEnemy)(void *_this);
bool _hookIsEnemy(void * _this)
{
bool mydata2 = origIsEnemy(_this);
return origIsEnemy(_this);
}
MSHookFunction((void *)getRealOffset(0xC636F8), (void *)_hookIsDead, (void **)&origIsDead);
MSHookFunction((void *)getRealOffset(0xC6EE38), (void *)_hookIsEnemy, (void **)&origIsEnemy);