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

◆ _GetSelectedActions()

void _GetSelectedActions ( Object action_source_object,
out array< ActionBase > select_actions_all,
out bool has_any_action_target )

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

309 {
310 if ( !action_source_object )
311 return;
312
313 array<ActionBase_Basic> possible_actions;
314 array<ref ActionBase> variant_actions;
315 action_source_object.GetActions(this.Type(), possible_actions);
316 ActionBase action;
317
318 if(possible_actions)
319 {
320 for (int i = 0; i < possible_actions.Count(); i++)
321 {
322 action = ActionBase.Cast(possible_actions.Get(i));
323
324 if ( action.HasVariants() )
325 {
326 action.UpdateVariants( m_MainItem, m_Target.GetObject(), m_Target.GetComponentIndex() );
327 action.GetVariants( variant_actions);
328 for (int j = 0; j < variant_actions.Count(); j++)
329 {
330 action = variant_actions[j];
331 if ( action.Can(m_Player, m_Target, m_MainItem, m_ConditionMask) )
332 {
333 select_actions_all.Insert(action);
334 if (action.HasTarget())
335 has_any_action_target = true;
336 }
337 }
338 }
339 else
340 {
341 if ( action.Can(m_Player, m_Target, m_MainItem, m_ConditionMask) )
342 {
343 select_actions_all.Insert(action);
344 if (action.HasTarget())
345 has_any_action_target = true;
346 }
347 }
348 }
349 }
350 }
ref ActionTarget m_Target
Определения ActionBase.c:18
class BaitData m_MainItem
Определения ActionBase.c:36
DayZPlayer m_Player
Определения Hand_Events.c:42
string Type
Определения JsonDataContaminatedArea.c:11
int GetVariants(out array< ref ActionBase > variants)
Определения ActionBase.c:928
bool HasVariants()
Определения ActionBase.c:915
void UpdateVariants(Object item, Object target, int componet_index)
Определения ActionBase.c:946
bool HasTarget()
Определения ActionBase.c:244
bool Can(PlayerBase player, ActionTarget target, ItemBase item, int condition_mask)
Определения ActionBase.c:861
Определения ActionBase.c:53
Result for an object found in CGame.IsBoxCollidingGeometryProxy.

Перекрестные ссылки ActionBase::Can(), ActionBase::GetVariants(), ActionBase::HasTarget(), ActionBase::HasVariants(), m_MainItem, m_Player, m_Target, Type и ActionBase::UpdateVariants().

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