diff --git a/src/Data/Skills/sup_int.lua b/src/Data/Skills/sup_int.lua index 6fc23551a0..a59b070c47 100644 --- a/src/Data/Skills/sup_int.lua +++ b/src/Data/Skills/sup_int.lua @@ -3130,7 +3130,7 @@ skills["SupportHextoad"] = { statDescriptionScope = "gem_stat_descriptions", statMap = { ["hex_zone_trigger_hextoad_every_x_ms"] = { - mod("HexToadCooldown", "MIN", nil), + skill("hextoadTriggerInterval", nil), div = 1000 }, }, diff --git a/src/Export/Skills/sup_int.txt b/src/Export/Skills/sup_int.txt index 35137180f4..6d48033e22 100644 --- a/src/Export/Skills/sup_int.txt +++ b/src/Export/Skills/sup_int.txt @@ -447,7 +447,7 @@ local skills, mod, flag, skill = ... #skill SupportHextoad statMap = { ["hex_zone_trigger_hextoad_every_x_ms"] = { - mod("HexToadCooldown", "MIN", nil), + skill("hextoadTriggerInterval", nil), div = 1000 }, }, diff --git a/src/Modules/CalcTriggers.lua b/src/Modules/CalcTriggers.lua index c0940ca031..8d71b72ad4 100644 --- a/src/Modules/CalcTriggers.lua +++ b/src/Modules/CalcTriggers.lua @@ -1515,15 +1515,24 @@ local configTable = { } end, ["bursting toad"] = function(env) + local triggerInterval = m_huge -- All gems in the socket group should return the same HexToadCooldown even when there are multiple hextoad support gems slotted for _, skill in ipairs(env.player.activeSkillList) do - if skill ~= env.player.mainSkill and slotMatch(env, skill) then - local cooldown = skill.skillModList:Min(nil, "HexToadCooldown") - if cooldown then - return { trigRate = 1 / cooldown, source = env.player.mainSkill } - end + if skill.skillData.hextoadTriggerInterval then + triggerInterval = m_min(triggerInterval, skill.skillData.hextoadTriggerInterval) end end + if triggerInterval < m_huge then + env.player.mainSkill.skillFlags.globalTrigger = true + env.player.mainSkill.skillData.triggerRateCapOverride = 1 / triggerInterval + if env.player.breakdown then + env.player.breakdown.TriggerRateCap = { + s_format("1 / %.2f ^8(Hextoad trigger interval)", triggerInterval), + s_format("= %.2f", env.player.mainSkill.skillData.triggerRateCapOverride), + } + end + return {source = env.player.mainSkill} + end end, }