don't show floating widget if it's disabled in profile or the player is unconscious
check if action has target, otherwise don't show the widget
cursor with fixed position (environment interaction mainly)
build cursor for new target
use cached version for known target - recalculate onscreen pos only
См. определение в файле ActionTargetsCursor.c строка 305
306 {
308 {
311 }
312
315
318
321
322
323
324
325
326
327
328
329
330
332
334 if (isVisionObstructionActive ||
m_Hud.GetHudVisibility().IsContextFlagActive(IngameHudVisibility.HUD_HIDE_FLAGS))
335 {
337 return;
338 }
339
342
345 if (!showTarget)
346 {
349
352 }
353
354 if (showTarget)
355 {
358 {
359
365 return;
366 }
368 {
372 {
374 {
375
380 return;
381 }
382 else
383 {
384
390 return;
391 }
392 }
395 {
397 {
398
402 return;
403 }
404 else
405 {
406
412 return;
413 }
414 }
415 }
416 else
417 {
419 {
423
424
426 }
427 }
428 }
429 else
430 {
432 {
436
437
439 }
440
442 }
443
const ref array< typename > VISION_OBSTRUCTION_PPEFFECTS_TYPES
float m_MaxWidthChild
widget width
void CheckRefresherFlagVisibilityEx(ActionTarget target)
void GetActions()
get actions from Action Manager
ActionBase m_ContinuousInteract
ref ATCCachedObject m_CachedObject
void BuildFloatingCursor(bool forceRebuild)
Перекрестные ссылки BuildFixedCursor(), BuildFloatingCursor(), CheckRefresherFlagVisibilityEx(), GetActionManager(), GetActions(), GetDayZGame(), GetPlayer(), PPEManagerStatic::GetPPEManager(), GetTarget(), HideWidget(), m_AM, m_CachedObject, m_Continuous, m_ContinuousInteract, m_FixedOnPosition, m_Hidden, m_Hud, m_Interact, m_MaxWidthChild, m_Player, m_Root, m_Single, m_Target и VISION_OBSTRUCTION_PPEFFECTS_TYPES.
Используется в OnUpdate().