Skip to content

Commit 944268f

Browse files
committed
FIX: improve hextoad breakdown and simplify calcs
Signed-off-by: Paliak <91493239+Paliak@users.noreply.github.com>
1 parent b439e04 commit 944268f

3 files changed

Lines changed: 16 additions & 7 deletions

File tree

src/Data/Skills/sup_int.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3130,7 +3130,7 @@ skills["SupportHextoad"] = {
31303130
statDescriptionScope = "gem_stat_descriptions",
31313131
statMap = {
31323132
["hex_zone_trigger_hextoad_every_x_ms"] = {
3133-
mod("HexToadCooldown", "MIN", nil),
3133+
skill("hextoadTriggerInterval", nil),
31343134
div = 1000
31353135
},
31363136
},

src/Export/Skills/sup_int.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,7 @@ local skills, mod, flag, skill = ...
447447
#skill SupportHextoad
448448
statMap = {
449449
["hex_zone_trigger_hextoad_every_x_ms"] = {
450-
mod("HexToadCooldown", "MIN", nil),
450+
skill("hextoadTriggerInterval", nil),
451451
div = 1000
452452
},
453453
},

src/Modules/CalcTriggers.lua

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1515,15 +1515,24 @@ local configTable = {
15151515
}
15161516
end,
15171517
["bursting toad"] = function(env)
1518+
local triggerInterval = m_huge
15181519
-- All gems in the socket group should return the same HexToadCooldown even when there are multiple hextoad support gems slotted
15191520
for _, skill in ipairs(env.player.activeSkillList) do
1520-
if skill ~= env.player.mainSkill and slotMatch(env, skill) then
1521-
local cooldown = skill.skillModList:Min(nil, "HexToadCooldown")
1522-
if cooldown then
1523-
return { trigRate = 1 / cooldown, source = env.player.mainSkill }
1524-
end
1521+
if skill.skillData.hextoadTriggerInterval then
1522+
triggerInterval = m_min(triggerInterval, skill.skillData.hextoadTriggerInterval)
15251523
end
15261524
end
1525+
if triggerInterval < m_huge then
1526+
env.player.mainSkill.skillFlags.globalTrigger = true
1527+
env.player.mainSkill.skillData.triggerRateCapOverride = 1 / triggerInterval
1528+
if env.player.breakdown then
1529+
env.player.breakdown.TriggerRateCap = {
1530+
s_format("1 / %.2f ^8(Hextoad trigger interval)", triggerInterval),
1531+
s_format("= %.2f", env.player.mainSkill.skillData.triggerRateCapOverride),
1532+
}
1533+
end
1534+
return {source = env.player.mainSkill}
1535+
end
15271536
end,
15281537
}
15291538

0 commit comments

Comments
 (0)