Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- typedef unsigned long LODWORD;
- auto NetChannel = g_pEngine->GetNetChannelInfo();
- if (!NetChannel)
- return;
- static float predTime[65];
- static bool init[65];
- if (Globals::Shot[pEnt->EntIndex()])
- {
- if (init[pEnt->EntIndex()])
- {
- auto animstate = pEnt->AnimState();
- if (animstate)
- {
- if (animstate->m_fDuckAmount > 0.0)
- {
- auto v29 = 0.0;
- if (animstate->m_flFeetSpeedUnknownForwardOrSideways < 0.0)
- v29 = 0.0;
- else
- v29 = std::fminf(LODWORD(animstate->m_flFeetSpeedUnknownForwardOrSideways), 0x3F800000);
- }
- if (Globals::MissedShots[pEnt->EntIndex()])
- {
- float speed;
- if (*(float*)(animstate + 0xF8) < 0.f)
- {
- speed = 0.0;
- }
- else
- {
- speed = fminf(*(DWORD*)(animstate + 0xF8), 1.0f);
- }
- float flYawModifier = (*(float*)(animstate + 0x11C) * -0.30000001 - 0.19999999) * speed;
- flYawModifier += 1.0f;
- if (*(float*)(animstate + 0xA4) > 0.0 && *(float*)(animstate + 0xFC) >= 0.0)
- flYawModifier = fminf(*(float*)(uintptr_t(animstate) + 0xFC), 1.0f);
- float m_flMaxBodyYaw = *(float*)(uintptr_t(animstate) + 0x334) * flYawModifier;
- float m_flMinBodyYaw = *(float*)(uintptr_t(animstate) + 0x330) * flYawModifier;
- float ResolvedYaw = animstate->m_flEyeYaw;
- float delta = std::abs(animstate->m_flEyeYaw - animstate->m_flGoalFeetYaw);
- if (m_flMaxBodyYaw < delta)
- {
- ResolvedYaw = animstate->m_flEyeYaw - std::abs(m_flMaxBodyYaw);
- }
- else if (m_flMinBodyYaw > delta)
- {
- ResolvedYaw = animstate->m_flEyeYaw + std::abs(m_flMinBodyYaw);
- }
- animstate->m_flGoalFeetYaw = normalize_yaw(ResolvedYaw);
- }
- else
- init[pEnt->EntIndex()] = true;
- Globals::Hit[pEnt->EntIndex()] = false;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement