DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ UpdateParticle()

void EffCoolantSteam::UpdateParticle ( )
inlineprivate

См. определение в файле CoolantSteam.c строка 15

16 {
17 Car parent = Car.Cast( GetAttachmentParent() );
18 Particle p = GetParticle();
19
20 if (parent && p)
21 {
22 float speed = parent.GetSpeedometerAbsolute();
23
24 float lifetime_scale = (100 - speed) / 100;
25 if (lifetime_scale < 0.1)
26 lifetime_scale = 0.1;
27
28 float birthrate_scale = 1 + (speed * 0.02 );
29
30 float speed_scale = 1 + (speed * 0.2 );
31 if (speed_scale > 10)
32 speed_scale = 10;
33
34 float size_scale = 1 + (speed * 0.05 );
35
36 if (size_scale > 2.5)
37 size_scale = 2.5;
38
39 float gravity_add = speed * 0.005 ;
40
41 p.ScaleParticleParamFromOriginal( EmitorParam.LIFETIME, lifetime_scale );
42 p.ScaleParticleParamFromOriginal( EmitorParam.LIFETIME_RND, lifetime_scale );
43 p.ScaleParticleParamFromOriginal( EmitorParam.BIRTH_RATE, birthrate_scale );
44 p.ScaleParticleParamFromOriginal( EmitorParam.BIRTH_RATE_RND, birthrate_scale );
45 p.ScaleParticleParamFromOriginal( EmitorParam.VELOCITY, speed_scale );
46 p.ScaleParticleParamFromOriginal( EmitorParam.VELOCITY_RND, speed_scale );
47 p.ScaleParticleParamFromOriginal( EmitorParam.SIZE, size_scale );
48 p.SetParticleParam ( EmitorParam.GRAVITY_SCALE, gravity_add );
49 }
50 }
Object GetAttachmentParent()
Get the parent set by SetAttachmentParent.
Определения Effect.c:574
Particle GetParticle()
Gets the main particle which this Effect is managing.
Определения EffectParticle.c:162
void ScaleParticleParamFromOriginal(int parameter_id, float coef)
Scales the given parameter on all emitors relatively to their ORIGINAL value.
Определения Particle.c:678
void SetParticleParam(int parameter_id, float value)
Set the value of a parameter of all emitors in the particle.
Определения Particle.c:611
EmitorParam
Определения EnVisual.c:114

Перекрестные ссылки GetAttachmentParent(), EffectParticle::GetParticle(), Particle::ScaleParticleParamFromOriginal() и Particle::SetParticleParam().

Используется в SetParticleStateHeavy() и SetParticleStateLight().