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_AnalyticsDataCollectionTutorialCompletionModule.c
Go to the documentation of this file.
1
[
BaseContainerProps
()]
2
class
SCR_AnalyticsDataCollectionTutorialCompletionModule
:
SCR_AnalyticsDataCollectionModule
3
{
4
protected
ref array<string>
m_aTutorialCourseNames
= {};
5
protected
ref array<string>
m_aTutorialStartedCourses
= {};
6
protected
ref array<string>
m_aTutorialFinishedCourses
= {};
7
8
//------------------------------------------------------------------------------------------------
9
override
void
InitModule
()
10
{
11
// We only care about Tutorial Game Mode
12
SCR_TutorialGamemodeComponent tutorial = SCR_TutorialGamemodeComponent.GetInstance();
13
if
(!tutorial)
14
return
;
15
16
SCR_TutorialCoursesConfig
config = tutorial.GetCoursesConfig();
17
if
(!config)
18
return
;
19
20
array<ref SCR_TutorialCourse> tutorialCourses = {};
21
config.GetConfigs(tutorialCourses);
22
23
if
(tutorialCourses.IsEmpty())
24
return
;
25
26
// Get names of all Tutorial Courses
27
string
courseName;
28
foreach
(
SCR_TutorialCourse
tut : tutorialCourses)
29
{
30
courseName =
SCR_Enum
.GetEnumName(
SCR_ETutorialCourses
, tut.GetCourseType());
31
m_aTutorialCourseNames
.Insert(courseName);
32
}
33
34
Enable
();
35
36
SCR_PlayerData
playerData =
SCR_PlayerData
.
GetPlayerData
(
GetGame
().
GetPlayerController
().
GetPlayerId
());
37
if
(!playerData)
38
return
;
39
40
playerData.
dataEvent
.array_tutorialstep_id =
SCR_AnalyticsDataCollectionHelper
.GetShortDataArray(
m_aTutorialCourseNames
.ToString());
41
}
42
43
//------------------------------------------------------------------------------------------------
44
protected
void
OnCourseStarted
(
int
courseId)
45
{
46
string
courseName =
SCR_Enum
.GetEnumName(
SCR_ETutorialCourses
, courseId);
47
if
(
m_aTutorialStartedCourses
.Contains(courseName))
48
return
;
49
50
m_aTutorialStartedCourses
.Insert(courseName);
51
52
SCR_PlayerData
playerData =
SCR_PlayerData
.
GetPlayerData
(
GetGame
().
GetPlayerController
().
GetPlayerId
());
53
if
(!playerData)
54
return
;
55
56
playerData.
dataEvent
.array_tutorialstep_id =
SCR_AnalyticsDataCollectionHelper
.GetShortDataArray(
m_aTutorialCourseNames
.ToString());
57
playerData.
dataEvent
.array_tutorialstep_started =
SCR_AnalyticsDataCollectionHelper
.GetShortDataArray(
m_aTutorialStartedCourses
.ToString());
58
}
59
60
//------------------------------------------------------------------------------------------------
61
protected
void
OnCourseFinished
(
int
courseId)
62
{
63
string
courseName =
SCR_Enum
.GetEnumName(
SCR_ETutorialCourses
, courseId);
64
if
(
m_aTutorialFinishedCourses
.Contains(courseName))
65
return
;
66
67
m_aTutorialFinishedCourses
.Insert(courseName);
68
69
SCR_PlayerData
playerData =
SCR_PlayerData
.
GetPlayerData
(
GetGame
().
GetPlayerController
().
GetPlayerId
());
70
if
(!playerData)
71
return
;
72
73
playerData.
dataEvent
.array_tutorialstep_completed =
SCR_AnalyticsDataCollectionHelper
.GetShortDataArray(
m_aTutorialFinishedCourses
.ToString());
74
}
75
76
//------------------------------------------------------------------------------------------------
77
override
void
Enable
()
78
{
79
SCR_TutorialGamemodeComponent tutorial = SCR_TutorialGamemodeComponent.GetInstance();
80
if
(!tutorial)
81
return
;
82
83
SCR_TutorialCoursesConfig
config = tutorial.GetCoursesConfig();
84
if
(!config)
85
return
;
86
87
array<ref SCR_TutorialCourse> courses = {};
88
config.GetConfigs(courses);
89
90
if
(courses.IsEmpty())
91
return
;
92
93
foreach
(
SCR_TutorialCourse
course : courses)
94
{
95
course.GetOnCourseStarted().Insert(
OnCourseStarted
);
96
course.GetOnCourseFinished().Insert(
OnCourseFinished
);
97
}
98
99
super.Enable();
100
}
101
102
//------------------------------------------------------------------------------------------------
103
override
void
Disable
()
104
{
105
SCR_TutorialGamemodeComponent tutorial = SCR_TutorialGamemodeComponent.GetInstance();
106
if
(!tutorial)
107
return
;
108
109
SCR_TutorialCoursesConfig
config = tutorial.GetCoursesConfig();
110
if
(!config)
111
return
;
112
113
array<ref SCR_TutorialCourse> courses = {};
114
config.GetConfigs(courses);
115
116
if
(courses.IsEmpty())
117
return
;
118
119
foreach
(
SCR_TutorialCourse
course : courses)
120
{
121
course.GetOnCourseStarted().Remove(
OnCourseStarted
);
122
course.GetOnCourseFinished().Remove(
OnCourseFinished
);
123
}
124
125
super.Disable();
126
}
127
128
#ifdef ENABLE_DIAG
129
//------------------------------------------------------------------------------------------------
130
override
void
DrawContent()
131
{
132
DbgUI
.Text(
"Started courses:"
);
133
foreach
(
string
courseName :
m_aTutorialStartedCourses
)
134
{
135
DbgUI
.Text(courseName);
136
}
137
138
DbgUI.Spacer(16);
139
140
DbgUI.Text(
"Finished courses:"
);
141
foreach
(
string
courseName :
m_aTutorialFinishedCourses
)
142
{
143
DbgUI.Text(courseName);
144
}
145
}
146
#endif
147
148
//------------------------------------------------------------------------------------------------
149
protected
void
~SCR_AnalyticsDataCollectionTutorialCompletionModule
()
150
{
151
Disable
();
152
}
153
}
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
BaseContainerProps
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
Definition
SCR_AIAnimationWaypoint.c:14
SCR_ETutorialCourses
SCR_ETutorialCourses
Definition
SCR_ETutorialCourses.c:2
DbgUI
Definition
DbgUI.c:66
SCR_AnalyticsDataCollectionHelper
Definition
SCR_AnalyticsDataCollectionHelper.c:2
SCR_AnalyticsDataCollectionModule
Definition
SCR_AnalyticsDataCollectionModule.c:3
SCR_AnalyticsDataCollectionTutorialCompletionModule
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:3
SCR_AnalyticsDataCollectionTutorialCompletionModule::m_aTutorialStartedCourses
ref array< string > m_aTutorialStartedCourses
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:5
SCR_AnalyticsDataCollectionTutorialCompletionModule::InitModule
override void InitModule()
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:9
SCR_AnalyticsDataCollectionTutorialCompletionModule::~SCR_AnalyticsDataCollectionTutorialCompletionModule
void ~SCR_AnalyticsDataCollectionTutorialCompletionModule()
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:149
SCR_AnalyticsDataCollectionTutorialCompletionModule::Disable
override void Disable()
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:103
SCR_AnalyticsDataCollectionTutorialCompletionModule::OnCourseStarted
void OnCourseStarted(int courseId)
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:44
SCR_AnalyticsDataCollectionTutorialCompletionModule::m_aTutorialFinishedCourses
ref array< string > m_aTutorialFinishedCourses
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:6
SCR_AnalyticsDataCollectionTutorialCompletionModule::m_aTutorialCourseNames
ref array< string > m_aTutorialCourseNames
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:4
SCR_AnalyticsDataCollectionTutorialCompletionModule::OnCourseFinished
void OnCourseFinished(int courseId)
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:61
SCR_AnalyticsDataCollectionTutorialCompletionModule::Enable
override void Enable()
Definition
SCR_AnalyticsDataCollectionTutorialCompletionModule.c:77
SCR_Enum
Definition
SCR_Enum.c:2
SCR_PlayerData
Definition
SCR_PlayerData.c:3
SCR_PlayerData::dataEvent
ref SCR_PlayerDataEvent dataEvent
Definition
SCR_PlayerData.c:49
SCR_PlayerData::GetPlayerData
static SCR_PlayerData GetPlayerData(int playerID)
Definition
SCR_PlayerData.c:131
SCR_TutorialCourse
Definition
SCR_TutorialCourse.c:3
SCR_TutorialCoursesConfig
Definition
SCR_TutorialCoursesConfig.c:3
GetPlayerController
proto external PlayerController GetPlayerController()
Definition
SCR_PlayerDeployMenuHandlerComponent.c:307
GetPlayerId
proto external int GetPlayerId()
Definition
SCR_SpawnRequestComponent.c:39
scripts
Game
DataCollection
AnalyticsDataCollectionModules
SCR_AnalyticsDataCollectionTutorialCompletionModule.c
Generated by
1.17.0