From d4c5e367b457cf1ffa6e5d5769ebe0ce090a943c Mon Sep 17 00:00:00 2001 From: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Date: Sat, 8 Feb 2025 17:41:21 -0800 Subject: [PATCH] fix: nightmare missions rewards (#926) Closes #416 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/926 Reviewed-by: Sainan Co-authored-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Co-committed-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> --- src/services/missionInventoryUpdateService.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/services/missionInventoryUpdateService.ts b/src/services/missionInventoryUpdateService.ts index be44d0e54..94968713b 100644 --- a/src/services/missionInventoryUpdateService.ts +++ b/src/services/missionInventoryUpdateService.ts @@ -347,6 +347,24 @@ function getRandomMissionDrops(RewardInfo: IRewardInfo): IRngResult[] { } } } + + if (RewardInfo.nightmareMode) { + const deck = ExportRewards["/Lotus/Types/Game/MissionDecks/NightmareModeRewards"]; + let rotation = 0; + + if (region.missionIndex === 3 && RewardInfo.rewardTier) { + rotation = RewardInfo.rewardTier; + } else if ([6, 7, 8, 10, 11].includes(region.systemIndex)) { + rotation = 2; + } else if ([4, 9, 12, 14, 15, 16, 17, 18].includes(region.systemIndex)) { + rotation = 1; + } + + const drop = getRandomRewardByChance(deck[rotation]); + if (drop) { + drops.push(drop); + } + } } return drops; }