hl2_src-leak-2017/src/game/shared/cstrike/weapon_csbasegun.h

59 lines
1.1 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#ifndef WEAPON_CSBASE_GUN_H
#define WEAPON_CSBASE_GUN_H
#ifdef _WIN32
#pragma once
#endif
#include "weapon_csbase.h"
// This is the base class for pistols and rifles.
#if defined( CLIENT_DLL )
#define CWeaponCSBaseGun C_WeaponCSBaseGun
#else
#endif
class CWeaponCSBaseGun : public CWeaponCSBase
{
public:
DECLARE_CLASS( CWeaponCSBaseGun, CWeaponCSBase );
DECLARE_NETWORKCLASS();
DECLARE_PREDICTABLE();
CWeaponCSBaseGun();
virtual void PrimaryAttack();
virtual void Spawn();
virtual bool Deploy();
virtual bool Reload();
virtual void WeaponIdle();
// Derived classes call this to fire a bullet.
bool CSBaseGunFire( float flCycleTime, CSWeaponMode weaponMode );
// Usually plays the shot sound. Guns with silencers can play different sounds.
virtual void DoFireEffects();
virtual void ItemPostFrame();
protected:
float m_zoomFullyActiveTime;
private:
CWeaponCSBaseGun( const CWeaponCSBaseGun & );
};
#endif // WEAPON_CSBASE_GUN_H