forked from challenge-project/challenge-sandbox
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTask.Script.txt
More file actions
227 lines (209 loc) · 9.35 KB
/
Copy pathTask.Script.txt
File metadata and controls
227 lines (209 loc) · 9.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
/*
// Task.Script.txt
// by BigBang1112
// part of Universe Library Set
// Simplified Task usage.
// This library does not depend on any other library from the Universe Library Set.
// You can use this library independently, although it's recommended to use the whole set.
*/
/*
// Compatible contexts:
// - CManiaApp
// - CMode
*/
/*
// CTaskResult Sync(CTaskResult _Task)
// CTaskResult_BuddiesChallengeRecord SyncBuddiesChallengeRecord(CTaskResult_BuddiesChallengeRecord _Task)
// CTaskResult_BuddiesChallengeRecordsComparison SyncBuddiesChallengeRecordsComparison(CTaskResult_BuddiesChallengeRecordsComparison _Task)
// CTaskResult_BuddyChallengeRecordsComparison SyncBuddyChallengeRecordsComparison(CTaskResult_BuddyChallengeRecordsComparison _Task)
// CTaskResult_FileList SyncFileList(CTaskResult_FileList _Task)
// CTaskResult_GameModeList SyncGameModeList(CTaskResult_GameModeList _Task)
// CTaskResult_Ghost SyncGhost(CTaskResult_Ghost _Task)
// CTaskResult_GhostList SyncGhostList(CTaskResult_GhostList _Task)
// CTaskResult_MapList SyncMapList(CTaskResult_MapList _Task)
// CTaskResult_MapRecordList SyncMapRecordList(CTaskResult_MapRecordList _Task)
// CTaskResult_NaturalLeaderBoardInfoList SyncNaturalLeaderBoardInfoList(CTaskResult_NaturalLeaderBoardInfoList _Task)
// CTaskResult_PlayerMapRecords SyncPlayerMapRecords(CTaskResult_PlayerMapRecords _Task)
// CTaskResult_RealLeaderBoardInfoList SyncRealLeaderBoardInfoList(CTaskResult_RealLeaderBoardInfoList _Task)
// CTaskResult_ReplayList SyncReplayList(CTaskResult_ReplayList _Task)
// CTaskResult_StringIntList SyncStringIntList(CTaskResult_StringIntList _Task)
// Void Async_DataFileMgr(Text _Name, CTaskResult _Task)
// Void Async_ScoreMgr(Text _Name, CTaskResult _Task)
// CTaskResult Get(Text _Name)
// Void Destroy_DataFileMgr(Text _Name)
// Void Destroy_ScoreMgr(Text _Name)
// Boolean IsCompleted(Text _Name)
// Boolean IsSuccessful(Text _Name)
// STaskFail IsFailed(Text _Name)
// Boolean IsCanceled(Text _Name)
// CTaskResult_BuddiesChallengeRecord ToBuddiesChallengeRecord(CTaskResult _Task)
// CTaskResult_BuddiesChallengeRecordsComparison ToBuddiesChallengeRecordsComparison(CTaskResult _Task)
// CTaskResult_BuddyChallengeRecordsComparison ToBuddyChallengeRecordsComparison(CTaskResult _Task)
// CTaskResult_FileList ToFileList(CTaskResult _Task)
// CTaskResult_GameModeList ToGameModeList(CTaskResult _Task)
// CTaskResult_Ghost ToGhost(CTaskResult _Task)
// CTaskResult_GhostList ToGhostList(CTaskResult _Task)
// CTaskResult_MapList ToMapList(CTaskResult _Task)
// CTaskResult_MapRecordList ToMapRecordList(CTaskResult _Task)
// CTaskResult_NaturalLeaderBoardInfoList ToNaturalLeaderBoardInfoList(CTaskResult _Task)
// CTaskResult_PlayerMapRecords ToPlayerMapRecords(CTaskResult _Task)
// CTaskResult_RealLeaderBoardInfoList ToRealLeaderBoardInfoList(CTaskResult _Task)
// CTaskResult_ReplayList ToReplayList(CTaskResult _Task)
// CTaskResult_StringIntList ToStringIntList(CTaskResult _Task)
*/
#Struct STaskFail {
Boolean Failed;
Text ErrorType;
Text ErrorCode;
Text ErrorDescription;
}
declare CTaskResult[Text] G_AsyncRequests;
declare CTaskResult_BuddiesChallengeRecord[Text] G_AsyncRequests_BuddiesChallengeRecord;
declare CTaskResult_BuddiesChallengeRecordsComparison[Text] G_AsyncRequests_BuddiesChallengeRecordsComparison;
declare CTaskResult_BuddyChallengeRecordsComparison[Text] G_AsyncRequests_BuddyChallengeRecordsComparison;
declare CTaskResult_FileList[Text] G_AsyncRequests_FileList;
declare CTaskResult_GameModeList[Text] G_AsyncRequests_GameModeList;
declare CTaskResult_Ghost[Text] G_AsyncRequests_Ghost;
declare CTaskResult_GhostList[Text] G_AsyncRequests_GhostList;
declare CTaskResult_MapList[Text] G_AsyncRequests_MapList;
declare CTaskResult_MapRecordList[Text] G_AsyncRequests_MapRecordList;
declare CTaskResult_NaturalLeaderBoardInfoList[Text] G_AsyncRequests_NaturalLeaderBoardInfoList;
declare CTaskResult_PlayerMapRecords[Text] G_AsyncRequests_PlayerMapRecords;
declare CTaskResult_RealLeaderBoardInfoList[Text] G_AsyncRequests_RealLeaderBoardInfoList;
declare CTaskResult_ReplayList[Text] G_AsyncRequests_ReplayList;
declare CTaskResult_StringIntList[Text] G_AsyncRequests_StringIntList;
CTaskResult Sync(CTaskResult _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_BuddiesChallengeRecord SyncBuddiesChallengeRecord(CTaskResult_BuddiesChallengeRecord _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_BuddiesChallengeRecordsComparison SyncBuddiesChallengeRecordsComparison(CTaskResult_BuddiesChallengeRecordsComparison _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_BuddyChallengeRecordsComparison SyncBuddyChallengeRecordsComparison(CTaskResult_BuddyChallengeRecordsComparison _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_FileList SyncFileList(CTaskResult_FileList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_GameModeList SyncGameModeList(CTaskResult_GameModeList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_Ghost SyncGhost(CTaskResult_Ghost _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_GhostList SyncGhostList(CTaskResult_GhostList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_MapList SyncMapList(CTaskResult_MapList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_MapRecordList SyncMapRecordList(CTaskResult_MapRecordList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_NaturalLeaderBoardInfoList SyncNaturalLeaderBoardInfoList(CTaskResult_NaturalLeaderBoardInfoList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_PlayerMapRecords SyncPlayerMapRecords(CTaskResult_PlayerMapRecords _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_RealLeaderBoardInfoList SyncRealLeaderBoardInfoList(CTaskResult_RealLeaderBoardInfoList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_ReplayList SyncReplayList(CTaskResult_ReplayList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
CTaskResult_StringIntList SyncStringIntList(CTaskResult_StringIntList _Task) {
wait(!_Task.IsProcessing); return _Task;
}
Void Async_DataFileMgr(Text _Name, CTaskResult _Task) {
if(G_AsyncRequests.existskey(_Name)) DataFileMgr.TaskResult_Release(G_AsyncRequests[_Name].Id);
G_AsyncRequests[_Name] = _Task;
}
Void Async_ScoreMgr(Text _Name, CTaskResult _Task) {
if(G_AsyncRequests.existskey(_Name)) ScoreMgr.TaskResult_Release(G_AsyncRequests[_Name].Id);
G_AsyncRequests[_Name] = _Task;
}
CTaskResult Get(Text _Name) {
if(!G_AsyncRequests.existskey(_Name)) return Null;
return G_AsyncRequests[_Name];
}
Void Destroy_DataFileMgr(Text _Name) {
if(!G_AsyncRequests.existskey(_Name)) return;
DataFileMgr.TaskResult_Release(G_AsyncRequests[_Name].Id);
declare Removed = G_AsyncRequests.removekey(_Name);
}
Void Destroy_ScoreMgr(Text _Name) {
if(!G_AsyncRequests.existskey(_Name)) return;
ScoreMgr.TaskResult_Release(G_AsyncRequests[_Name].Id);
declare Removed = G_AsyncRequests.removekey(_Name);
}
Boolean IsCompleted(Text _Name) {
if(!G_AsyncRequests.existskey(_Name)) return False;
return !Get(_Name).IsProcessing;
}
Boolean IsSuccessful(Text _Name) {
if(!G_AsyncRequests.existskey(_Name)) return False;
return !Get(_Name).IsProcessing
&& Get(_Name).HasSucceeded;
}
STaskFail IsFailed(Text _Name) {
declare STaskFail TaskFail;
if(!G_AsyncRequests.existskey(_Name)) return TaskFail;
if(!Get(_Name).IsProcessing && Get(_Name).HasFailed) {
TaskFail.Failed = True;
TaskFail.ErrorType = Get(_Name).ErrorType;
TaskFail.ErrorCode = Get(_Name).ErrorCode;
TaskFail.ErrorDescription = Get(_Name).ErrorDescription;
return TaskFail;
}
return TaskFail;
}
Boolean IsCanceled(Text _Name) {
if(!G_AsyncRequests.existskey(_Name)) return False;
return !Get(_Name).IsProcessing
&& Get(_Name).IsCanceled;
}
CTaskResult_BuddiesChallengeRecord ToBuddiesChallengeRecord(CTaskResult _Task) {
return (_Task as CTaskResult_BuddiesChallengeRecord);
}
CTaskResult_BuddiesChallengeRecordsComparison ToBuddiesChallengeRecordsComparison(CTaskResult _Task) {
return (_Task as CTaskResult_BuddiesChallengeRecordsComparison);
}
CTaskResult_BuddyChallengeRecordsComparison ToBuddyChallengeRecordsComparison(CTaskResult _Task) {
return (_Task as CTaskResult_BuddyChallengeRecordsComparison);
}
CTaskResult_FileList ToFileList(CTaskResult _Task) {
return (_Task as CTaskResult_FileList);
}
CTaskResult_GameModeList ToGameModeList(CTaskResult _Task) {
return (_Task as CTaskResult_GameModeList);
}
CTaskResult_Ghost ToGhost(CTaskResult _Task) {
return (_Task as CTaskResult_Ghost);
}
CTaskResult_GhostList ToGhostList(CTaskResult _Task) {
return (_Task as CTaskResult_GhostList);
}
CTaskResult_MapList ToMapList(CTaskResult _Task) {
return (_Task as CTaskResult_MapList);
}
CTaskResult_MapRecordList ToMapRecordList(CTaskResult _Task) {
return (_Task as CTaskResult_MapRecordList);
}
CTaskResult_NaturalLeaderBoardInfoList ToNaturalLeaderBoardInfoList(CTaskResult _Task) {
return (_Task as CTaskResult_NaturalLeaderBoardInfoList);
}
CTaskResult_PlayerMapRecords ToPlayerMapRecords(CTaskResult _Task) {
return (_Task as CTaskResult_PlayerMapRecords);
}
CTaskResult_RealLeaderBoardInfoList ToRealLeaderBoardInfoList(CTaskResult _Task) {
return (_Task as CTaskResult_RealLeaderBoardInfoList);
}
CTaskResult_ReplayList ToReplayList(CTaskResult _Task) {
return (_Task as CTaskResult_ReplayList);
}
CTaskResult_StringIntList ToStringIntList(CTaskResult _Task) {
return (_Task as CTaskResult_StringIntList);
}