ExhaustSmoke.c
class EffExhaustSmoke : EffVehicleSmoke
{
override void SetParticleStateLight()
{
SetParticleState( ParticleList.HATCHBACK_EXHAUST_SMOKE );
Car parent = Car.Cast( GetAttachmentParent() );
Particle p = GetParticle();
if ( parent && p )
{
float speed = parent.GetSpeedometerAbsolute();
float lifetime_scale;
if (speed < 100)
lifetime_scale = (100 - speed) / 100;
else
lifetime_scale = 0.1;
float birthrate_scale = 1 + (speed * 0.1 );
p.ScaleParticleParamFromOriginal( EmitorParam.LIFETIME, lifetime_scale );
p.ScaleParticleParamFromOriginal( EmitorParam.LIFETIME_RND, lifetime_scale );
p.ScaleParticleParamFromOriginal( EmitorParam.BIRTH_RATE, birthrate_scale );
p.ScaleParticleParamFromOriginal( EmitorParam.BIRTH_RATE_RND, birthrate_scale );
}
}
}