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.

51 lines
1.3 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. //=============================================================================
  6. #ifndef TF_WEAPON_ROCKETPACK_H
  7. #define TF_WEAPON_ROCKETPACK_H
  8. #ifdef _WIN32
  9. #pragma once
  10. #endif
  11. #include "tf_weaponbase_melee.h"
  12. #include "tf_shareddefs.h"
  13. #include "tf_viewmodel.h"
  14. #ifdef CLIENT_DLL
  15. #define CTFRocketPack C_TFRocketPack
  16. #endif
  17. class CTFRocketPack : public CTFWeaponBaseMelee
  18. {
  19. public:
  20. DECLARE_CLASS( CTFRocketPack, CTFWeaponBaseMelee );
  21. DECLARE_NETWORKCLASS();
  22. DECLARE_PREDICTABLE();
  23. CTFRocketPack();
  24. virtual void PreCache( void );
  25. virtual int GetWeaponID( void ) const { return TF_WEAPON_ROCKETPACK; }
  26. virtual void PrimaryAttack( void );
  27. virtual bool Deploy( void );
  28. virtual bool Holster( CBaseCombatWeapon *pSwitchingTo );
  29. #ifdef GAME_DLL
  30. bool CanFire( void );
  31. #endif // GAME_DLL
  32. virtual float InternalGetEffectBarRechargeTime( void ) { return 5.0; }
  33. virtual int GetEffectBarAmmo( void ) { return TF_AMMO_GRENADES1; }
  34. float GetProgress( void ) { return GetEffectBarProgress(); }
  35. const char* GetEffectLabelText( void ) { return "FUEL"; }
  36. float GetEffectMeterTime( void );
  37. private:
  38. CTFRocketPack( const CTFRocketPack & ) {}
  39. float m_flRefireTime;
  40. };
  41. #endif // TF_WEAPON_ROCKETPACK_H