hl2_src-leak-2017/src/game/shared/tf2/weapon_rocketlauncher.h

58 lines
1.3 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: Rocket Launcher (Weapon)
//
//=============================================================================//
#ifndef WEAPON_ROCKETLAUNCHER_H
#define WEAPON_ROCKETLAUNCHER_H
#ifdef _WIN32
#pragma once
#endif
#include "basetfcombatweapon_shared.h"
#if defined( CLIENT_DLL )
// Client Only
#define CWeaponRocketLauncher C_WeaponRocketLauncher
#endif
//=============================================================================
//
// Rocket Launcher (Weapon)
//
class CWeaponRocketLauncher : public CWeaponCombatUsedWithShieldBase
{
DECLARE_CLASS( CWeaponRocketLauncher, CWeaponCombatUsedWithShieldBase );
public:
// Client & Server
DECLARE_NETWORKCLASS();
DECLARE_PREDICTABLE();
CWeaponRocketLauncher();
~CWeaponRocketLauncher();
void Spawn( void );
// All predicted weapons need to implement and return true
bool IsPredicted( void ) const { return true; }
void PrimaryAttack( void );
void ItemPostFrame( void );
float GetFireRate( void );
bool ComputeEMPFireState( void );
#if defined( CLIENT_DLL )
// Client Only
bool ShouldPredict( void );
#endif
private:
// Client & Server
CWeaponRocketLauncher( const CWeaponRocketLauncher& );
};
#endif // WEAPON_ROCKETLAUNCHER_H