Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_AIRemoveVehicleFromGroup.c
Go to the documentation of this file.
1
class
SCR_AIRemoveVehicleFromGroup
:
AITaskScripted
2
{
3
static
const
string
PORT_VEHICLE =
"VehicleIn"
;
4
5
[
Attribute
(
"1"
,
UIWidgets
.CheckBox,
"Remove all vehicles used by any group member?"
)]
6
bool
m_bRemoveAllUsedVehicles;
7
8
//------------------------------------------------------------------------------------------------
9
override
ENodeResult
EOnTaskSimulate(AIAgent owner,
float
dt)
10
{
11
SCR_AIGroup
group =
SCR_AIGroup
.Cast(owner);
12
if
(!group)
13
return
NodeError
(
this
,owner,
"Node must be run on SCR_AIGroup agent!"
);
14
15
SCR_AIGroupVehicleManager
vehicleMgr = group.
GetGroupUtilityComponent
().
m_VehicleMgr
;
16
17
IEntity
agentEntity, vehicleEntity;
18
19
if
(
GetVariableIn
(PORT_VEHICLE, vehicleEntity))
20
{
21
SCR_AIVehicleUsageComponent
vehicleUsageComp =
SCR_AIVehicleUsageComponent
.
FindOnNearestParent
(vehicleEntity, vehicleEntity);
22
if
(!vehicleUsageComp)
23
return
ENodeResult
.FAIL;
24
25
vehicleMgr.
RemoveVehicle
(vehicleUsageComp);
26
return
ENodeResult
.SUCCESS;
27
};
28
29
if
(!m_bRemoveAllUsedVehicles)
30
{
31
return
ENodeResult
.FAIL;
32
};
33
34
array<ref SCR_AIGroupVehicle> groupVehicles = {};
35
vehicleMgr.
GetAllVehicles
(groupVehicles);
36
37
foreach
(ref
SCR_AIGroupVehicle
vehicle : groupVehicles)
38
vehicleMgr.
RemoveVehicle
(vehicle.GetVehicleUsageComponent());
39
40
return
ENodeResult
.SUCCESS;
41
}
42
43
//------------------------------------------------------------------------------------------------
44
protected
static
ref
TStringArray
s_aVarsIn
= {
45
PORT_VEHICLE
46
};
47
override
TStringArray
GetVariablesIn
()
48
{
49
return
s_aVarsIn
;
50
}
51
52
//------------------------------------------------------------------------------------------------
53
protected
static
override
bool
VisibleInPalette
()
54
{
55
return
true
;
56
}
57
58
//------------------------------------------------------------------------------------------------
59
protected
static
override
string
GetOnHoverDescription
()
60
{
61
return
"Removes vehicle from the list of usable vehicles of the group. Provide either a vehicle entity or removes all vehicles used by any group member"
;
62
}
63
64
};
NodeError
ENodeResult NodeError(Node node, AIAgent owner, string msg)
Error call to be used in scripted BT nodes.
Definition
NodeError.c:3
AITaskScripted
Definition
AITaskScripted.c:13
IEntity
Definition
IEntity.c:13
Node::GetVariableIn
proto bool GetVariableIn(string name, out void val)
SCR_AIGroup
Definition
SCR_AIGroup.c:75
SCR_AIGroup::GetGroupUtilityComponent
SCR_AIGroupUtilityComponent GetGroupUtilityComponent()
Definition
SCR_AIGroup.c:208
SCR_AIGroupUtilityComponent::m_VehicleMgr
ref SCR_AIGroupVehicleManager m_VehicleMgr
Definition
SCR_AIGroupUtilityComponent.c:63
SCR_AIGroupVehicle
This class is used for keeping track of vehicles assigned to group.
Definition
SCR_AIGroupVehicle.c:3
SCR_AIGroupVehicleManager
Definition
SCR_AIGroupVehicleManager.c:2
SCR_AIGroupVehicleManager::GetAllVehicles
void GetAllVehicles(array< ref SCR_AIGroupVehicle > outAllVehicles)
Definition
SCR_AIGroupVehicleManager.c:39
SCR_AIGroupVehicleManager::RemoveVehicle
bool RemoveVehicle(notnull SCR_AIVehicleUsageComponent vehicleUsageComp)
Definition
SCR_AIGroupVehicleManager.c:74
SCR_AIRemoveVehicleFromGroup
Definition
SCR_AIRemoveVehicleFromGroup.c:2
SCR_AIRemoveVehicleFromGroup::VisibleInPalette
static override bool VisibleInPalette()
Definition
SCR_AIRemoveVehicleFromGroup.c:53
SCR_AIRemoveVehicleFromGroup::GetOnHoverDescription
static override string GetOnHoverDescription()
Definition
SCR_AIRemoveVehicleFromGroup.c:59
SCR_AIRemoveVehicleFromGroup::GetVariablesIn
override TStringArray GetVariablesIn()
Definition
SCR_AIRemoveVehicleFromGroup.c:47
SCR_AIRemoveVehicleFromGroup::s_aVarsIn
static ref TStringArray s_aVarsIn
Definition
SCR_AIRemoveVehicleFromGroup.c:44
SCR_AIVehicleUsageComponent
Definition
SCR_AIVehicleUsageComponent.c:30
SCR_AIVehicleUsageComponent::FindOnNearestParent
static SCR_AIVehicleUsageComponent FindOnNearestParent(notnull IEntity ent, out IEntity componentOwner)
Definition
SCR_AIVehicleUsageComponent.c:140
UIWidgets
Definition
attributes.c:40
ENodeResult
ENodeResult
Definition
ENodeResult.c:13
Attribute
SCR_FieldOfViewSettings Attribute
Definition
SendGoalMessage.c:170
TStringArray
array< string > TStringArray
Definition
Types.c:385
scripts
Game
AI
ScriptedNodes
Waypoints
SCR_AIRemoveVehicleFromGroup.c
Generated by
1.17.0