sqwarmed/sdk_src/game/server/cbaseprojectile.h

49 lines
1.2 KiB
C++

//========= Copyright © 1996-2007, Valve Corporation, All rights reserved. ============//
//
// Purpose: Base class for simple projectiles
//
// $NoKeywords: $
//=============================================================================//
#ifndef CBASEPROJECTILE_H
#define CBASEPROJECTILE_H
#ifdef _WIN32
#pragma once
#endif
enum MoveType_t;
enum MoveCollide_t;
//=============================================================================
//=============================================================================
class CBaseProjectile : public CBaseAnimating
{
DECLARE_DATADESC();
DECLARE_CLASS( CBaseProjectile, CBaseAnimating );
public:
void Touch( CBaseEntity *pOther );
virtual void HandleTouch( CBaseEntity *pOther );
void Think();
virtual void HandleThink();
void Spawn( char *pszModel,
const Vector &vecOrigin,
const Vector &vecVelocity,
edict_t *pOwner,
MoveType_t iMovetype,
MoveCollide_t nMoveCollide,
int iDamage,
int iDamageType,
CBaseEntity *pIntendedTarget = NULL );
virtual void Precache( void ) {};
int m_iDmg;
int m_iDmgType;
EHANDLE m_hIntendedTarget;
};
#endif // CBASEPROJECTILE_H