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_TaskListDisplay.c
Go to the documentation of this file.
1
class
SCR_TaskListDisplay
: SCR_InfoDisplayExtended
2
{
3
[
Attribute
(
"m_wTaskListEntryDescription"
)]
4
protected
string
m_sTaskDescriptionWidgetName
;
5
6
protected
bool
m_bHasListener
;
7
protected
SCR_MapEntity
m_MapEntity
;
8
9
protected
SCR_TaskManagerUIComponent
m_TaskManagerUI
;
10
protected
SCR_TaskListUIComponent
m_TaskListComponent
;
11
12
protected
const
string
ACTION_OPEN_TASK_LIST
=
"TasksOpen"
;
13
protected
const
string
CONTENT_TASK_LIST_MAP
=
"TaskListMapContext"
;
14
protected
const
string
CONTENT_TASK_LIST
=
"TaskListContext"
;
15
16
//------------------------------------------------------------------------------------------------
17
override
void
DisplayStartDraw
(
IEntity
owner)
18
{
19
if
(!
m_wRoot
)
20
return
;
21
22
m_TaskManagerUI
=
SCR_TaskManagerUIComponent
.
GetInstance
();
23
24
//## Need to listen for "activated" from input button due to gamepad support so its possible to exit from view with "B" press, but it also triggers action on chimera inputs
25
m_TaskListComponent
= SCR_TaskListUIComponent.Cast(
m_wRoot
.FindHandler(SCR_TaskListUIComponent));
26
if
(
m_TaskListComponent
)
27
m_TaskListComponent
.GetOnButtonTaskListHide().Insert(
CloseTaskList
);
28
29
Widget
taskDescriptionWidget =
m_wRoot
.FindAnyWidget(
m_sTaskDescriptionWidgetName
);
30
if
(taskDescriptionWidget)
31
taskDescriptionWidget.SetVisible(
false
);
32
33
GetGame
().GetInputManager().AddActionListener(
ACTION_OPEN_TASK_LIST
,
EActionTrigger
.DOWN,
OpenTaskList
);
34
m_bHasListener
=
true
;
35
36
m_MapEntity
=
SCR_MapEntity
.
GetMapInstance
();
37
if
(
m_MapEntity
)
38
m_MapEntity
.GetOnMapOpen().Insert(
OnMapOpen
);
39
}
40
41
//------------------------------------------------------------------------------------------------
42
override
void
DisplayStopDraw
(
IEntity
owner)
43
{
44
if
(
m_TaskListComponent
)
45
m_TaskListComponent
.GetOnButtonTaskListHide().Remove(
CloseTaskList
);
46
47
if
(
m_MapEntity
)
48
m_MapEntity
.GetOnMapOpen().Remove(
OnMapOpen
);
49
50
GetGame
().GetInputManager().RemoveActionListener(
ACTION_OPEN_TASK_LIST
,
EActionTrigger
.DOWN,
OpenTaskList
);
51
m_bHasListener
=
false
;
52
}
53
54
//------------------------------------------------------------------------------------------------
55
override
void
DisplayUpdate
(
IEntity
owner,
float
timeSlice)
56
{
57
// Activate input Context
58
if
(
m_bShown
)
59
{
60
if
(
m_MapEntity
&&
m_MapEntity
.IsOpen())
61
GetGame
().GetInputManager().ActivateContext(
CONTENT_TASK_LIST_MAP
);
62
else
63
GetGame
().GetInputManager().ActivateContext(
CONTENT_TASK_LIST
);
64
}
65
}
66
67
//------------------------------------------------------------------------------------------------
69
protected
void
OpenTaskList
()
70
{
71
if
(
m_bShown
||
m_MapEntity
&&
m_MapEntity
.IsOpen())
72
return
;
73
74
Show
(
true
);
75
76
if
(
m_TaskManagerUI
)
77
{
78
m_TaskManagerUI
.RegisterTaskList(
m_TaskListComponent
);
79
m_TaskListComponent
.RefreshTaskList();
80
m_TaskManagerUI
.TaskHUDVisibilityChanged(
true
);
81
82
if
(!
m_TaskManagerUI
.GetSelectedTask())
83
m_TaskListComponent
.CollapseTask();
84
}
85
86
m_TaskListComponent
.FocusOnEntry();
87
88
GetGame
().GetInputManager().RemoveActionListener(
ACTION_OPEN_TASK_LIST
,
EActionTrigger
.DOWN,
OpenTaskList
);
89
m_bHasListener
=
false
;
90
}
91
92
//------------------------------------------------------------------------------------------------
94
protected
void
CloseTaskList
()
95
{
96
Show
(
false
);
97
if
(
m_TaskManagerUI
)
98
m_TaskManagerUI
.TaskHUDVisibilityChanged(
false
);
99
100
GetGame
().GetCallqueue().Call(
AddTaskListOpenListener
);
101
}
102
103
//------------------------------------------------------------------------------------------------
104
protected
void
OnMapOpen
(
MapConfiguration
config)
105
{
106
Show
(
false
);
107
if
(!
m_bHasListener
)
108
AddTaskListOpenListener
();
109
}
110
111
//------------------------------------------------------------------------------------------------
112
protected
void
AddTaskListOpenListener
()
113
{
114
GetGame
().GetInputManager().AddActionListener(
ACTION_OPEN_TASK_LIST
,
EActionTrigger
.DOWN,
OpenTaskList
);
115
m_bHasListener
=
true
;
116
}
117
}
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
m_wRoot
Widget m_wRoot
Definition
SCR_GameModeCleanSweep.c:25
m_bShown
bool m_bShown
Definition
SCR_InfoDisplay.c:61
IEntity
Definition
IEntity.c:13
MapConfiguration
Definition
MapConfiguration.c:3
SCR_MapEntity
Definition
SCR_MapEntity.c:18
SCR_MapEntity::GetMapInstance
static SCR_MapEntity GetMapInstance()
Get map entity instance.
Definition
SCR_MapEntity.c:112
SCR_TaskListDisplay
Definition
SCR_TaskListDisplay.c:2
SCR_TaskListDisplay::m_TaskListComponent
SCR_TaskListUIComponent m_TaskListComponent
Definition
SCR_TaskListDisplay.c:10
SCR_TaskListDisplay::DisplayUpdate
override void DisplayUpdate(IEntity owner, float timeSlice)
Definition
SCR_TaskListDisplay.c:55
SCR_TaskListDisplay::m_sTaskDescriptionWidgetName
string m_sTaskDescriptionWidgetName
Definition
SCR_TaskListDisplay.c:4
SCR_TaskListDisplay::OnMapOpen
void OnMapOpen(MapConfiguration config)
Definition
SCR_TaskListDisplay.c:104
SCR_TaskListDisplay::DisplayStopDraw
override void DisplayStopDraw(IEntity owner)
Definition
SCR_TaskListDisplay.c:42
SCR_TaskListDisplay::DisplayStartDraw
override void DisplayStartDraw(IEntity owner)
Definition
SCR_TaskListDisplay.c:17
SCR_TaskListDisplay::CONTENT_TASK_LIST
const string CONTENT_TASK_LIST
Definition
SCR_TaskListDisplay.c:14
SCR_TaskListDisplay::ACTION_OPEN_TASK_LIST
const string ACTION_OPEN_TASK_LIST
Definition
SCR_TaskListDisplay.c:12
SCR_TaskListDisplay::OpenTaskList
void OpenTaskList()
Shows task list on HUD.
Definition
SCR_TaskListDisplay.c:69
SCR_TaskListDisplay::m_bHasListener
bool m_bHasListener
Definition
SCR_TaskListDisplay.c:6
SCR_TaskListDisplay::AddTaskListOpenListener
void AddTaskListOpenListener()
Definition
SCR_TaskListDisplay.c:112
SCR_TaskListDisplay::CONTENT_TASK_LIST_MAP
const string CONTENT_TASK_LIST_MAP
Definition
SCR_TaskListDisplay.c:13
SCR_TaskListDisplay::m_MapEntity
SCR_MapEntity m_MapEntity
Definition
SCR_TaskListDisplay.c:7
SCR_TaskListDisplay::CloseTaskList
void CloseTaskList()
Hides task list on HUD.
Definition
SCR_TaskListDisplay.c:94
SCR_TaskListDisplay::m_TaskManagerUI
SCR_TaskManagerUIComponent m_TaskManagerUI
Definition
SCR_TaskListDisplay.c:9
SCR_TaskManagerUIComponent
Definition
SCR_TaskManagerUIComponent.c:27
SCR_TaskManagerUIComponent::GetInstance
static SCR_TaskManagerUIComponent GetInstance()
Definition
SCR_TaskManagerUIComponent.c:436
Widget
Definition
Widget.c:13
Show
override void Show()
Definition
gameLib.c:262
Attribute
SCR_FieldOfViewSettings Attribute
Definition
SendGoalMessage.c:170
EActionTrigger
EActionTrigger
Definition
EActionTrigger.c:13
scripts
Game
UI
HUD
SCR_TaskListDisplay.c
Generated by
1.17.0