source-engine/game/server/hl1/hl1_npc_snark.h
2022-04-16 12:05:19 +03:00

58 lines
1.2 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: Projectile shot from the MP5
//
// $Workfile: $
// $Date: $
//
//-----------------------------------------------------------------------------
// $Log: $
//
// $NoKeywords: $
//=============================================================================//
#ifndef NPC_SNARK_H
#define NPC_SNARK_H
#include "hl1_ai_basenpc.h"
class CSnark : public CHL1BaseNPC
{
DECLARE_CLASS( CSnark, CHL1BaseNPC );
public:
DECLARE_DATADESC();
void Precache( void );
void Spawn( void );
Class_T Classify( void );
void Event_Killed( const CTakeDamageInfo &info );
bool Event_Gibbed( const CTakeDamageInfo &info );
void HuntThink( void );
void SuperBounceTouch( CBaseEntity *pOther );
virtual void ResolveFlyCollisionCustom( trace_t &trace, Vector &vecVelocity );
virtual unsigned int PhysicsSolidMaskForEntity( void ) const;
virtual bool ShouldGib( const CTakeDamageInfo &info ) { return false; }
static float m_flNextBounceSoundTime;
virtual bool IsValidEnemy( CBaseEntity *pEnemy );
private:
Class_T m_iMyClass;
float m_flDie;
Vector m_vecTarget;
float m_flNextHunt;
float m_flNextHit;
Vector m_posPrev;
EHANDLE m_hOwner;
};
#endif // NPC_SNARK_H