void CWeaponDrainGrenade::Explode( CBaseCombatCharacter* pAttacker, CBaseEntity* pInflictor, CBaseEntity* pIgnore, Vector vecPosition, float flDamage, float flRadius, float flDrainFocus ) { #if !defined( CLIENT_DLL ) //CSoundEnt::InsertSound ( SOUND_COMBAT, vecPosition, 1024, 3.0 ); CTakeDamageInfo info; info.CFSet( pInflictor, pAttacker, vec3_origin, vecPosition, flDamage, DMG_BLAST, WEAPON_NONE, &vecPosition, false ); info.SetDrainFocus( flDrainFocus ); DispatchParticleEffect("grenade_explosion", vecPosition, vec3_angle, pIgnore); //TODO: Figure out sound. CPASAttenuationFilter filter( this ); filter.UsePredictionRules(); EmitSound( filter, entindex(), "Numen.FireAoE" ); //CSoundEnt::InsertSound ( SOUND_COMBAT, GetAbsOrigin(), BASEGRENADE_EXPLOSION_VOLUME, 3.0 ); RadiusDamage( info, vecPosition, flRadius ); #endif //!defined( CLIENT_DLL ) }