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

◆ UpdateVisibility()

void GameplayEffectWidgets_base::UpdateVisibility ( )
inlineprotected

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

214 {
215 Widget w;
216 //Hide diff
217 int value;
218 int runningEffectCount = m_RunningEffects.Count();
219 bool runningEffectsPresent = runningEffectCount > 0;
220 GameplayEffectsData dta;
221 for (int i = 0; i < m_RunningEffectsPrevious.Count(); i++)
222 {
223 value = m_RunningEffectsPrevious.Get(i);
224 dta = m_WidgetDataMap.Get(value);
225 if (runningEffectCount < 1 || m_RunningEffects.Find(value) == -1)
226 {
227 if (dta.HasDefinedHandle())
228 {
229 dta.UpdateVisibility(false);
230 }
231 else
232 {
233 for (int j = 0; j < m_WidgetDataMap.Get(value).GetWidgetSet().Count(); j++)
234 {
235 w = m_WidgetDataMap.Get(value).GetWidgetSet().Get(j);
236 w.Show(false);
237 }
238 w.GetParent().Show(false);
239 }
240 }
241 }
242
243 //Show running effects
244 if (runningEffectsPresent)
245 {
246 value = 0;
247 for (i = 0; i < runningEffectCount; i++)
248 {
249 value = m_RunningEffects.Get(i);
250 dta = m_WidgetDataMap.Get(value);
251 if (dta.HasDefinedHandle())
252 {
253 dta.m_LayoutRoot.Show(true);
254 dta.UpdateVisibility(true);
255 }
256 else
257 {
258 for (j = 0; j < m_WidgetDataMap.Get(value).GetWidgetSet().Count(); j++)
259 {
260 w = m_WidgetDataMap.Get(value).GetWidgetSet().Get(j);
261 w.Update();
262 w.Show(true);
263 }
264
265 while (w) //dumb but necessary because of uncertain "visible" setting of the layout
266 {
267 w = w.GetParent();
268 if (w)
269 {
270 w.Show(true);
271 }
272 }
273 }
274 }
275 }
276
277 m_Root.Show(runningEffectsPresent && m_SuspendRequests.Count() < 1);
279 }
@ Count
Определения RandomGeneratorSyncManager.c:8
ref set< int > m_RunningEffects
Определения GameplayEffectWidgets.c:12
ref GameplayEffectDataMap m_WidgetDataMap
Определения GameplayEffectWidgets.c:11
ref set< int > m_RunningEffectsPrevious
Определения GameplayEffectWidgets.c:13
ref set< int > m_SuspendRequests
Определения GameplayEffectWidgets.c:17
ref Widget m_Root
Определения GameplayEffectWidgets.c:8
override void UpdateVisibility(bool state)
Определения GEWidgetsMetaDataBleeding.c:197
override bool HasDefinedHandle()
Определения GEWidgetsMetaDataBleeding.c:44
WorkspaceWidget Widget
Defined in code.

Перекрестные ссылки Count, GameplayEffectsData::HasDefinedHandle(), m_Root, m_RunningEffects, m_RunningEffectsPrevious, m_SuspendRequests, m_WidgetDataMap и GameplayEffectsData::UpdateVisibility().

Используется в AddActiveEffects(), AddSuspendRequest(), ClearSuspendRequests(), GameplayEffectWidgets(), RemoveActiveEffects(), RemoveSuspendRequest() и StopAllEffects().