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

◆ UpdateVisibility()

void GameplayEffectWidgets_base::UpdateVisibility ( )
inlineprotected

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

233 {
234 Widget w;
235 //Hide diff
236 int value;
237 int runningEffectCount = m_RunningEffects.Count();
238 bool runningEffectsPresent = runningEffectCount > 0;
239 GameplayEffectsData dta;
240 for (int i = 0; i < m_RunningEffectsPrevious.Count(); i++)
241 {
242 value = m_RunningEffectsPrevious.Get(i);
243 dta = m_WidgetDataMap.Get(value);
244 if (runningEffectCount < 1 || m_RunningEffects.Find(value) == -1)
245 {
246 if (dta.HasDefinedHandle())
247 {
248 dta.UpdateVisibility(false);
249 }
250 else
251 {
252 for (int j = 0; j < m_WidgetDataMap.Get(value).GetWidgetSet().Count(); j++)
253 {
254 w = m_WidgetDataMap.Get(value).GetWidgetSet().Get(j);
255 w.Show(false);
256 }
257 w.GetParent().Show(false);
258 }
259 }
260 }
261
262 //Show running effects
263 if (runningEffectsPresent)
264 {
265 value = 0;
266 for (i = 0; i < runningEffectCount; i++)
267 {
268 value = m_RunningEffects.Get(i);
269 dta = m_WidgetDataMap.Get(value);
270 if (dta.HasDefinedHandle())
271 {
272 dta.m_LayoutRoot.Show(true);
273 dta.UpdateVisibility(true);
274 }
275 else
276 {
277 for (j = 0; j < m_WidgetDataMap.Get(value).GetWidgetSet().Count(); j++)
278 {
279 w = m_WidgetDataMap.Get(value).GetWidgetSet().Get(j);
280 w.Update();
281 w.Show(true);
282 }
283
284 while (w) //dumb but necessary because of uncertain "visible" setting of the layout
285 {
286 w = w.GetParent();
287 if (w)
288 {
289 w.Show(true);
290 }
291 }
292 }
293 }
294 }
295
296 m_Root.Show(runningEffectsPresent && m_SuspendRequests.Count() < 1);
298 }
@ 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().