Override UseDecrement and iItemSlot calls. Fix weapons reload.

This commit is contained in:
Night Owl 2018-01-02 07:26:32 +05:00
parent 4807bfdd91
commit dcc13109b9
4 changed files with 20 additions and 5 deletions

View File

@ -187,9 +187,6 @@ int CHudHealth::Draw( float flTime )
if( ( gHUD.m_iHideHUDDisplay & HIDEHUD_HEALTH ) || gEngfuncs.IsSpectateOnly() )
return 1;
if( !m_hSprite )
m_hSprite = LoadSprite( "sprites/%d_pain.spr" );
if( !( gHUD.m_iWeaponBits & ( 1 << ( WEAPON_SUIT ) ) ) )
return 1;

View File

@ -185,7 +185,7 @@ void CAK47::PrimaryAttack()
void CAK47::Reload(void)
{
if (m_pPlayer->ammo_ak47 <= 0)
if( m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0 || m_iClip == AK47_MAX_CLIP )
return;
DefaultReload(AK47_MAX_CLIP, AK47_RELOAD, 2.0);

View File

@ -170,7 +170,7 @@ void CMac10::PrimaryAttack()
void CMac10::Reload(void)
{
if (m_pPlayer->ammo_mac10 <= 0)
if( m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0 || m_iClip == MAC10_MAX_CLIP )
return;
DefaultReload(MAC10_MAX_CLIP, MAC10_RELOAD, 3.2);

View File

@ -1023,6 +1023,7 @@ class CAK47 : public CBasePlayerWeapon
public:
void Spawn( void );
void Precache( void );
int iItemSlot( void ) { return 3; }
int GetItemInfo( ItemInfo *p );
BOOL AddToPlayer( CBasePlayer *pPlayer );
@ -1031,6 +1032,14 @@ public:
void Reload( void );
void WeaponIdle( void );
BOOL UseDecrement( void )
{
#if defined( CLIENT_WEAPONS )
return TRUE;
#else
return FALSE;
#endif
}
private:
int m_iShell;
unsigned short m_usAK47;
@ -1041,6 +1050,7 @@ class CMac10 : public CBasePlayerWeapon
public:
void Spawn( void );
void Precache( void );
int iItemSlot( void ) { return 2; }
int GetItemInfo( ItemInfo *p );
BOOL AddToPlayer( CBasePlayer *pPlayer );
@ -1049,6 +1059,14 @@ public:
void Reload( void );
void WeaponIdle( void );
BOOL UseDecrement( void )
{
#if defined( CLIENT_WEAPONS )
return TRUE;
#else
return FALSE;
#endif
}
private:
int m_iShell;
unsigned short m_usMac10;