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

◆ UpdateGeyserState()

void GeyserTrigger::UpdateGeyserState ( )
inlineprotected

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

98 {
99 // Debug.Log("UpdateGeyserState, state: " + m_GeyserState);
100
102 {
103 m_bIsDormant = true;
104 }
105 else if (!CheckGeyserState(EGeyserState.DORMANT) && m_bIsDormant)
106 {
107 m_bIsDormant = false;
108 }
109
110 if (CheckGeyserState(EGeyserState.ERUPTION_SOON) && !m_bIsEruptingSoon)
111 {
112 m_GeyserBubblesParticle = ParticleManager.GetInstance().PlayInWorld(ParticleList.GEYSER_BUBBLES, m_DefaultPosition);
113 m_SoundBubbling = SEffectManager.PlaySound(SOUND_BUBBLING, m_DefaultPosition, 2, 2, true);
114
115 m_bIsEruptingSoon = true;
116 }
117 else if (!CheckGeyserState(EGeyserState.ERUPTION_SOON) && m_bIsEruptingSoon)
118 {
119 m_GeyserBubblesParticle.StopParticle();
120 m_SoundBubbling.Stop();
121
122 m_bIsEruptingSoon = false;
123 }
124
125 if (CheckGeyserState(EGeyserState.ERUPTING_PRIMARY) && !m_bIsErupting)
126 {
127 m_GeyserParticle = ParticleManager.GetInstance().PlayInWorld(ParticleList.GEYSER_NORMAL, m_DefaultPosition);
128
129 m_SoundEruptionStart = SEffectManager.PlaySound(SOUND_ERUPTION_START, m_DefaultPosition, 0, 0, false);
130 m_SoundEruption = SEffectManager.PlaySound(SOUND_ERUPTION, m_DefaultPosition, 2, 2, true);
131
132 m_bIsErupting = true;
133 }
134 else if (!CheckGeyserState(EGeyserState.ERUPTING_PRIMARY) && m_bIsErupting)
135 {
136 m_GeyserParticle.StopParticle();
137
139 m_SoundEruption.Stop();
140
141 m_bIsErupting = false;
142 }
143
144 if (CheckGeyserState(EGeyserState.ERUPTING_SECONDARY) && !m_bIsEruptingTall)
145 {
146 m_GeyserTallParticle = ParticleManager.GetInstance().PlayInWorld(ParticleList.GEYSER_STRONG, m_DefaultPosition);
147
148 m_SoundEruptionSecondaryStart = SEffectManager.PlaySound(SOUND_ERUPTION_TALL_START, m_DefaultPosition, 0, 0, false);
149 m_SoundEruptionSecondary = SEffectManager.PlaySound(SOUND_ERUPTION_TALL, m_DefaultPosition, 0, 0, false);
150
151 m_bIsEruptingTall = true;
152 }
153 else if (!CheckGeyserState(EGeyserState.ERUPTING_SECONDARY) && m_bIsEruptingTall)
154 {
155 m_GeyserSplashParticle = ParticleManager.GetInstance().PlayInWorld(ParticleList.GEYSER_SPLASH, m_DefaultPosition);
156 m_SoundEruptionSecondaryEnd = SEffectManager.PlaySound(SOUND_ERUPTION_TALL_END, m_DefaultPosition, 0, 0, false);
157
158 m_GeyserTallParticle.StopParticle();
161
162 m_bIsEruptingTall = false;
163 }
164 }
EGeyserState
Определения GeyserArea.c:2
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor)
Определения ParticleManager.c:88
const string SOUND_ERUPTION_TALL
Определения GeyserTrigger.c:7
EffectSound m_SoundEruptionSecondary
Определения GeyserTrigger.c:27
ParticleSource m_GeyserParticle
Определения GeyserTrigger.c:21
ParticleSource m_GeyserTallParticle
Определения GeyserTrigger.c:22
const string SOUND_ERUPTION_START
Определения GeyserTrigger.c:6
EffectSound m_SoundBubbling
Определения GeyserTrigger.c:24
bool CheckGeyserState(EGeyserState state)
Определения GeyserTrigger.c:222
EffectSound m_SoundEruptionSecondaryStart
Определения GeyserTrigger.c:28
const string SOUND_ERUPTION_TALL_START
Определения GeyserTrigger.c:8
bool m_bIsEruptingSoon
Определения GeyserTrigger.c:12
const string SOUND_ERUPTION
Определения GeyserTrigger.c:5
ParticleSource m_GeyserSplashParticle
Определения GeyserTrigger.c:23
bool m_bIsDormant
Определения GeyserTrigger.c:11
bool m_bIsErupting
Определения GeyserTrigger.c:13
vector m_DefaultPosition
Определения GeyserTrigger.c:17
EffectSound m_SoundEruption
Определения GeyserTrigger.c:25
bool m_bIsEruptingTall
Определения GeyserTrigger.c:14
const string SOUND_BUBBLING
Определения GeyserTrigger.c:4
const string SOUND_ERUPTION_TALL_END
Определения GeyserTrigger.c:9
EffectSound m_SoundEruptionStart
Определения GeyserTrigger.c:26
ParticleSource m_GeyserBubblesParticle
Определения GeyserTrigger.c:20
EffectSound m_SoundEruptionSecondaryEnd
Определения GeyserTrigger.c:29

Перекрестные ссылки CheckGeyserState(), ParticleList::GEYSER_BUBBLES, ParticleList::GEYSER_NORMAL, ParticleList::GEYSER_SPLASH, ParticleList::GEYSER_STRONG, m_bIsDormant, m_bIsErupting, m_bIsEruptingSoon, m_bIsEruptingTall, m_DefaultPosition, m_GeyserBubblesParticle, m_GeyserParticle, m_GeyserSplashParticle, m_GeyserTallParticle, m_SoundBubbling, m_SoundEruption, m_SoundEruptionSecondary, m_SoundEruptionSecondaryEnd, m_SoundEruptionSecondaryStart, m_SoundEruptionStart, ParticleManager(), SEffectManager::PlaySound(), SOUND_BUBBLING, SOUND_ERUPTION, SOUND_ERUPTION_START, SOUND_ERUPTION_TALL, SOUND_ERUPTION_TALL_END и SOUND_ERUPTION_TALL_START.

Используется в DeferredInit() и OnVariablesSynchronized().