//----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void CBaseCombatWeapon::Use( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value ) { CBasePlayer *pPlayer = ToBasePlayer( pActivator ); if ( pPlayer ) { m_OnPlayerUse.FireOutput( pActivator, pCaller ); // // Bump the weapon to try equipping it before picking it up physically. This is // important in a few spots in the game where the player could potentially +use pickup // and then THROW AWAY a vital weapon, rendering them unable to continue the game. // if ( pPlayer->BumpWeapon( this ) ) { OnPickedUp( pPlayer ); } else { pPlayer->PickupObject( this ); } } }