Skip to content

Commit

Permalink
Fix "Full Poison DPS" value capping to one stack (#8460)
Browse files Browse the repository at this point in the history
* Fix Full Poison DPS only showing one poison stack

* Cap from multiple sources
  • Loading branch information
Wires77 authored Feb 12, 2025
1 parent 8b3ec35 commit cd62ac9
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions src/Modules/Calcs.lua
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ function calcs.calcFullDPS(build, mode, override, specEnv)
combinedDPS = 0,
TotalDotDPS = 0,
skills = { },
poisonDPS = 0,
TotalPoisonDPS = 0,
causticGroundDPS = 0,
impaleDPS = 0,
igniteDPS = 0,
Expand Down Expand Up @@ -222,7 +222,7 @@ function calcs.calcFullDPS(build, mode, override, specEnv)
igniteSource = activeSkill.activeEffect.grantedEffect.name
end
if usedEnv.minion.output.PoisonDPS and usedEnv.minion.output.PoisonDPS > 0 then
fullDPS.poisonDPS = fullDPS.poisonDPS + usedEnv.minion.output.PoisonDPS * activeSkillCount
fullDPS.TotalPoisonDPS = fullDPS.TotalPoisonDPS + usedEnv.minion.output.TotalPoisonDPS * activeSkillCount
end
if usedEnv.minion.output.ImpaleDPS and usedEnv.minion.output.ImpaleDPS > 0 then
fullDPS.impaleDPS = fullDPS.impaleDPS + usedEnv.minion.output.ImpaleDPS * activeSkillCount
Expand Down Expand Up @@ -258,7 +258,7 @@ function calcs.calcFullDPS(build, mode, override, specEnv)
igniteSource = activeSkill.activeEffect.grantedEffect.name .. " (Mirage)"
end
if activeSkill.mirage.output.PoisonDPS and activeSkill.mirage.output.PoisonDPS > 0 then
fullDPS.poisonDPS = fullDPS.poisonDPS + activeSkill.mirage.output.PoisonDPS * mirageCount
fullDPS.TotalPoisonDPS = fullDPS.TotalPoisonDPS + activeSkill.mirage.output.TotalPoisonDPS * mirageCount
end
if activeSkill.mirage.output.ImpaleDPS and activeSkill.mirage.output.ImpaleDPS > 0 then
fullDPS.impaleDPS = fullDPS.impaleDPS + activeSkill.mirage.output.ImpaleDPS * mirageCount
Expand Down Expand Up @@ -303,7 +303,7 @@ function calcs.calcFullDPS(build, mode, override, specEnv)
burningGroundSource = activeSkill.activeEffect.grantedEffect.name
end
if usedEnv.player.output.PoisonDPS and usedEnv.player.output.PoisonDPS > 0 then
fullDPS.poisonDPS = fullDPS.poisonDPS + usedEnv.player.output.PoisonDPS * activeSkillCount
fullDPS.TotalPoisonDPS = fullDPS.TotalPoisonDPS + usedEnv.player.output.TotalPoisonDPS * activeSkillCount
end
if usedEnv.player.output.CausticGroundDPS and usedEnv.player.output.CausticGroundDPS > fullDPS.causticGroundDPS then
fullDPS.causticGroundDPS = usedEnv.player.output.CausticGroundDPS
Expand Down Expand Up @@ -353,10 +353,10 @@ function calcs.calcFullDPS(build, mode, override, specEnv)
t_insert(fullDPS.skills, { name = "Best Burning Ground DPS", dps = fullDPS.burningGroundDPS, count = 1, source = burningGroundSource })
fullDPS.TotalDotDPS = fullDPS.TotalDotDPS + fullDPS.burningGroundDPS
end
if fullDPS.poisonDPS > 0 then
fullDPS.poisonDPS = m_min(fullDPS.poisonDPS, data.misc.DotDpsCap)
t_insert(fullDPS.skills, { name = "Full Poison DPS", dps = fullDPS.poisonDPS, count = 1 })
fullDPS.TotalDotDPS = fullDPS.TotalDotDPS + fullDPS.poisonDPS
if fullDPS.TotalPoisonDPS > 0 then
fullDPS.TotalPoisonDPS = m_min(fullDPS.TotalPoisonDPS, data.misc.DotDpsCap)
t_insert(fullDPS.skills, { name = "Full Poison DPS", dps = fullDPS.TotalPoisonDPS, count = 1 })
fullDPS.TotalDotDPS = fullDPS.TotalDotDPS + fullDPS.TotalPoisonDPS
end
if fullDPS.causticGroundDPS > 0 then
t_insert(fullDPS.skills, { name = "Best Caustic Ground DPS", dps = fullDPS.causticGroundDPS, count = 1, source = causticGroundSource })
Expand Down

0 comments on commit cd62ac9

Please sign in to comment.