diff options
Diffstat (limited to 'game/shared/cstrike/weapon_knife.h')
| -rw-r--r-- | game/shared/cstrike/weapon_knife.h | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/game/shared/cstrike/weapon_knife.h b/game/shared/cstrike/weapon_knife.h new file mode 100644 index 0000000..f7bf851 --- /dev/null +++ b/game/shared/cstrike/weapon_knife.h @@ -0,0 +1,81 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +//=============================================================================// + +#ifndef WEAPON_KNIFE_H +#define WEAPON_KNIFE_H +#ifdef _WIN32 +#pragma once +#endif + + +#include "weapon_csbase.h" + + +#if defined( CLIENT_DLL ) + + #define CKnife C_Knife + +#endif + + +// ----------------------------------------------------------------------------- // +// CKnife class definition. +// ----------------------------------------------------------------------------- // + +class CKnife : public CWeaponCSBase +{ +public: + DECLARE_CLASS( CKnife, CWeaponCSBase ); + DECLARE_NETWORKCLASS(); + DECLARE_PREDICTABLE(); + + #ifndef CLIENT_DLL + DECLARE_DATADESC(); + #endif + + + CKnife(); + + // We say yes to this so the weapon system lets us switch to it. + virtual bool HasPrimaryAmmo(); + virtual bool CanBeSelected(); + + virtual void Precache(); + + void Spawn(); + void Smack(); + //void Smack( trace_t *pTr, float delay ); + bool SwingOrStab( bool bStab ); + void PrimaryAttack(); + void SecondaryAttack(); + void WeaponAnimation( int iAnimation ); + + virtual void ItemPostFrame( void ); + +// virtual float GetSpread() const; + + bool Deploy(); + void Holster( int skiplocal = 0 ); + bool CanDrop(); + + void WeaponIdle(); + + virtual CSWeaponID GetWeaponID( void ) const { return WEAPON_KNIFE; } + +public: + + trace_t m_trHit; + EHANDLE m_pTraceHitEnt; + + CNetworkVar( float, m_flSmackTime ); + bool m_bStab; + +private: + CKnife( const CKnife & ) {} +}; + + +#endif // WEAPON_KNIFE_H |