diff options
Diffstat (limited to 'game/server/movie_explosion.cpp')
| -rw-r--r-- | game/server/movie_explosion.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/game/server/movie_explosion.cpp b/game/server/movie_explosion.cpp new file mode 100644 index 0000000..d3a86d5 --- /dev/null +++ b/game/server/movie_explosion.cpp @@ -0,0 +1,44 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +// $NoKeywords: $ +// +//=============================================================================// +#include "cbase.h" +#include "movie_explosion.h" + +// memdbgon must be the last include file in a .cpp file!!! +#include "tier0/memdbgon.h" + +#define MOVIEEXPLOSION_ENTITYNAME "env_movieexplosion" + + +IMPLEMENT_SERVERCLASS_ST(MovieExplosion, DT_MovieExplosion) +END_SEND_TABLE() + +LINK_ENTITY_TO_CLASS(env_movieexplosion, MovieExplosion); + + +MovieExplosion* MovieExplosion::CreateMovieExplosion(const Vector &pos) +{ + CBaseEntity *pEnt = CreateEntityByName(MOVIEEXPLOSION_ENTITYNAME); + if(pEnt) + { + MovieExplosion *pEffect = dynamic_cast<MovieExplosion*>(pEnt); + if(pEffect && pEffect->edict()) + { + pEffect->SetLocalOrigin( pos ); + pEffect->Activate(); + return pEffect; + } + else + { + UTIL_Remove(pEnt); + } + } + + return NULL; +} + + |