Browse Source

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

fix-cwd-path
Roman Chistokhodov 2 years ago committed by GitHub
parent
commit
e12d1aa743
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 28
      dlls/player.cpp
  2. 2
      dlls/weapons.cpp
  3. 3
      dlls/weapons.h

28
dlls/player.cpp

@ -3095,15 +3095,9 @@ void CBasePlayer::SelectItem( const char *pstr ) @@ -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 ) @@ -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 ) @@ -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;
}

2
dlls/weapons.cpp

@ -820,7 +820,7 @@ int CBasePlayerWeapon::UpdateClientData( CBasePlayer *pPlayer ) @@ -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;

3
dlls/weapons.h

@ -349,9 +349,6 @@ public: @@ -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

Loading…
Cancel
Save