use getRotations for level key droptable as well
All checks were successful
Build / build (pull_request) Successful in 45s
Build / build (push) Successful in 1m25s

This commit is contained in:
Sainan 2025-04-15 19:50:55 +02:00
parent cf68201ce5
commit 1fad21dffe

View File

@ -55,7 +55,7 @@ import { Loadout } from "../models/inventoryModels/loadoutModel";
import { ILoadoutConfigDatabase } from "../types/saveLoadoutTypes"; import { ILoadoutConfigDatabase } from "../types/saveLoadoutTypes";
import { getWorldState } from "./worldStateService"; import { getWorldState } from "./worldStateService";
const getRotations = (rewardInfo: IRewardInfo, tierOverride: number | undefined): number[] => { const getRotations = (rewardInfo: IRewardInfo, tierOverride?: number): number[] => {
// For Spy missions, e.g. 3 vaults cracked = A, B, C // For Spy missions, e.g. 3 vaults cracked = A, B, C
if (rewardInfo.VaultsCracked) { if (rewardInfo.VaultsCracked) {
const rotations: number[] = []; const rotations: number[] = [];
@ -901,15 +901,7 @@ export const addFixedLevelRewards = (
} }
if (rewards.droptable) { if (rewards.droptable) {
if (rewards.droptable in ExportRewards) { if (rewards.droptable in ExportRewards) {
const rotations: number[] = []; const rotations: number[] = rewardInfo ? getRotations(rewardInfo) : [0];
// This makes it so that /Lotus/Types/Keys/ProteaQuest/ProteaQuestMissionFour gives all 3 Xoris parts
if (rewardInfo?.VaultsCracked) {
for (let i = 0; i != rewardInfo.VaultsCracked; ++i) {
rotations.push(i);
}
} else {
rotations.push(0);
}
logger.debug(`rolling ${rewards.droptable} for level key rewards`, { rotations }); logger.debug(`rolling ${rewards.droptable} for level key rewards`, { rotations });
for (const tier of rotations) { for (const tier of rotations) {
const reward = getRandomRewardByChance(ExportRewards[rewards.droptable][tier]); const reward = getRandomRewardByChance(ExportRewards[rewards.droptable][tier]);