A game about forced loneliness, made by TACStudios
1using System;
2using Unity.Multiplayer.Center.Common.Analytics;
3using UnityEngine.Analytics;
4
5namespace Unity.Multiplayer.Center.Analytics
6{
7 /// <summary>
8 /// Package representation in the analytics data.
9 /// </summary>
10 [Serializable]
11 internal struct Package
12 {
13 /// <summary>
14 /// The identifier of the package.
15 /// </summary>
16 public string PackageId;
17
18 /// <summary>
19 /// Whether the user has selected this package for installation.
20 /// </summary>
21 public bool SelectedForInstall;
22
23 /// <summary>
24 /// Whether the package was recommended.
25 /// </summary>
26 public bool IsRecommended;
27
28 /// <summary>
29 /// Whether the package was already installed when the installation attempt event occured
30 /// </summary>
31 public bool IsAlreadyInstalled;
32 }
33
34 /// <summary>
35 /// A single Answer to the GameSpecs questionnaire.
36 /// </summary>
37 [Serializable]
38 internal struct GameSpec
39 {
40 /// <summary>
41 /// The identifier of the answered question (does not change).
42 /// </summary>
43 public string QuestionId;
44
45 /// <summary>
46 /// The text of the question as displayed in the UI (may change with versions).
47 /// </summary>
48 public string QuestionText;
49
50 /// <summary>
51 /// Whether the question accepts multiple answers.
52 /// </summary>
53 public bool AcceptsMultipleAnswers;
54
55 /// <summary>
56 /// The identifier of the answered question (does not change).
57 /// </summary>
58 public string AnswerId;
59
60 /// <summary>
61 /// The text of the answer as displayed in the UI (may change with versions).
62 /// </summary>
63 public string AnswerText;
64 }
65
66 /// <summary>
67 ///
68 /// </summary>
69 [Serializable]
70 internal struct RecommendationData : IAnalytic.IData
71 {
72 /// <summary>
73 /// The preset selected by the user.
74 /// </summary>
75 public int Preset;
76
77 /// <summary>
78 /// The preset selected by the user (game genre) as displayed in the UI.
79 /// </summary>
80 public string PresetName;
81
82 /// <summary>
83 /// The version defined in the Questionnaire data.
84 /// </summary>
85 public string QuestionnaireVersion;
86
87 /// <summary>
88 /// All the selected answers to the questions of the game specs questionnaire.
89 /// </summary>
90 public GameSpec[] GameSpecs;
91 }
92
93 /// <summary>
94 /// What type of content the user Interacted with (buttons).
95 /// </summary>
96 [Serializable]
97 internal struct InteractionData : IAnalytic.IData
98 {
99 /// <summary>
100 /// The identifier of the section that contains the button.
101 /// </summary>
102 public string SectionId;
103
104 /// <summary>
105 /// Whether it is a call to action or a link.
106 /// </summary>
107 public InteractionDataType Type;
108
109 /// <summary>
110 /// The name of the button in the UI.
111 /// </summary>
112 public string DisplayName;
113
114 /// <summary>
115 /// The target package for which the section is helpful.
116 /// </summary>
117 public string TargetPackageId;
118 }
119
120 /// <summary>
121 /// Payload of the installation event.
122 /// </summary>
123 [Serializable]
124 internal struct InstallData : IAnalytic.IData
125 {
126 /// <summary>
127 /// The preset selected by the user.
128 /// </summary>
129 public int Preset;
130
131 /// <summary>
132 /// The preset selected by the user (game genre) as displayed in the UI.
133 /// </summary>
134 public string PresetName;
135
136 /// <summary>
137 /// The version defined in the Questionnaire data.
138 /// </summary>
139 public string QuestionnaireVersion;
140
141 /// <summary>
142 /// All the selected answers to the questions of the game specs questionnaire.
143 /// </summary>
144 public GameSpec[] GamesSpecs;
145
146 /// <summary>
147 /// The packages that were in the recommendation tab of the multiplayer center
148 /// </summary>
149 public Package[] Packages;
150 }
151}