DayZ 1.24
Loading...
Searching...
No Matches
CoolantSteam.c
Go to the documentation of this file.
2{
8
14
16 {
17 Car parent = Car.Cast(GetAttachmentParent());
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 }
51}
Object GetAttachmentParent()
Get the parent set by SetAttachmentParent.
Definition Effect.c:554
override void SetParticleStateHeavy()
Definition CoolantSteam.c:9
override void SetParticleStateLight()
Definition CoolantSteam.c:3
void UpdateParticle()
void SetParticleState(int state)
Particle GetParticle()
Gets the main particle which this Effect is managing.
Legacy way of using particles in the game.
Definition Particle.c:7
static const int HATCHBACK_COOLANT_OVERHEATED
static const int HATCHBACK_COOLANT_OVERHEATING
EmitorParam
Definition EnVisual.c:114