Skip to content

Commit 0408db9

Browse files
LocalIdentityLocalIdentity
andauthored
Fix Master Distiller not working with disabled Flasks (#9275)
Disabling flasks does not prevent Master Distiller from using charges from the flask to give you the benefit of the Ascendancy Fixes #9241 Co-authored-by: LocalIdentity <[email protected]>
1 parent 95e0618 commit 0408db9

File tree

3 files changed

+11
-6
lines changed

3 files changed

+11
-6
lines changed

src/Data/ModCache.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9205,9 +9205,9 @@ c["Hits with this Weapon gain 88% of Physical Damage as Extra Cold or Lightning
92059205
c["Hits with this Weapon have +10% to Critical Strike Multiplier per Enemy Power"]={{[1]={[1]={type="Condition",var="{Hand}Attack"},[2]={skillType=1,type="SkillType"},[3]={type="Multiplier",var="EnemyPower"},flags=4,keywordFlags=0,name="CritMultiplier",type="BASE",value=10}},nil}
92069206
c["Hits with this Weapon ignore Enemy Physical Damage Reduction"]={{[1]={[1]={type="Condition",var="{Hand}Attack"},[2]={skillType=1,type="SkillType"},flags=4,keywordFlags=0,name="ChanceToIgnoreEnemyPhysicalDamageReduction",type="BASE",value=100}},nil}
92079207
c["Hollow Palm Technique"]={{[1]={flags=0,keywordFlags=0,name="Keystone",type="LIST",value="Hollow Palm Technique"}},nil}
9208-
c["If Amethyst Flask Charges are consumed, 37% of Physical Damage as Extra Chaos Damage"]={{[1]={[1]={neg=true,skillType=41,type="SkillType"},[2]={neg=true,skillType=57,type="SkillType"},[3]={type="Condition",var="UsingAmethystFlask"},flags=0,keywordFlags=0,name="PhysicalDamageGainAsChaos",type="BASE",value=37}},nil}
9209-
c["If Bismuth Flask Charges are consumed, Penetrate 25% Elemental Resistances"]={{[1]={[1]={neg=true,skillType=41,type="SkillType"},[2]={neg=true,skillType=57,type="SkillType"},[3]={type="Condition",var="UsingBismuthFlask"},flags=0,keywordFlags=0,name="ElementalPenetration",type="BASE",value=25}},nil}
9210-
c["If Diamond Flask Charges are consumed, 250% increased Critical Strike Chance"]={{[1]={[1]={neg=true,skillType=41,type="SkillType"},[2]={neg=true,skillType=57,type="SkillType"},[3]={type="Condition",var="UsingDiamondFlask"},flags=0,keywordFlags=0,name="CritChance",type="INC",value=250}},nil}
9208+
c["If Amethyst Flask Charges are consumed, 37% of Physical Damage as Extra Chaos Damage"]={{[1]={[1]={neg=true,skillType=41,type="SkillType"},[2]={neg=true,skillType=57,type="SkillType"},[3]={type="Condition",var="HaveAmethystFlask"},flags=0,keywordFlags=0,name="PhysicalDamageGainAsChaos",type="BASE",value=37}},nil}
9209+
c["If Bismuth Flask Charges are consumed, Penetrate 25% Elemental Resistances"]={{[1]={[1]={neg=true,skillType=41,type="SkillType"},[2]={neg=true,skillType=57,type="SkillType"},[3]={type="Condition",var="HaveBismuthFlask"},flags=0,keywordFlags=0,name="ElementalPenetration",type="BASE",value=25}},nil}
9210+
c["If Diamond Flask Charges are consumed, 250% increased Critical Strike Chance"]={{[1]={[1]={neg=true,skillType=41,type="SkillType"},[2]={neg=true,skillType=57,type="SkillType"},[3]={type="Condition",var="HaveDiamondFlask"},flags=0,keywordFlags=0,name="CritChance",type="INC",value=250}},nil}
92119211
c["If you Consumed a Corpse Recently, you and nearby Allies regenerate 5% of Life per second"]={{[1]={[1]={type="Condition",var="ConsumedCorpseRecently"},flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=0,keywordFlags=0,name="LifeRegenPercent",type="BASE",value=5}}}},nil}
92129212
c["If you have Blocked Recently, you and nearby Allies Regenerate 5% of Life per second"]={{[1]={[1]={type="Condition",var="BlockedRecently"},flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=0,keywordFlags=0,name="LifeRegenPercent",type="BASE",value=5}}}},nil}
92139213
c["If you've Attacked Recently, you and nearby Allies have +10% Chance to Block Attack Damage"]={{[1]={[1]={type="Condition",var="AttackedRecently"},flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=0,keywordFlags=0,name="BlockChance",type="BASE",value=10}}}},nil}

src/Modules/CalcPerform.lua

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1445,6 +1445,7 @@ function calcs.perform(env, skipEHP)
14451445

14461446
local function mergeFlasks(flasks, onlyRecovery, checkNonRecoveryFlasksForMinions)
14471447
local flaskBuffs = { }
1448+
local haveFlask = { }
14481449
local flaskConditions = {}
14491450
local flaskConditionsNonUtility = {}
14501451
local flaskBuffsPerBase = {}
@@ -1512,6 +1513,7 @@ function calcs.perform(env, skipEHP)
15121513
flaskConditions["UsingFlask"] = true
15131514
flaskConditionsNonUtility["UsingFlask"] = true
15141515
flaskConditions["Using"..item.baseName:gsub("%s+", "")] = true
1516+
haveFlask["Have"..item.baseName:gsub("%s+", "")] = true
15151517
if item.base.flask.life or item.base.flask.mana then
15161518
flaskConditionsNonUtility["Using"..item.baseName:gsub("%s+", "")] = true
15171519
end
@@ -1538,6 +1540,9 @@ function calcs.perform(env, skipEHP)
15381540
calcFlaskMods(item, item.baseName, item.buffModList, item.modList)
15391541
end
15401542
end
1543+
for haveFlask, status in pairs(haveFlask) do
1544+
modDB.conditions[haveFlask] = status
1545+
end
15411546
if modDB:Flag(nil, "UtilityFlasksDoNotApplyToPlayer") then
15421547
for flaskCond, status in pairs(flaskConditionsNonUtility) do
15431548
modDB.conditions[flaskCond] = status

src/Modules/ModParser.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2756,13 +2756,13 @@ local specialModList = {
27562756
["immun[ei]t?y? to elemental ailments during any flask effect"] = { flag("ElementalAilmentImmune", { type = "Condition", var = "UsingFlask" }), },
27572757
["grant bonuses to non%-channelling skills you use by consuming (%d+) charges from a flask of each of the following types, if possible:"] = { },
27582758
["if diamond flask charges are consumed, (%d+)%% increased critical strike chance"] = function (num) return {
2759-
mod("CritChance", "INC", num, { type = "SkillType", skillType = SkillType.Triggered, neg = true }, { type = "SkillType", skillType = SkillType.Channel, neg = true }, { type = "Condition", var = "UsingDiamondFlask" })
2759+
mod("CritChance", "INC", num, { type = "SkillType", skillType = SkillType.Triggered, neg = true }, { type = "SkillType", skillType = SkillType.Channel, neg = true }, { type = "Condition", var = "HaveDiamondFlask" })
27602760
} end,
27612761
["if bismuth flask charges are consumed, penetrate (%d+)%% elemental resistances"] = function (num) return {
2762-
mod("ElementalPenetration", "BASE", num, { type = "SkillType", skillType = SkillType.Triggered, neg = true }, { type = "SkillType", skillType = SkillType.Channel, neg = true }, { type = "Condition", var = "UsingBismuthFlask" })
2762+
mod("ElementalPenetration", "BASE", num, { type = "SkillType", skillType = SkillType.Triggered, neg = true }, { type = "SkillType", skillType = SkillType.Channel, neg = true }, { type = "Condition", var = "HaveBismuthFlask" })
27632763
} end,
27642764
["if amethyst flask charges are consumed, (%d+)%% of physical damage as extra chaos damage"] = function (num) return {
2765-
mod("PhysicalDamageGainAsChaos", "BASE", num, { type = "SkillType", skillType = SkillType.Triggered, neg = true }, { type = "SkillType", skillType = SkillType.Channel, neg = true }, { type = "Condition", var = "UsingAmethystFlask" })
2765+
mod("PhysicalDamageGainAsChaos", "BASE", num, { type = "SkillType", skillType = SkillType.Triggered, neg = true }, { type = "SkillType", skillType = SkillType.Channel, neg = true }, { type = "Condition", var = "HaveAmethystFlask" })
27662766
} end,
27672767
-- Raider
27682768
["nearby enemies have (%d+)%% less accuracy rating while you have phasing"] = function(num) return { mod("EnemyModifier", "LIST", { mod = mod("Accuracy", "MORE", -num) }, { type = "Condition", var = "Phasing" }) } end,

0 commit comments

Comments
 (0)