diff --git a/src/Modules/CalcSetup.lua b/src/Modules/CalcSetup.lua index 4b328cfdfc..681718638b 100644 --- a/src/Modules/CalcSetup.lua +++ b/src/Modules/CalcSetup.lua @@ -1253,7 +1253,7 @@ function calcs.initEnv(build, mode, override, specEnv) end -- Determine main skill group - if env.mode == "CALCS" or env.mode == "CACHE" then + if env.mode == "CALCS" then env.calcsInput.skill_number = m_min(m_max(#build.skillsTab.socketGroupList, 1), env.calcsInput.skill_number or 1) env.mainSocketGroup = env.calcsInput.skill_number else diff --git a/src/Modules/CalcTriggers.lua b/src/Modules/CalcTriggers.lua index 7220b03244..ae0575d571 100644 --- a/src/Modules/CalcTriggers.lua +++ b/src/Modules/CalcTriggers.lua @@ -528,11 +528,12 @@ local function defaultTriggerHandler(env, config) -- Handling for mana spending rate for Manaforged Arrows Support if actor.mainSkill.skillData.triggeredByManaforged and trigRate > 0 then + local mode = env.mode == "CALCS" and "CALCS" or "MAIN" local triggeredUUID = cacheSkillUUID(actor.mainSkill, env) - if not GlobalCache.cachedData["CACHE"][triggeredUUID] then - calcs.buildActiveSkill(env, "CACHE", actor.mainSkill, {[triggeredUUID] = true}) + if not GlobalCache.cachedData[mode][triggeredUUID] then + calcs.buildActiveSkill(env, mode, actor.mainSkill, {[triggeredUUID] = true}) end - local triggeredManaCost = GlobalCache.cachedData["CACHE"][triggeredUUID].Env.player.output.ManaCost or 0 + local triggeredManaCost = GlobalCache.cachedData[mode][triggeredUUID].Env.player.output.ManaCost or 0 if triggeredManaCost > 0 then local manaSpentThreshold = triggeredManaCost * actor.mainSkill.skillData.ManaForgedArrowsPercentThreshold local sourceManaCost = GlobalCache.cachedData["CACHE"][uuid].Env.player.output.ManaCost or 0