37 float GetEventTime(
float hc_value,
float threshold_low,
float threshold_high,
float low_min,
float high_min,
float low_max,
float high_max)
39 float inv_value =
Math.InverseLerp(threshold_low, threshold_high, hc_value);
40 float value_min =
Math.Lerp(low_min, high_min, inv_value);
41 float value_max =
Math.Lerp(low_max, high_max, inv_value);
43 return Math.RandomFloatInclusive(value_min, value_max);
51 float hc =
m_Player.GetStatHeatComfort().Get();
55 m_ProcessTimeAccuFreezeRattle++;
57 if (m_EventTimeFreezeRattle < 0)
60 if( m_ProcessTimeAccuFreezeRattle > m_EventTimeFreezeRattle )
62 m_ProcessTimeAccuFreezeRattle = 0;
63 m_EventTimeFreezeRattle = -1;
64 m_Player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_FREEZE_RATTLE);
70 m_ProcessTimeAccuFreeze++;
72 if(m_EventTimeFreeze < 0)
77 if( m_ProcessTimeAccuFreeze > m_EventTimeFreeze )
79 m_ProcessTimeAccuFreeze = 0;
80 m_EventTimeFreeze = -1;
81 m_Player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_FREEZE);
86 m_ProcessTimeAccuHot++;
88 if(m_EventTimeHot < 0)
93 if( m_ProcessTimeAccuHot > m_EventTimeHot )
95 m_ProcessTimeAccuHot = 0;
97 m_Player.GetSymptomManager().QueueUpPrimarySymptom(SymptomIDs.SYMPTOM_HOT);