返回提交历史
Modified
src/services/missionInventoryUpdateService.ts
+18
-4
Modified
src/types/requestTypes.ts
+2
-1
XFEstudio/XFESpaceNinjaServer
chore: handle zealoid prelate stripped rewards (#1515)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/1515 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
327b834b
代码差异
2 个文件
+20
-5
@@ -602,10 +602,24 @@ export const addMissionRewards = async (
602
602
if (!droptable) {
603
603
logger.error(`unknown droptable ${si.DropTable}`);
604
604
} else {
605
for (let i = 0; i != si.DROP_MOD.length; ++i) {
606
for (const pool of droptable) {
607
const reward = getRandomReward(pool.items)!;
608
logger.debug(`stripped droptable rolled`, reward);
605
const modsPool = droptable[0].items;
606
const blueprintsPool = (droptable.length > 1 ? droptable[1] : droptable[0]).items;
607
if (si.DROP_MOD) {
608
for (let i = 0; i != si.DROP_MOD.length; ++i) {
609
const reward = getRandomReward(modsPool)!;
610
logger.debug(`stripped droptable (mods pool) rolled`, reward);
611
await addItem(inventory, reward.type);
612
MissionRewards.push({
613
StoreItem: toStoreItem(reward.type),
614
ItemCount: 1,
615
FromEnemyCache: true // to show "identified"
616
});
617
}
618
}
619
if (si.DROP_BLUEPRINT) {
620
for (let i = 0; i != si.DROP_BLUEPRINT.length; ++i) {
621
const reward = getRandomReward(blueprintsPool)!;
622
logger.debug(`stripped droptable (blueprints pool) rolled`, reward);
609
623
await addItem(inventory, reward.type);
610
624
MissionRewards.push({
611
625
StoreItem: toStoreItem(reward.type),
@@ -101,7 +101,8 @@ export type IMissionInventoryUpdateRequest = {
101
101
Upgrades?: IUpgradeClient[]; // riven challenge progress
102
102
StrippedItems?: {
103
103
DropTable: string;
104
DROP_MOD: number[];
104
DROP_MOD?: number[];
105
DROP_BLUEPRINT?: number[];
105
106
}[];
106
107
DeathMarks?: string[];
107
108
Nemesis?: number;