返回提交历史
Modified
src/services/loginService.ts
+9
-10
Modified
src/services/questService.ts
+19
-2
XFEstudio/SpaceNinjaServer
fix: re-enable giving ship features and mission rewards from Vors Prize after skipTutorial (#996)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/996 Co-authored-by: OrdisPrime <134585663+OrdisPrime@users.noreply.github.com> Co-committed-by: OrdisPrime <134585663+OrdisPrime@users.noreply.github.com>
50d687e5
代码差异
2 个文件
+28
-12
@@ -47,16 +47,15 @@ export const createPersonalRooms = async (accountId: Types.ObjectId, shipId: Typ
47
47
activeShipId: shipId
48
48
});
49
49
if (config.skipTutorial) {
50
// // Vor's Prize rewards
51
// const defaultFeatures = [
52
// "/Lotus/Types/Items/ShipFeatureItems/EarthNavigationFeatureItem",
53
// "/Lotus/Types/Items/ShipFeatureItems/MercuryNavigationFeatureItem",
54
// "/Lotus/Types/Items/ShipFeatureItems/ArsenalFeatureItem",
55
// "/Lotus/Types/Items/ShipFeatureItems/SocialMenuFeatureItem",
56
// "/Lotus/Types/Items/ShipFeatureItems/FoundryFeatureItem",
57
// "/Lotus/Types/Items/ShipFeatureItems/ModsFeatureItem"
58
// ];
59
// personalRooms.Ship.Features.push(...defaultFeatures);
50
// unlocked during Vor's Prize
51
const defaultFeatures = [
52
"/Lotus/Types/Items/ShipFeatureItems/MercuryNavigationFeatureItem",
53
"/Lotus/Types/Items/ShipFeatureItems/ArsenalFeatureItem",
54
"/Lotus/Types/Items/ShipFeatureItems/SocialMenuFeatureItem",
55
"/Lotus/Types/Items/ShipFeatureItems/FoundryFeatureItem",
56
"/Lotus/Types/Items/ShipFeatureItems/ModsFeatureItem"
57
];
58
personalRooms.Ship.Features.push(...defaultFeatures);
60
59
}
61
60
await personalRooms.save();
62
61
};
@@ -3,8 +3,8 @@ import { isEmptyObject } from "@/src/helpers/general";
3
3
import { IMessage } from "@/src/models/inboxModel";
4
4
import { TInventoryDatabaseDocument } from "@/src/models/inventoryModels/inventoryModel";
5
5
import { createMessage } from "@/src/services/inboxService";
6
import { addKeyChainItems } from "@/src/services/inventoryService";
7
import { getKeyChainMessage } from "@/src/services/itemDataService";
6
import { addItem, addKeyChainItems } from "@/src/services/inventoryService";
7
import { getKeyChainMessage, getLevelKeyRewards } from "@/src/services/itemDataService";
8
8
import { IInventoryDatabase, IQuestKeyDatabase, IQuestStage } from "@/src/types/inventoryTypes/inventoryTypes";
9
9
import { logger } from "@/src/utils/logger";
10
10
import { HydratedDocument } from "mongoose";
@@ -125,6 +125,23 @@ export const completeQuest = async (inventory: TInventoryDatabaseDocument, quest
125
125
ChainStage: i
126
126
});
127
127
}
128
129
const missionName = chainStages[i].key;
130
if (missionName) {
131
const fixedLevelRewards = getLevelKeyRewards(missionName);
132
//logger.debug(`fixedLevelRewards ${fixedLevelRewards}`);
133
for (const reward of fixedLevelRewards) {
134
if (reward.rewardType == "RT_CREDITS") {
135
inventory.RegularCredits += reward.amount;
136
continue;
137
}
138
if (reward.rewardType == "RT_RESOURCE") {
139
await addItem(inventory, reward.itemType.replace("StoreItems/", ""), reward.amount);
140
} else {
141
await addItem(inventory, reward.itemType.replace("StoreItems/", ""));
142
}
143
}
144
}
128
145
}
129
146
inventory.ActiveQuest = "";
130
147
//TODO: handle quest completion items