3 ref SCR_BTParam<vector> m_vPosition =
new SCR_BTParam<vector>(
SCR_AIActionTask.POSITION_PORT);
20 m_sBehaviorTree =
"AI/BehaviorTrees/Chimera/Soldier/KeepInFormation.bt";
21 if (priorityLevel > 0)
32 ref SCR_BTParamAssignable<IEntity> m_Entity =
new SCR_BTParamAssignable<IEntity>(
SCR_AIActionTask.ENTITY_PORT);
33 ref SCR_BTParamAssignable<float> m_Radius =
new SCR_BTParamAssignable<float>(
SCR_AIActionTask.RADIUS_PORT);
36 void SCR_AIMoveIndividuallyBehavior(SCR_AIUtilityComponent utility,
SCR_AIActivityBase groupActivity, vector pos,
float priority = PRIORITY_BEHAVIOR_MOVE_INDIVIDUALLY,
float priorityLevel = PRIORITY_LEVEL_NORMAL, IEntity ent =
null,
float radius = 1.0)
38 m_sBehaviorTree =
"AI/BehaviorTrees/Chimera/Soldier/MoveIndividually.bt";
42 m_Radius.Init(
this, radius);
46 override string GetActionDebugInfo()
48 return this.ToString() +
" moving to " +
m_vPosition.ValueToString();
55 ref SCR_BTParam<bool> m_bIsDangerous =
new SCR_BTParam<bool>(
SCR_AIActionTask.IS_DANGEROUS_PORT);
56 ref SCR_BTParam<float> m_fRadius =
new SCR_BTParam<float>(
SCR_AIActionTask.RADIUS_PORT);
57 ref SCR_BTParam<bool> m_bResetTimer =
new SCR_BTParam<bool>(
SCR_AIActionTask.RESET_TIMER_PORT);
58 ref SCR_BTParam<float> m_fTimeOut =
new SCR_BTParam<float>(
SCR_AIActionTask.TIMEOUT_PORT);
59 ref SCR_BTParam<float> m_fDuration =
new SCR_BTParam<float>(
"Duration");
63 bool m_bCanTimeout =
true;
64 protected static const float INVESTIGATION_TIMEOUT_MS = 20000;
71 m_bResetTimer.Init(
this,
false);
73 m_fTimeOut.Init(
this, 5.0 * 60.0);
74 m_fDuration.Init(
this, Math.RandomFloat(0.8*duration, 1.2*duration));
77 m_sBehaviorTree =
"AI/BehaviorTrees/Chimera/Soldier/MoveAndInvestigate.bt";
81 m_fTimeStamp =
GetGame().GetWorld().GetWorldTime();
92 override void OnActionSelected()
94 super.OnActionSelected();
95 m_bCanTimeout =
false;
104 override TStringArray GetVariablesIn() {
return s_aVarsIn; }
105 override bool VisibleInPalette() {
return true; }