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

◆ HandleSounds()

void MaskMdfr::HandleSounds ( PlayerBase player,
float deltaT,
MaskBase mask )
inlineprivate

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

70 {
71 float filter_quantity_01 = mask.GetFilterQuantity01();
72
73 if(mask.CanHaveExternalFilter() && !mask.IsExternalFilterAttached())
74 return;
75
76 if(filter_quantity_01 > LOW_FILTER_SOUND_THRESHOLD)
77 return;
78
79 float low_quantity_norm = Math.InverseLerp(0, LOW_FILTER_SOUND_THRESHOLD, filter_quantity_01);//should give us 0..1 based on normalized quantity between 0 and LOW_FILTER_SOUND_THRESHOLD
80
81 m_SoundTimeAccu1 += deltaT;
83 {
85
86 EPlayerSoundEventID event_type = EPlayerSoundEventID.STAMINA_LOW_FILTER_UPPER;
87 //under 50% of low filter quantity (not overall filter quantity!!)
88 if (low_quantity_norm < 0.5)
89 {
90 event_type = EPlayerSoundEventID.STAMINA_LOW_FILTER_MID;
91 }
92 if (low_quantity_norm < 0.25)
93 {
94 event_type = EPlayerSoundEventID.STAMINA_LOW_FILTER_LOWER;
95 }
96 player.RequestSoundEventEx(event_type, false, EPlayerSoundEventParam.HIGHEST_PRIORITY);
98 }
99 }
EPlayerSoundEventID
Определения PlayerSoundEventHandler.c:3
const float LOW_FILTER_SOUND_EVENT_MAX
Определения Mask.c:10
const float LOW_FILTER_SOUND_THRESHOLD
Определения Mask.c:12
float m_SoundTimeAccu1
Определения Mask.c:14
const float LOW_FILTER_SOUND_EVENT_MIN
Определения Mask.c:9
float m_NextSoundEventTime
Определения Mask.c:15

Перекрестные ссылки Math::InverseLerp(), Math::Lerp(), LOW_FILTER_SOUND_EVENT_MAX, LOW_FILTER_SOUND_EVENT_MIN, LOW_FILTER_SOUND_THRESHOLD, m_NextSoundEventTime и m_SoundTimeAccu1.

Используется в OnTick().