mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2024-12-23 01:59:43 +08:00
64 lines
1.7 KiB
C++
64 lines
1.7 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
#ifndef WEAPON_BASEHL2MPCOMBATWEAPON_SHARED_H
|
|
#define WEAPON_BASEHL2MPCOMBATWEAPON_SHARED_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#ifdef CLIENT_DLL
|
|
#include "c_hl2mp_player.h"
|
|
#else
|
|
#include "hl2mp_player.h"
|
|
#endif
|
|
|
|
#include "weapon_hl2mpbase.h"
|
|
|
|
#if defined( CLIENT_DLL )
|
|
#define CBaseHL2MPCombatWeapon C_BaseHL2MPCombatWeapon
|
|
#endif
|
|
|
|
class CBaseHL2MPCombatWeapon : public CWeaponHL2MPBase
|
|
{
|
|
#if !defined( CLIENT_DLL )
|
|
DECLARE_DATADESC();
|
|
#endif
|
|
|
|
DECLARE_CLASS( CBaseHL2MPCombatWeapon, CWeaponHL2MPBase );
|
|
public:
|
|
DECLARE_NETWORKCLASS();
|
|
DECLARE_PREDICTABLE();
|
|
|
|
CBaseHL2MPCombatWeapon();
|
|
|
|
virtual bool WeaponShouldBeLowered( void );
|
|
|
|
virtual bool Ready( void );
|
|
virtual bool Lower( void );
|
|
virtual bool Deploy( void );
|
|
virtual bool Holster( CBaseCombatWeapon *pSwitchingTo );
|
|
virtual void WeaponIdle( void );
|
|
|
|
virtual void AddViewmodelBob( CBaseViewModel *viewmodel, Vector &origin, QAngle &angles );
|
|
virtual float CalcViewmodelBob( void );
|
|
|
|
virtual Vector GetBulletSpread( WeaponProficiency_t proficiency );
|
|
virtual float GetSpreadBias( WeaponProficiency_t proficiency );
|
|
|
|
virtual const WeaponProficiencyInfo_t *GetProficiencyValues();
|
|
static const WeaponProficiencyInfo_t *GetDefaultProficiencyValues();
|
|
|
|
virtual void ItemHolsterFrame( void );
|
|
|
|
protected:
|
|
|
|
bool m_bLowered; // Whether the viewmodel is raised or lowered
|
|
float m_flRaiseTime; // If lowered, the time we should raise the viewmodel
|
|
float m_flHolsterTime; // When the weapon was holstered
|
|
|
|
private:
|
|
|
|
CBaseHL2MPCombatWeapon( const CBaseHL2MPCombatWeapon & );
|
|
};
|
|
|
|
#endif // WEAPON_BASEHL2MPCOMBATWEAPON_SHARED_H
|