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.

50 lines
1.1 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. //=============================================================================//
  6. #include "basecombatweapon_shared.h"
  7. #ifndef BASEHLCOMBATWEAPON_SHARED_H
  8. #define BASEHLCOMBATWEAPON_SHARED_H
  9. #ifdef _WIN32
  10. #pragma once
  11. #endif
  12. #if defined( CLIENT_DLL )
  13. #define CBaseHL1CombatWeapon C_BaseHL1CombatWeapon
  14. #endif
  15. class CBaseHL1CombatWeapon : public CBaseCombatWeapon
  16. {
  17. DECLARE_CLASS( CBaseHL1CombatWeapon, CBaseCombatWeapon );
  18. public:
  19. DECLARE_NETWORKCLASS();
  20. DECLARE_PREDICTABLE();
  21. public:
  22. void Spawn( void );
  23. public:
  24. // Server Only Methods
  25. #if !defined( CLIENT_DLL )
  26. DECLARE_DATADESC();
  27. virtual void Precache();
  28. void FallInit( void ); // prepare to fall to the ground
  29. virtual void FallThink( void ); // make the weapon fall to the ground after spawning
  30. void EjectShell( CBaseEntity *pPlayer, int iType );
  31. Vector GetSoundEmissionOrigin() const;
  32. #else
  33. virtual void AddViewmodelBob( CBaseViewModel *viewmodel, Vector &origin, QAngle &angles );
  34. virtual float CalcViewmodelBob( void );
  35. #endif
  36. };
  37. #endif // BASEHLCOMBATWEAPON_SHARED_H