diff --git a/src/services/missionInventoryUpdateService.ts b/src/services/missionInventoryUpdateService.ts index d96c5979..a24937dd 100644 --- a/src/services/missionInventoryUpdateService.ts +++ b/src/services/missionInventoryUpdateService.ts @@ -1947,24 +1947,32 @@ function getRandomMissionDrops( } // Railjack Abandoned Cache Rewards, Rotation A (Mandatory Objectives) - if (region.cacheRewardManifest && RewardInfo.POICompletions) { - const deck = ExportRewards[region.cacheRewardManifest]; - for (let cache = 0; cache != RewardInfo.POICompletions; ++cache) { - const drop = getRandomRewardByChance(deck[0]); - if (drop) { - drops.push({ StoreItem: drop.type, ItemCount: drop.itemCount, FromEnemyCache: true }); + if (RewardInfo.POICompletions) { + if(region.cacheRewardManifest){ + const deck = ExportRewards[region.cacheRewardManifest]; + for (let cache = 0; cache != RewardInfo.POICompletions; ++cache) { + const drop = getRandomRewardByChance(deck[0]); + if (drop) { + drops.push({ StoreItem: drop.type, ItemCount: drop.itemCount, FromEnemyCache: true }); + } } + } else { + logger.error(`POI completed, but there was no cache reward manifest at ${RewardInfo.node}`); } } // Railjack Abandoned Cache Rewards, Rotation B (Optional Objectives) - if (region.cacheRewardManifest && RewardInfo.LootDungeonCompletions) { - const deck = ExportRewards[region.cacheRewardManifest]; - for (let cache = 0; cache != RewardInfo.LootDungeonCompletions; ++cache) { - const drop = getRandomRewardByChance(deck[1]); - if (drop) { - drops.push({ StoreItem: drop.type, ItemCount: drop.itemCount, FromEnemyCache: true }); + if (RewardInfo.LootDungeonCompletions) { + if(region.cacheRewardManifest){ + const deck = ExportRewards[region.cacheRewardManifest]; + for (let cache = 0; cache != RewardInfo.LootDungeonCompletions; ++cache) { + const drop = getRandomRewardByChance(deck[1]); + if (drop) { + drops.push({ StoreItem: drop.type, ItemCount: drop.itemCount, FromEnemyCache: true }); + } } + } else { + logger.error(`Loot dungeon completed, but there was no cache reward manifest at ${RewardInfo.node}`); } }