//------------------------------------------------------------------------------ // Purpose : Update weapon //------------------------------------------------------------------------------ void CWeaponSDKMelee::ItemPostFrame( void ) { CSDKPlayer *pPlayer = GetPlayerOwner(); if ( pPlayer == NULL ) return; if (IsThrowingGrenade()) { if (MaintainGrenadeToss()) return; } else if ((pPlayer->m_nButtons & IN_ALT2) && !IsThrowingGrenade() && pPlayer->GetAmmoCount(GetAmmoDef()->Index("grenades")) && pPlayer->CanAttack()) { bool bAllow = (m_flNextPrimaryAttack < GetCurrentTime()); if (m_bInReload) bAllow = true; if (bAllow) { StartGrenadeToss(); return; } } if (GetSwingTime() > 0 && GetSwingTime() <= GetCurrentTime()) { Swing(); } else if ( (pPlayer->m_nButtons & IN_ATTACK) && (m_flNextPrimaryAttack <= GetCurrentTime()) && pPlayer->CanAttack() ) { PrimaryAttack(); } else if ( (pPlayer->m_nButtons & IN_ATTACK2) && (m_flNextSecondaryAttack <= GetCurrentTime()) && pPlayer->CanAttack() ) { SecondaryAttack(); } else { WeaponIdle(); } }
//------------------------------------------------------------------------------ // Purpose : Update weapon //------------------------------------------------------------------------------ void CWeaponSDKMelee::ItemPostFrame( void ) { CSDKPlayer *pPlayer = GetPlayerOwner(); if ( pPlayer == NULL ) return; if ( (pPlayer->m_nButtons & IN_ATTACK) && (m_flNextPrimaryAttack <= gpGlobals->curtime) && pPlayer->CanAttack() ) { PrimaryAttack(); } else if ( (pPlayer->m_nButtons & IN_ATTACK2) && (m_flNextSecondaryAttack <= gpGlobals->curtime) && pPlayer->CanAttack() ) { SecondaryAttack(); } else { WeaponIdle(); } }