Skip to content

Instantly share code, notes, and snippets.

@niv

niv/hook.cpp Secret

Created January 17, 2017 16:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save niv/380338f7dad0d0f06656ed766a746d8f to your computer and use it in GitHub Desktop.
Save niv/380338f7dad0d0f06656ed766a746d8f to your computer and use it in GitHub Desktop.
namespace
{
bool (*GetIsPCDying)(CNWSObject* self);
bool GetIsPCDying_Hook(CNWSObject* self)
{
if (vptr->AsNWSCreature() && vptr->AsNWSCreature()->GetPlayerCharacter())
return GetCurrentHitPoints() < 1 && GetCurrentHitPoints() > -10;
else
return false;
}
bool (*GetIsDead_)(CNWSObject* self);
bool GetIsDead_Hook(CNWSObject* self)
{
if (vptr->AsNWSCreature() && vptr->AsNWSCreature()->GetPlayerCharacter())
return GetCurrentHitPoints() <= -10;
return GetCurrentHitPoints() <= 0;
}
}
void HookMe()
{
NX_HOOK(?, GetIsPCDying, GetIsPCDying_Hook);
NX_HOOK(?, GetIsDead, GetIsDead_Hook);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment