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_CampaignTaskHelper.c
Go to the documentation of this file.
1
class
SCR_CampaignTaskHelper
2
{
3
//------------------------------------------------------------------------------------------------
8
static
SCR_Task
GetTaskOnBase(notnull
SCR_CampaignMilitaryBaseComponent
campaignMilitaryBase, notnull
Faction
faction,
typename
taskClass)
9
{
10
array<SCR_Task> tasks = {};
11
SCR_TaskSystem
.GetInstance().GetTasksByStateFiltered(
12
tasks,
13
SCR_ETaskState
.CREATED |
SCR_ETaskState
.ASSIGNED,
14
faction.GetFactionKey(),
15
-1,
16
taskClass
17
);
18
19
SCR_CampaignMilitaryBaseTaskData
data
;
20
SCR_CampaignMilitaryBaseComponent
base
;
21
SCR_CampaignMilitaryBaseTaskEntity campaignMilitaryBaseTask;
22
23
foreach
(
SCR_Task
task
: tasks)
24
{
25
campaignMilitaryBaseTask = SCR_CampaignMilitaryBaseTaskEntity.Cast(
task
);
26
if
(!campaignMilitaryBaseTask)
27
continue
;
28
29
data
=
SCR_CampaignMilitaryBaseTaskData
.Cast(
task
.GetTaskData());
30
if
(!
data
)
31
continue
;
32
33
base
= campaignMilitaryBaseTask.GetMilitaryBase();
34
if
(!
base
)
35
continue
;
36
37
if
(
base
== campaignMilitaryBase)
38
return
task
;
39
}
40
41
return
null;
42
}
43
44
//------------------------------------------------------------------------------------------------
50
static
SCR_Task
GetNearestTask(
vector
position
, notnull
Faction
faction,
typename
taskClass, out
float
nearestTaskDistance)
51
{
52
array<SCR_Task> tasks = {};
53
SCR_TaskSystem
.GetInstance().GetTasksByStateFiltered(
54
tasks,
55
SCR_ETaskState
.CREATED |
SCR_ETaskState
.ASSIGNED,
56
faction.GetFactionKey(),
57
-1,
58
taskClass
59
);
60
61
nearestTaskDistance =
float
.MAX;
62
float
taskDistance;
63
SCR_Task
nearestTask;
64
65
foreach
(
SCR_Task
task
: tasks)
66
{
67
if
(!
task
)
68
continue
;
69
70
taskDistance =
vector
.DistanceSqXZ(
position
,
task
.GetTaskPosition());
71
if
(taskDistance < nearestTaskDistance)
72
{
73
nearestTaskDistance = taskDistance;
74
nearestTask =
task
;
75
}
76
}
77
78
nearestTaskDistance =
Math
.Sqrt(nearestTaskDistance);
79
return
nearestTask;
80
}
81
}
position
vector position
Definition
SCR_DestructibleTreeV2.c:30
data
Get all prefabs that have the spawner data
Definition
SCR_EntityCatalogManagerComponent.c:320
base
around base
Definition
SCR_HoldCampaignMilitaryBaseTaskEntity.c:9
SCR_Task
void SCR_Task(IEntitySource src, IEntity parent)
Definition
SCR_Task.c:1938
SCR_ETaskState
SCR_ETaskState
Definition
SCR_Task.c:3
task
from task
Definition
SCR_TaskNotificationConfigs.c:12
Faction
Definition
Faction.c:13
Math
Definition
Math.c:13
SCR_CampaignMilitaryBaseComponent
Definition
SCR_CampaignMilitaryBaseComponent.c:38
SCR_CampaignMilitaryBaseTaskData
Definition
SCR_CampaignMilitaryBaseTaskData.c:2
SCR_CampaignTaskHelper
Definition
SCR_CampaignTaskHelper.c:2
SCR_TaskSystem
Definition
SCR_TaskSystem.c:6
vector
Definition
vector.c:13
scripts
Game
Tasks
Campaign
SCR_CampaignTaskHelper.c
Generated by
1.17.0