diff --git a/sim/warlock/apl_values.go b/sim/warlock/apl_values.go index a8882444ea..334c98b46e 100644 --- a/sim/warlock/apl_values.go +++ b/sim/warlock/apl_values.go @@ -1,6 +1,8 @@ package warlock import ( + "time" + "github.com/wowsims/wotlk/sim/core" "github.com/wowsims/wotlk/sim/core/proto" ) @@ -71,9 +73,8 @@ func (value *APLValueWarlockShouldRecastDrainSoul) GetBool(sim *core.Simulation) snapshotDmg := warlock.DrainSoul.ExpectedTickDamageFromCurrentSnapshot(sim, warlock.CurrentTarget) * float64(ticksLeft) recastDmg := warlock.DrainSoul.ExpectedTickDamage(sim, warlock.CurrentTarget) * float64(recastTicks) - snapshotDPS := snapshotDmg / (float64(ticksLeft) * dsDot.TickPeriod().Seconds()) - recastDps := recastDmg / (float64(recastTicks)*warlock.ApplyCastSpeed(dsDot.TickLength).Seconds() + - humanReactionTime.Seconds()) + snapshotDPS := snapshotDmg / (time.Duration(ticksLeft) * dsDot.TickPeriod()).Seconds() + recastDps := recastDmg / (time.Duration(recastTicks)*warlock.ApplyCastSpeed(dsDot.TickLength) + warlock.ChannelClipDelay).Seconds() //if sim.Log != nil { // warlock.Log(sim, "Should Recast Drain Soul Calc: %.2f (%d) > %.2f (%d)", recastDps, recastTicks, snapshotDPS, ticksLeft)