返回提交历史
Modified
src/services/importService.ts
+15
-0
Modified
static/webui/index.html
+1
-0
Modified
static/webui/script.importSamples.js
+5
-0
Modified
static/webui/translations/de.js
+1
-0
Modified
static/webui/translations/en.js
+1
-0
Modified
static/webui/translations/es.js
+1
-0
Modified
static/webui/translations/fr.js
+1
-0
Modified
static/webui/translations/ru.js
+1
-0
Modified
static/webui/translations/uk.js
+1
-0
Modified
static/webui/translations/zh.js
+1
-0
XFEstudio/XFESpaceNinjaServer
feat: Reset Sortie & Archon Hunt Completion Import Sample (#4377)
- Some people seem to be interested having a feature like this, to be able to redo them in order to get another reward - Import fixes for Sortie related stuff Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/4377 Reviewed-by: Sainan <63328889+sainan@users.noreply.github.com> Co-authored-by: Animan8000 <187183497+Veniman8000@users.noreply.github.com> Co-committed-by: Animan8000 <187183497+Veniman8000@users.noreply.github.com>
7bf72ccb
代码差异
10 个文件
+28
-0
@@ -16,6 +16,8 @@ import type {
16
16
IFocusLoadoutClient,
17
17
IFocusLoadoutDatabase,
18
18
IInventoryClient,
19
ILastSortieRewardClient,
20
ILastSortieRewardDatabase,
19
21
INemesisClient,
20
22
INemesisDatabase,
21
23
IRecentVendorPurchaseClient,
@@ -267,6 +269,13 @@ const convertPendingRecipe = (client: IPendingRecipeClient): IPendingRecipeDatab
267
269
};
268
270
};
269
271
272
const convertLastSortieReward = (client: ILastSortieRewardClient): ILastSortieRewardDatabase => {
273
return {
274
...client,
275
SortieId: new Types.ObjectId(fromOid(client.SortieId))
276
};
277
};
278
270
279
const convertNemesisBase = (client: INemesisBaseClient): INemesisBaseDatabase => {
271
280
return {
272
281
...client,
@@ -428,6 +437,7 @@ export const importInventory = (db: TInventoryDatabaseDocument, client: Partial<
428
437
"NodeIntrosCompleted",
429
438
"CompletedAlerts",
430
439
"CompletedSyndicates",
440
"CompletedSorties",
431
441
"DeathMarks",
432
442
"UsedDailyDeals",
433
443
"Wishlist",
@@ -544,6 +554,11 @@ export const importInventory = (db: TInventoryDatabaseDocument, client: Partial<
544
554
if (client.CompletedJobChains !== undefined) {
545
555
db.CompletedJobChains = client.CompletedJobChains;
546
556
}
557
for (const key of ["LastSortieReward", "LastLiteSortieReward"] as const) {
558
if (client[key] !== undefined) {
559
db[key] = client[key].map(convertLastSortieReward);
560
}
561
}
547
562
if (client.Nemesis !== undefined) {
548
563
db.Nemesis = convertNemesis(client.Nemesis);
549
564
}
@@ -1826,6 +1826,7 @@
1826
1826
<li><a href="#" onclick="event.preventDefault();setImportSample('maxFocus1');" data-loc="import_samples_maxFocus" data-loc-replace="1.0"></a></li>
1827
1827
<li><a href="#" onclick="event.preventDefault();setImportSample('accolades');" data-loc="import_samples_accolades"></a></li>
1828
1828
<li><a href="#" onclick="event.preventDefault();setImportSample('maxStratos');" data-loc="import_samples_maxStratos"></a></li>
1829
<li><a href="#" onclick="event.preventDefault();setImportSample('resetSortieCompletion');" data-loc="import_samples_resetSortieCompletion"></a></li>
1829
1830
<li><a href="#" onclick="event.preventDefault();setImportSample('clearWishlist');" data-loc="import_samples_clearWishlist"></a></li>
1830
1831
<li><a href="#" onclick="event.preventDefault();setImportSample('clearLocPins');" data-loc="import_samples_clearLocPins"></a></li>
1831
1832
<li><a href="#" onclick="event.preventDefault();setImportSample('eidolonLocPins');" data-loc="import_samples_eidolonLocPins"></a></li>
@@ -806,6 +806,11 @@ window.importSamples = {
806
806
maxStratos: {
807
807
BountyScore: 39
808
808
},
809
resetSortieCompletion: {
810
CompletedSorties: [],
811
LastSortieReward: [],
812
LastLiteSortieReward: []
813
},
809
814
clearWishlist: {
810
815
Wishlist: []
811
816
},
@@ -410,6 +410,7 @@ dict = {
410
410
import_samples_maxFocus: `Alle Fokus-Schulen maximiert (Fokus |VAL|)`,
411
411
import_samples_accolades: `Auszeichnungen & Council Chat Zugang`,
412
412
import_samples_maxStratos: `Max. Rang-Symbol für Stratos Emblem`,
413
import_samples_resetSortieCompletion: `Einsatz- & Archon Jagd-Abschluss zurücksetzen`,
413
414
import_samples_clearWishlist: `Wunschliste leeren`,
414
415
import_samples_clearLocPins: `Lok-Pins leeren`,
415
416
import_samples_eidolonLocPins: `Eidolon Jagd Lok-Pins`,
@@ -409,6 +409,7 @@ dict = {
409
409
import_samples_maxFocus: `All Focus Schools Maxed Out (Focus |VAL|)`,
410
410
import_samples_accolades: `Accolades & Council Chat Access`,
411
411
import_samples_maxStratos: `Max Rank Stratos Emblem Icon`,
412
import_samples_resetSortieCompletion: `Reset Sortie & Archon Hunt Completion`,
412
413
import_samples_clearWishlist: `Clear Wishlist`,
413
414
import_samples_clearLocPins: `Clear Loc-Pins`,
414
415
import_samples_eidolonLocPins: `Eidolon Hunt Loc-Pins`,
@@ -410,6 +410,7 @@ dict = {
410
410
import_samples_maxFocus: `[UNTRANSLATED] All Focus Schools Maxed Out (Focus |VAL|)`,
411
411
import_samples_accolades: `[UNTRANSLATED] Accolades & Council Chat Access`,
412
412
import_samples_maxStratos: `[UNTRANSLATED] Max Rank Stratos Emblem Icon`,
413
import_samples_resetSortieCompletion: `[UNTRANSLATED] Reset Sortie & Archon Hunt Completion`,
413
414
import_samples_clearWishlist: `[UNTRANSLATED] Clear Wishlist`,
414
415
import_samples_clearLocPins: `[UNTRANSLATED] Clear Loc-Pins`,
415
416
import_samples_eidolonLocPins: `[UNTRANSLATED] Eidolon Hunt Loc-Pins`,
@@ -410,6 +410,7 @@ dict = {
410
410
import_samples_maxFocus: `Maxer toutes les écoles de focus (Focus |VAL|)`,
411
411
import_samples_accolades: `Accolades et accès au tchat Design Council`,
412
412
import_samples_maxStratos: `Badge Stratos rang max`,
413
import_samples_resetSortieCompletion: `[UNTRANSLATED] Reset Sortie & Archon Hunt Completion`,
413
414
import_samples_clearWishlist: `Effacer la liste de souhaits`,
414
415
import_samples_clearLocPins: `Effacer les loc-pins`,
415
416
import_samples_eidolonLocPins: `Loc-pins pour la chasse d'Eidolon`,
@@ -410,6 +410,7 @@ dict = {
410
410
import_samples_maxFocus: `Все школы Фокуса макс. уровня (Фокус |VAL|)`,
411
411
import_samples_accolades: `Акколады и доступ к чату Совета`,
412
412
import_samples_maxStratos: `Максимальный ранг значка Стратос`,
413
import_samples_resetSortieCompletion: `[UNTRANSLATED] Reset Sortie & Archon Hunt Completion`,
413
414
import_samples_clearWishlist: `Очистить список желаний`,
414
415
import_samples_clearLocPins: `Очистить местные указатели`,
415
416
import_samples_eidolonLocPins: `Местные указатели для Охоты на Эйдолонов`,
@@ -410,6 +410,7 @@ dict = {
410
410
import_samples_maxFocus: `Всі школи Фокусу макс. рівня (Фокус |VAL|)`,
411
411
import_samples_accolades: `Нагороди та доступ до чату Ради`,
412
412
import_samples_maxStratos: `Максимальний рівень відзнаки Страта`,
413
import_samples_resetSortieCompletion: `[UNTRANSLATED] Reset Sortie & Archon Hunt Completion`,
413
414
import_samples_clearWishlist: `Очистити список бажаного`,
414
415
import_samples_clearLocPins: `[UNTRANSLATED] Clear Loc-Pins`,
415
416
import_samples_eidolonLocPins: `[UNTRANSLATED] Eidolon Hunt Loc-Pins`,
@@ -410,6 +410,7 @@ dict = {
410
410
import_samples_maxFocus: `全专精学派满级 (专精|VAL|版本)`,
411
411
import_samples_accolades: `荣誉与议会聊天权限`,
412
412
import_samples_maxStratos: `最大 Stratos Emblem Icon等级`,
413
import_samples_resetSortieCompletion: `[UNTRANSLATED] Reset Sortie & Archon Hunt Completion`,
413
414
import_samples_clearWishlist: `清空心愿单`,
414
415
import_samples_clearLocPins: `清空定位信标`,
415
416
import_samples_eidolonLocPins: `夜灵狩猎定位信标`,