Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions src/Classes/ModStore.lua
Original file line number Diff line number Diff line change
Expand Up @@ -453,6 +453,9 @@ function ModStoreClass:EvalMod(mod, cfg)
end
local percent = tag.percent or self:GetMultiplier(tag.percentVar, cfg)
local mult = base * (percent and percent / 100 or 1)
if tag.floor then
mult = m_floor(mult)
end
local limitTotal
if tag.limit or tag.limitVar then
local limit = tag.limit or self:GetMultiplier(tag.limitVar, cfg)
Expand Down
12 changes: 12 additions & 0 deletions src/Data/Skills/sup_int.lua
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,20 @@ skills["SupportAmbrosiaPlayer"] = {
label = "Ambrosia",
incrementalEffectiveness = 0.054999999701977,
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["consume_%_of_maximum_mana_flask_charges_on_skill_use"] = {
mod("Multiplier:ManaFlaskMaxChargesPercent", "BASE", nil),
},
["gain_%_damage_as_lighting_per_mana_flask_charge_consumed"] = {
mod("DamageGainAsLightning", "BASE", nil, 0, 0, { type = "Multiplier", var = "ManaFlaskChargeConsumed"}),
},
},
baseFlags = {
},
baseMods = {
mod("Multiplier:ManaFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "ManaFlask1MaxCharges", percentVar = "ManaFlaskMaxChargesPercent", floor = true }),
mod("Multiplier:ManaFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "ManaFlask2MaxCharges", percentVar = "ManaFlaskMaxChargesPercent", floor = true }),
},
constantStats = {
{ "consume_%_of_maximum_mana_flask_charges_on_skill_use", 20 },
{ "gain_%_damage_as_lighting_per_mana_flask_charge_consumed", 3 },
Expand Down
12 changes: 8 additions & 4 deletions src/Data/Skills/sup_str.lua
Original file line number Diff line number Diff line change
Expand Up @@ -607,15 +607,19 @@ skills["SupportConcoctPlayer"] = {
incrementalEffectiveness = 0.054999999701977,
statDescriptionScope = "gem_stat_descriptions",
statMap = {
["support_concoct_bleed_effect_+%_final_per_life_flask_charge_consumed"] = {
mod("AilmentMagnitude", "MORE", nil, 0, KeywordFlag.Bleed, { type = "Multiplier", var = "LifeFlaskChargesUsed"}),
},
["consume_%_of_maximum_life_flask_charges_on_skill_use"] = {
-- Display only
mod("Multiplier:LifeFlaskMaxChargesPercent", "BASE", nil),
},
["support_concoct_bleed_effect_+%_final_per_life_flask_charge_consumed"] = {
mod("AilmentMagnitude", "MORE", nil, 0, KeywordFlag.Bleed, { type = "Multiplier", var = "LifeFlaskChargeConsumed"}),
},
},
baseFlags = {
},
baseMods = {
mod("Multiplier:LifeFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "LifeFlask1MaxCharges", percentVar = "LifeFlaskMaxChargesPercent", floor = true }),
mod("Multiplier:LifeFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "LifeFlask2MaxCharges", percentVar = "LifeFlaskMaxChargesPercent", floor = true }),
},
constantStats = {
{ "consume_%_of_maximum_life_flask_charges_on_skill_use", 20 },
{ "support_concoct_bleed_effect_+%_final_per_life_flask_charge_consumed", 3 },
Expand Down
10 changes: 10 additions & 0 deletions src/Export/Skills/sup_int.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,16 @@ statMap = {

#skill SupportAmbrosiaPlayer
#set SupportAmbrosiaPlayer
statMap = {
["consume_%_of_maximum_mana_flask_charges_on_skill_use"] = {
mod("Multiplier:ManaFlaskMaxChargesPercent", "BASE", nil),
},
["gain_%_damage_as_lighting_per_mana_flask_charge_consumed"] = {
mod("DamageGainAsLightning", "BASE", nil, 0, 0, { type = "Multiplier", var = "ManaFlaskChargeConsumed"}),
},
},
#baseMod mod("Multiplier:ManaFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "ManaFlask1MaxCharges", percentVar = "ManaFlaskMaxChargesPercent", floor = true })
#baseMod mod("Multiplier:ManaFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "ManaFlask2MaxCharges", percentVar = "ManaFlaskMaxChargesPercent", floor = true })
#mods
#skillEnd

Expand Down
10 changes: 6 additions & 4 deletions src/Export/Skills/sup_str.txt
Original file line number Diff line number Diff line change
Expand Up @@ -131,13 +131,15 @@ statMap = {
#skill SupportConcoctPlayer
#set SupportConcoctPlayer
statMap = {
["support_concoct_bleed_effect_+%_final_per_life_flask_charge_consumed"] = {
mod("AilmentMagnitude", "MORE", nil, 0, KeywordFlag.Bleed, { type = "Multiplier", var = "LifeFlaskChargesUsed"}),
},
["consume_%_of_maximum_life_flask_charges_on_skill_use"] = {
-- Display only
mod("Multiplier:LifeFlaskMaxChargesPercent", "BASE", nil),
},
["support_concoct_bleed_effect_+%_final_per_life_flask_charge_consumed"] = {
mod("AilmentMagnitude", "MORE", nil, 0, KeywordFlag.Bleed, { type = "Multiplier", var = "LifeFlaskChargeConsumed"}),
},
},
#baseMod mod("Multiplier:LifeFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "LifeFlask1MaxCharges", percentVar = "LifeFlaskMaxChargesPercent", floor = true })
#baseMod mod("Multiplier:LifeFlaskChargeConsumed", "BASE", 1, 0, 0, { type = "PercentStat", stat = "LifeFlask2MaxCharges", percentVar = "LifeFlaskMaxChargesPercent", floor = true })
#mods
#skillEnd

Expand Down
4 changes: 4 additions & 0 deletions src/Modules/CalcOffence.lua
Original file line number Diff line number Diff line change
Expand Up @@ -571,6 +571,10 @@ function calcs.offence(env, actor, activeSkill)

-- set flask scaling
output.LifeFlaskRecovery = env.itemModDB.multipliers["LifeFlaskRecovery"]
output.LifeFlask1MaxCharges = env.itemModDB.multipliers["LifeFlask1MaxCharges"]
output.LifeFlask2MaxCharges = env.itemModDB.multipliers["LifeFlask2MaxCharges"]
output.ManaFlask1MaxCharges = env.itemModDB.multipliers["ManaFlask1MaxCharges"]
output.ManaFlask2MaxCharges = env.itemModDB.multipliers["ManaFlask2MaxCharges"]

if modDB.conditions["AffectedByEnergyBlade"] then
local dmgMod = calcLib.mod(skillModList, skillCfg, "EnergyBladeDamage")
Expand Down
3 changes: 2 additions & 1 deletion src/Modules/CalcSetup.lua
Original file line number Diff line number Diff line change
Expand Up @@ -906,7 +906,7 @@ function calcs.initEnv(build, mode, override, specEnv)
items[slot] = nil
end
end

for _, slot in pairs(build.itemsTab.orderedSlots) do
local slotName = slot.slotName
local item = items[slotName]
Expand All @@ -920,6 +920,7 @@ function calcs.initEnv(build, mode, override, specEnv)
env.itemModDB.multipliers["LifeFlaskRecovery"] = item.flaskData.lifeTotal
end
end
env.itemModDB.multipliers[item.base.subType..slotName:gsub(" ", "").."MaxCharges"] = item.flaskData.chargesMax
item = nil
elseif item and item.type == "Charm" then
if slot.active then
Expand Down
4 changes: 0 additions & 4 deletions src/Modules/ConfigOptions.lua
Original file line number Diff line number Diff line change
Expand Up @@ -288,10 +288,6 @@ local configSettings = {
{ var = "ColdSnapBypassCD", type = "check", label = "Bypass CD?", ifSkill = "Cold Snap", includeTransfigured = true, apply = function(val, modList, enemyModList)
modList:NewMod("CooldownRecovery", "OVERRIDE", 0, "Config", { type = "SkillName", skillName = "Cold Snap", includeTransfigured = true })
end },
{ label = "Concoct:", ifSkill = "Concoct" },
{ var = "concoctLifeFlaskChargesUsed", type = "count", label = "# of Life Flask charges used:", ifSkill = "Concoct", apply = function(val, modList, enemyModList)
modList:NewMod("Multiplier:LifeFlaskChargesUsed", "BASE", val, "Config")
end },
{ label = "Consecrated Path of Endurance:", ifSkill = "Consecrated Path of Endurance" },
{ var = "ConcPathBypassCD", type = "check", label = "Bypass CD?", ifSkill = "Consecrated Path of Endurance", defaultState = true, apply = function(val, modList, enemyModList)
modList:NewMod("CooldownRecovery", "OVERRIDE", 0, "Config", { type = "SkillName", skillName = "Consecrated Path of Endurance" })
Expand Down