mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-02-19 00:20:39 +01:00
Core/Spells: restored the old logic when determining when to add additional haste based ticks
This commit is contained in:
@@ -3410,7 +3410,10 @@ int32 SpellInfo::CalcDuration(Unit* caster, Spell* spell) const
|
||||
if (effectPeriod > 0)
|
||||
{
|
||||
// additional ticks are being added by rounding up, resulting in increased duration.
|
||||
int32 ticks = int32(std::ceil((float)duration / effectPeriod));
|
||||
float preciseTicks = (float)duration / float(effectPeriod);
|
||||
int32 ticks = duration / effectPeriod;
|
||||
if (preciseTicks - ticks >= 0.5f)
|
||||
ticks = int32(std::ceil(preciseTicks));
|
||||
duration = std::max(ticks * effectPeriod, duration);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user