XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFESpaceNinjaServer

chore: handle KeyToRemove from old versions (#3929)

Closes #3910 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3929 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>

1099c94b
Sainan <63328889+Sainan@users.noreply.github.com>
提交于

代码差异

2 个文件 +23 -21
Modified src/services/missionInventoryUpdateService.ts +22 -20
@@ -218,27 +218,29 @@ export const addMissionInventoryUpdates = async (
218 218 inventoryUpdates: IMissionInventoryUpdateRequest
219 219 ): Promise<IInventoryChanges> => {
220 220 const inventoryChanges: IInventoryChanges = {};
221 if (inventoryUpdates.EndOfMatchUpload) {
222 if (inventoryUpdates.Missions) {
223 const node = await getRegion(inventoryUpdates.Missions.Tag, account.BuildLabel);
224 if (node && node.miscItemFee && !inventory.noNodeEntryFees) {
225 addMiscItems(inventory, [
226 {
227 ItemType: node.miscItemFee.ItemType,
228 ItemCount: node.miscItemFee.ItemCount * -1
229 }
230 ]);
231 }
221 if (inventoryUpdates.Missions && inventoryUpdates.EndOfMatchUpload) {
222 const node = await getRegion(inventoryUpdates.Missions.Tag, account.BuildLabel);
223 if (node && node.miscItemFee && !inventory.noNodeEntryFees) {
224 addMiscItems(inventory, [
225 {
226 ItemType: node.miscItemFee.ItemType,
227 ItemCount: node.miscItemFee.ItemCount * -1
228 }
229 ]);
232 230 }
233 if (inventoryUpdates.KeyToRemove && !inventory.dontSubtractKeys) {
234 if (!inventoryUpdates.KeyOwner || inventory.accountOwnerId.equals(inventoryUpdates.KeyOwner)) {
235 addLevelKeys(inventory, [
236 {
237 ItemType: inventoryUpdates.KeyToRemove,
238 ItemCount: -1
239 }
240 ]);
241 }
231 }
232 if (
233 inventoryUpdates.KeyToRemove &&
234 !inventory.dontSubtractKeys &&
235 (inventoryUpdates.EndOfMatchUpload || !("EndOfMatchUpload" in inventoryUpdates)) // https://onlyg.it/OpenWF/SpaceNinjaServer/issues/3910
236 ) {
237 if (!inventoryUpdates.KeyOwner || inventory.accountOwnerId.equals(inventoryUpdates.KeyOwner)) {
238 addLevelKeys(inventory, [
239 {
240 ItemType: inventoryUpdates.KeyToRemove,
241 ItemCount: -1
242 }
243 ]);
242 244 }
243 245 }
244 246 if (inventoryUpdates.RewardInfo) {
Modified src/types/requestTypes.ts +1 -1
@@ -104,7 +104,7 @@ export type IMissionInventoryUpdateRequest = {
104 104 LastCeremonyResetDate: number;
105 105 MissionPTS: number;
106 106 RepHash: string;
107 EndOfMatchUpload: boolean;
107 EndOfMatchUpload?: boolean;
108 108 ObjectiveReached: boolean;
109 109 sharedSessionId: string;
110 110 FpsAvg: number;