3 SCR_AIGroupUtilityComponent m_Utility;
4 ref SCR_BTParam<bool> m_bIsWaypointRelated =
new SCR_BTParam<bool>(
SCR_AIActionTask.WAYPOINT_RELATED_PORT);
5 AIWaypoint m_RelatedWaypoint =
null;
6 bool m_bAllowFireteamRebalance =
true;
8 array<ref SCR_AIActivityFeatureBase> GetActivityFeatures()
15 array<ref SCR_AIActivityFeatureBase> features = GetActivityFeatures();
16 if (!features)
return null;
19 if (feature && feature.IsInherited(featureType))
26 void InitParameters(AIWaypoint relatedWaypoint)
28 bool isWaypointRelated = relatedWaypoint !=
null;
30 m_RelatedWaypoint = relatedWaypoint;
34 void SCR_AIActivityBase(SCR_AIGroupUtilityComponent utility, AIWaypoint relatedWaypoint)
37 InitParameters(relatedWaypoint);
41 protected void SendCancelMessagesToAllAgents()
43 AICommunicationComponent comms = m_Utility.m_Owner.GetCommunicationComponent();
48 array<AIAgent> agents = {};
49 m_Utility.m_Owner.GetAgents(agents);
50 foreach (AIAgent agent : agents)
57 msg.SetReceiver(agent);
58 comms.RequestBroadcast(msg, agent);
64 override void AddDebugMessage(
string str)
66 SCR_AIInfoBaseComponent infoComp = SCR_AIInfoBaseComponent.Cast(m_Utility.GetOwner().FindComponent(SCR_AIInfoBaseComponent));
67 infoComp.AddDebugMessage(
string.Format(
"%1: %2",
this, str), msgType:
EAIDebugMsgType.ACTION);
75 void SCR_AIIdleActivity(SCR_AIGroupUtilityComponent utility, AIWaypoint relatedWaypoint)
77 m_sBehaviorTree =
"AI/BehaviorTrees/Chimera/Group/ActivityIdle.bt";