From 5ea736d72f9e893853eef9960ce737c222d021ee Mon Sep 17 00:00:00 2001 From: Sainan Date: Thu, 20 Mar 2025 16:06:47 +0100 Subject: [PATCH] track non-evergreen milestone rewards in LoginMilestoneRewards --- .../api/loginRewardsSelectionController.ts | 15 +++++++++++++++ src/models/inventoryModels/inventoryModel.ts | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/controllers/api/loginRewardsSelectionController.ts b/src/controllers/api/loginRewardsSelectionController.ts index d4983eaa..b1ebc9a6 100644 --- a/src/controllers/api/loginRewardsSelectionController.ts +++ b/src/controllers/api/loginRewardsSelectionController.ts @@ -22,6 +22,9 @@ export const loginRewardsSelectionController: RequestHandler = async (req, res) StoreItemType: body.ChosenReward }; inventoryChanges = (await handleStoreItemAcquisition(body.ChosenReward, inventory)).InventoryChanges; + if (!evergreenRewards.find(x => x == body.ChosenReward)) { + inventory.LoginMilestoneRewards.push(body.ChosenReward); + } } else { const randomRewards = getRandomLoginRewards(account, inventory); chosenReward = randomRewards.find(x => x.StoreItemType == body.ChosenReward)!; @@ -40,3 +43,15 @@ interface ILoginRewardsSelectionRequest { ChosenReward: string; IsMilestoneReward: boolean; } + +const evergreenRewards = [ + "/Lotus/Types/StoreItems/Packages/EvergreenTripleForma", + "/Lotus/Types/StoreItems/Packages/EvergreenTripleRifleRiven", + "/Lotus/Types/StoreItems/Packages/EvergreenTripleMeleeRiven", + "/Lotus/Types/StoreItems/Packages/EvergreenTripleSecondaryRiven", + "/Lotus/Types/StoreItems/Packages/EvergreenWeaponSlots", + "/Lotus/Types/StoreItems/Packages/EvergreenKuva", + "/Lotus/Types/StoreItems/Packages/EvergreenBoosters", + "/Lotus/Types/StoreItems/Packages/EvergreenEndo", + "/Lotus/Types/StoreItems/Packages/EvergreenExilus" +]; diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts index 0f087d7e..238779f6 100644 --- a/src/models/inventoryModels/inventoryModel.ts +++ b/src/models/inventoryModels/inventoryModel.ts @@ -1366,7 +1366,7 @@ const inventorySchema = new Schema( ThemeSounds: String, //Daily LoginRewards - LoginMilestoneRewards: [String], + LoginMilestoneRewards: { type: [String], default: [] }, //You first Dialog with NPC or use new Item NodeIntrosCompleted: [String],