Replace usage of m_ForceSendAnimations with entvars to avoid changing the class data layout (#306)

This commit is contained in:
Roman Chistokhodov 2022-08-06 17:40:26 +03:00 committed by GitHub
parent d9d46bcc2b
commit e12d1aa743
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 7 additions and 26 deletions

View File

@ -3095,15 +3095,9 @@ void CBasePlayer::SelectItem( const char *pstr )
if( m_pActiveItem )
{
CBasePlayerWeapon* weapon = (CBasePlayerWeapon*)(m_pActiveItem->GetWeaponPtr());
if (weapon)
weapon->m_ForceSendAnimations = true;
m_pActiveItem->pev->oldbuttons = 1;
m_pActiveItem->Deploy();
if (weapon)
weapon->m_ForceSendAnimations = false;
m_pActiveItem->pev->oldbuttons = 0;
m_pActiveItem->UpdateItemInfo();
}
}
@ -3130,14 +3124,9 @@ void CBasePlayer::SelectLastItem( void )
m_pActiveItem = m_pLastItem;
m_pLastItem = pTemp;
CBasePlayerWeapon* weapon = (CBasePlayerWeapon*)(m_pActiveItem->GetWeaponPtr());
if (weapon)
weapon->m_ForceSendAnimations = true;
m_pActiveItem->pev->oldbuttons = 1;
m_pActiveItem->Deploy();
if (weapon)
weapon->m_ForceSendAnimations = false;
m_pActiveItem->pev->oldbuttons = 0;
m_pActiveItem->UpdateItemInfo();
}
@ -4610,14 +4599,9 @@ BOOL CBasePlayer::SwitchWeapon( CBasePlayerItem *pWeapon )
m_pActiveItem = pWeapon;
CBasePlayerWeapon* weapon = (CBasePlayerWeapon*)(pWeapon->GetWeaponPtr());
if (weapon)
weapon->m_ForceSendAnimations = true;
pWeapon->pev->oldbuttons = 1;
pWeapon->Deploy();
if (weapon)
weapon->m_ForceSendAnimations = false;
pWeapon->pev->oldbuttons = 0;
return TRUE;
}

View File

@ -820,7 +820,7 @@ int CBasePlayerWeapon::UpdateClientData( CBasePlayer *pPlayer )
void CBasePlayerWeapon::SendWeaponAnim( int iAnim, int skiplocal, int body )
{
if( UseDecrement() )
skiplocal = !m_ForceSendAnimations;
skiplocal = !pev->oldbuttons;
else
skiplocal = 0;

View File

@ -349,9 +349,6 @@ public:
// hle time creep vars
float m_flPrevPrimaryAttack;
float m_flLastFireTime;
//Hack so deploy animations work when weapon prediction is enabled.
bool m_ForceSendAnimations;
};
class CBasePlayerAmmo : public CBaseEntity