From 4b09e3d51110d01b34e869aeafe8b3a3d16d28b2 Mon Sep 17 00:00:00 2001 From: Peechey <92683202+Peechey@users.noreply.github.com> Date: Sat, 22 Nov 2025 21:58:24 -0600 Subject: [PATCH 1/2] set LifeFlaskRecovery for PConc if life flask is in a disabled slot --- src/Modules/CalcSetup.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Modules/CalcSetup.lua b/src/Modules/CalcSetup.lua index 130ad39de7..178c77f398 100644 --- a/src/Modules/CalcSetup.lua +++ b/src/Modules/CalcSetup.lua @@ -853,6 +853,9 @@ function calcs.initEnv(build, mode, override, specEnv) end end for slot in pairs(trueDisabled) do + if slot:find("Flask") and items[slot] and items[slot].baseName:find("Life Flask") then -- save lifeTotal for PConc if life flask is in disabled slot + env.itemModDB.multipliers["LifeFlaskRecovery"] = items[slot].flaskData.lifeTotal + end items[slot] = nil end end From 78d79d3ddca82ec0b534522c00734c55c2743d99 Mon Sep 17 00:00:00 2001 From: Peechey <92683202+Peechey@users.noreply.github.com> Date: Sun, 23 Nov 2025 06:48:07 -0600 Subject: [PATCH 2/2] update for multiple disabled life flasks and refactor into function --- src/Modules/CalcSetup.lua | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/Modules/CalcSetup.lua b/src/Modules/CalcSetup.lua index 178c77f398..a178d19e2c 100644 --- a/src/Modules/CalcSetup.lua +++ b/src/Modules/CalcSetup.lua @@ -791,6 +791,14 @@ function calcs.initEnv(build, mode, override, specEnv) ::continue:: end + local function setLifeRecoveryFromFlasks(item) -- Poisonous Concoction + if item and item.type == "Flask" and item.base.subType == "Life" then + if item.flaskData.lifeTotal > (env.itemModDB.multipliers["LifeFlaskRecovery"] or 0) then + env.itemModDB.multipliers["LifeFlaskRecovery"] = item.flaskData.lifeTotal + end + end + end + if not env.configInput.ignoreItemDisablers then local itemDisabled = {} local itemDisablers = {} @@ -853,9 +861,7 @@ function calcs.initEnv(build, mode, override, specEnv) end end for slot in pairs(trueDisabled) do - if slot:find("Flask") and items[slot] and items[slot].baseName:find("Life Flask") then -- save lifeTotal for PConc if life flask is in disabled slot - env.itemModDB.multipliers["LifeFlaskRecovery"] = items[slot].flaskData.lifeTotal - end + setLifeRecoveryFromFlasks(items[slot]) items[slot] = nil end end @@ -867,12 +873,7 @@ function calcs.initEnv(build, mode, override, specEnv) if slot.active then env.flasks[item] = true end - if item.base.subType == "Life" then - local highestLifeRecovery = env.itemModDB.multipliers["LifeFlaskRecovery"] or 0 - if item.flaskData.lifeTotal > highestLifeRecovery then - env.itemModDB.multipliers["LifeFlaskRecovery"] = item.flaskData.lifeTotal - end - end + setLifeRecoveryFromFlasks(item) item = nil elseif item and item.type == "Tincture" then if slot.active then