15class SCR_AIGroupInfoComponent : SCR_AIInfoBaseComponent
21 private EGroupControlMode m_eGroupControlMode;
53 float time_ms =
GetGame().GetWorld().GetWorldTime();
60 float time_ms =
GetGame().GetWorld().GetWorldTime();
67 float time_ms =
GetGame().GetWorld().GetWorldTime();
74 timeout *= (1 - threat) * 0.8 +
Math.RandomFloatInclusive(0, 0.2);
83 float time_ms =
GetGame().GetWorld().GetWorldTime();
91 super.OnPostInit(owner);
100 AddDebugMessage(
string.Format(
"SetGroupControlMode: %1",
typename.EnumToString(EGroupControlMode, currControlMode)), msgType:
EAIDebugMsgType.INFO);
103 if (currControlMode == m_eGroupControlMode)
118 m_eGroupControlMode = currControlMode;
130 return m_eGroupControlMode;
143 writer.WriteIntRange(m_eGroupControlMode, 0, EGroupControlMode.LAST-1);
151 EGroupControlMode groupControlMode;
153 reader.ReadIntRange(groupControlMode, 0, EGroupControlMode.LAST-1);
ArmaReforgerScripted GetGame()
ref ScriptInvoker Event_OnControlModeChanged
SCR_AIGroupInfoComponentClass IDLE
Group has no waypoints and does not engage an enemy.
SCR_AIGroupInfoComponentClass AUTONOMOUS
Group behaves autonomously, e.g. engaging an enemy.
ECharacterStance GetStanceLimit()
void OnAgentSelectedGrenade(AIAgent soldierAgent)
bool IsIllumFlareAllowed()
ECharacterStance GetAllowedStance(ECharacterStance stance)
ECharacterStance m_eStanceLimit
upper stance limit set by group leader's stance in ActivityFollow for recruited AIs to copy;
float m_fTimeGrenadeThrowAllowed_ms
SCR_AIGroupInfoComponentClass FOLLOWING_WAYPOINT
Group is following a waypoint.
SCR_AIGroupInfoComponentClass LAST
void RplSetGroupControlMode(EGroupControlMode currControlMode)
void SetGroupControlMode(EGroupControlMode currControlMode)
const float ILLUM_FLARE_MAX_TIMEOUT_MS
SCR_AIGroupInfoComponentClass GRENADE_THROW_TIMEOUT_MS
const float ILLUM_FLARE_MIN_TIMEOUT_MS
bool IsGrenadeThrowAllowed(AIAgent soldierAgent)
override bool RplLoad(ScriptBitReader reader)
EGroupControlMode GetGroupControlMode()
float m_fTimeIllumFlareAllowed_ms
void SetStanceLimit(ECharacterStance stance)
ScriptInvoker GetOnControlModeChanged()
SCR_AIGroupUtilityComponent m_UtilityComponent
AIAgent m_GrenadeThrowAgent
enum EAIGroupCombatMode ComponentEditorProps(category:"GameScripted/AI", description:"Component for utility AI system for groups")
ScriptInvoker_AIWorldControlModeChanged GetOnControlModeChanged()
IEntity GetOwner()
Owner entity of the fuel tank.
override void EOnInit(IEntity owner)
@ NONE
When Shape is created and not initialized yet.
EntityEvent
Various entity events.
void RplRpc(RplChannel channel, RplRcver rcver, RplCondition condition=RplCondition.None, string customConditionName="")
RplChannel
Communication channel. Reliable is guaranteed to be delivered. Unreliable not.