mirror of
https://github.com/nillerusr/source-engine.git
synced 2026-08-18 22:41:58 +00:00
1
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// TF Generic Bomb
|
||||
//
|
||||
//=============================================================================
|
||||
#ifndef TF_GENERIC_BOMB_H
|
||||
#define TF_GENERIC_BOMB_H
|
||||
#ifdef _WIN32
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#ifdef CLIENT_DLL
|
||||
#define CTFGenericBomb C_TFGenericBomb
|
||||
#endif
|
||||
|
||||
class CTFGenericBombShim : public CBaseAnimating
|
||||
{
|
||||
virtual void GenericTouch( CBaseEntity *pOther ) = 0;
|
||||
public:
|
||||
void Touch( CBaseEntity *pOther ) { return GenericTouch( pOther ) ; }
|
||||
};
|
||||
|
||||
DECLARE_AUTO_LIST( ITFGenericBomb );
|
||||
|
||||
class CTFGenericBomb : public CTFGenericBombShim, public ITFGenericBomb
|
||||
{
|
||||
DECLARE_CLASS( CTFGenericBomb, CBaseAnimating );
|
||||
DECLARE_NETWORKCLASS();
|
||||
|
||||
enum EWhoToDamage
|
||||
{
|
||||
DAMAGE_ATTACKER_AND_ATTACKER_ENEMIES,
|
||||
DAMAGE_EVERYONE
|
||||
};
|
||||
|
||||
public:
|
||||
CTFGenericBomb();
|
||||
~CTFGenericBomb() {}
|
||||
|
||||
virtual void Precache( void );
|
||||
virtual void Spawn( void );
|
||||
virtual void GenericTouch( CBaseEntity *pOther ) OVERRIDE;
|
||||
|
||||
#ifdef GAME_DLL
|
||||
DECLARE_DATADESC();
|
||||
|
||||
virtual void Event_Killed( const CTakeDamageInfo &info );
|
||||
#endif
|
||||
|
||||
private:
|
||||
#ifdef GAME_DLL
|
||||
void Detonate( inputdata_t& inputdata );
|
||||
COutputEvent m_OnDetonate;
|
||||
#endif
|
||||
|
||||
bool m_bDead;
|
||||
bool m_bPrecached;
|
||||
|
||||
int m_iTeam;
|
||||
float m_flDamage;
|
||||
int m_nHealth;
|
||||
float m_flRadius;
|
||||
string_t m_strExplodeParticleName;
|
||||
string_t m_strHitParticleName;
|
||||
string_t m_strExplodeSoundName;
|
||||
EWhoToDamage m_eWhoToDamage;
|
||||
};
|
||||
|
||||
#endif //TF_GENERIC_BOMB_H
|
||||
Reference in New Issue
Block a user