//====================================================================================================================== // PARTICLE SYSTEM STOP EFFECT //====================================================================================================================== //----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void ParticleEffectStopCallback( const CEffectData &data ) { if ( data.m_hEntity.Get() ) { C_BaseEntity *pEnt = C_BaseEntity::Instance( data.m_hEntity ); if ( pEnt ) { if ( data.m_nHitBox > 0 ) { if ( pEnt->IsWorld() ) { if ( data.m_nHitBox > 0 ) { CNewParticleEffect::RemoveParticleEffect( data.m_nHitBox ); } } else { CParticleSystemDefinition *pDef = g_pParticleSystemMgr->FindPrecachedParticleSystem( data.m_nHitBox ); if ( pDef ) { pEnt->ParticleProp()->StopParticlesNamed( pDef->GetName(), true ); } } } else { pEnt->ParticleProp()->StopEmission(); } } } }