177 {
178 #ifndef SERVER
179 #ifndef NO_GUI
182 #endif
183 #endif
184
186 {
187 return;
188 }
189
190 int valve;
191 float waterHeight, pressureLevel;
194
198 {
200 {
207 break;
208 }
209 }
210
213 {
215 {
218
220 if (wlStageSettings.
Duration == -1.0)
221 {
226 return;
227 }
228
230 float adjustedDuration = wlStageSettings.
Duration;
232 {
235 }
236
238 {
239 float start = adjustedWaterHeight;
243 }
244 else
245 {
249 SetSynchDirty();
250 }
252 }
253 else
254 {
257 }
258 }
259
260 int allValvesStates = 0;
261
264 {
266 {
270
272 if (plStageSettings.Duration == -1.0)
273 {
277 return;
278 }
279
281 {
286 }
287 else
288 {
292 {
295 }
296 else
297 {
299 SetSynchDirty();
300 }
301 }
302
304 }
305 else
306 {
308 }
309
310
312 if (allValvesStates == false)
313 {
315 }
316 }
317 }
float m_WaterLevelHeightActual
void SetDefaultPressureLevelStageSettings(int pValveIndex)
bool IsValvePressureLevelGaugeAtBase(int pValveIndex)
PressureLevelSettings ActualPressureLevelStageSettings(int pValveIndex, bool pDeanimationRequest=false)
ref array< bool > m_PressureDeanimationRequests
WaterLevelSettings ActualWaterLevelStageSettings(int pValveIndex)
void AdvanceToNextPressureLevelStageSettings(int pValveIndex)
PressureLevelSettings PreviousPressureLevelStageSettings(int pValveIndex, bool pDeanimationRequest=false)
void SetWaterLevelHeight(float pHeight)
ref array< bool > m_ValveStates
void SetValvePressureLevelGauge(int pValveIndex, float pValue)
float WaterLevelToHeight(int pWaterLevel)
ref array< float > m_PressureTimesAccumulated
WaterLevelSettings PreviousWaterLevelStageSettings(int pValveIndex)
void AdvanceToNextWaterLevelStageSettings(int pValveIndex)
void HandleSoundEffects()
float PressureLevelToValue(int pPressureLevel)
ref WaterLevelSnapshot m_WaterLevelSnapshot
for deanimation purposes
float AdjustTime(float originalTime)
void SyncValveVariables()
ref array< float > m_WaterLevelTimesAccumulated
ref array< bool > m_PressureAnimationRequests
void PressureLevelSettings(int pPressureLevel, float pDuration)
const float TEMP_HOTIX_TIMESLICE
void HandleVisualEffects()
static float EaseInOutSine(float t)
Input value between 0 and 1, returns value adjusted by easing, no automatic clamping of input(do your...
const int INDEX_NOT_FOUND
static proto float Lerp(float a, float b, float time)
Linearly interpolates between 'a' and 'b' given 'time'.
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.