67 {
68 if (m_Boat.GetCurrentGear() == 0)
69 {
71 {
75 }
76
77 return;
78 }
79
80 super.Update(timeSlice);
81
83 float lerp1, lerp2;
84
88
89 UpdatePosToSeaLevel(timeSlice, -0.2);
90
93
94 for (int i = 0; i < m_EmitorCount; i++)
95 {
96 if (i == 11 || i == 12)
97 {
99 }
100 else if (i < 5 || i == 7 || i == 8)
101 {
103 {
104 if (
GetGame().GetWaterDepth(m_Boat.CoordToParent(m_MemPointPos)) < -0.1)
105 EnableEmitor(ptc, i, false);
106 else
107 EnableEmitor(ptc, i, true);
108
110 }
111 }
112 }
113 }
void UpdateSpeedState(Particle ptc, float speed)
bool IsPlaying()
Returns true when the Effect is playing, false otherwise.
vector GetLocalPosition()
Get the local position of the Effect.
proto native ParticleSource GetParticle(int index)
Manually get the particle at index.
float GetParameterOriginal(int emitter, int parameter)
void SetParameter(int emitter, int parameter, float value)
Set the value of a parameter of an emitor in the particle.
Legacy way of using particles in the game.
override void SetParticleParam(int parameter_id, float value)
Set the value of a parameter of all emitors in the particle.
proto float Normalize()
Normalizes vector. Returns length.
proto native CGame GetGame()
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...
proto native vector dBodyGetVelocityAt(notnull IEntity body, vector globalpos)
void Stop()
Stops all elements this effect consists of.