Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.2 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. //=============================================================================//
  6. #include "cbase.h"
  7. #include "shake.h"
  8. #include "weapon_dodbasegun.h"
  9. #if defined( CLIENT_DLL )
  10. #define CWeaponBaseRifleGrenade C_WeaponBaseRifleGrenade
  11. #endif
  12. class CWeaponBaseRifleGrenade : public CWeaponDODBaseGun
  13. {
  14. public:
  15. DECLARE_CLASS( CWeaponBaseRifleGrenade, CWeaponDODBaseGun );
  16. DECLARE_NETWORKCLASS();
  17. DECLARE_PREDICTABLE();
  18. CWeaponBaseRifleGrenade();
  19. virtual void Spawn();
  20. virtual void PrimaryAttack( void );
  21. virtual bool Holster( CBaseCombatWeapon *pSwitchingTo );
  22. virtual void WeaponIdle( void );
  23. virtual DODWeaponID GetWeaponID( void ) const { return WEAPON_NONE; }
  24. virtual Activity GetDrawActivity( void );
  25. virtual Activity GetIdleActivity( void );
  26. virtual bool CanDeploy( void );
  27. virtual const char *GetCompanionWeaponName( void );
  28. virtual float GetRecoil( void );
  29. #ifndef CLIENT_DLL
  30. void ShootGrenade( void );
  31. virtual void EmitGrenade( Vector vecSrc, QAngle vecAngles, Vector vecVel, AngularImpulse angImpulse, CBasePlayer *pPlayer, float flLifeTime );
  32. #endif
  33. private:
  34. CWeaponBaseRifleGrenade( const CWeaponBaseRifleGrenade & );
  35. };