Тьомчик
-
Автор темы
- #1
Нужни оффсеты для этого:
C++:
__forceinline bool Reloading()
{
AnimationLayer* animlayer = &AnimOverlays()[1];
if (animlayer->pOwner)
{
auto activity = SequenceActivity(animlayer->nSequence);
if ((activity == 967 && animlayer->flWeight != 0.0f) && animlayer->flCycle < 0.99)
return true;
else
return false;
}
}
C++:
__forceinline AnimationLayer* AnimOverlays()
{
return *(AnimationLayer**)((std::uintptr_t)this + 0x2980);
}
C++:
__forceinline int SequenceActivity(int sequence)
{
studio_hdr_t* pStudioHdr = interfaces::model_info->get_studio_model(this->Model());
if (pStudioHdr == nullptr)
return -1;
using SequenceActivityFn = int(__fastcall*)(void*, void*, int);
static auto oSequenceActivity = (SequenceActivityFn)(pattern::Scan(XOR("client.dll"), ("55 8B EC 53 8B 5D 08 56 8B F1 83"))); // @xref: "Need to handle the activity %d\n"
return oSequenceActivity(this, pStudioHdr, sequence);
}