diff options
| -rw-r--r-- | src/server/game/Spells/SpellHistory.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Spells/SpellHistory.cpp b/src/server/game/Spells/SpellHistory.cpp index 6a72fe5c773..c2d1356e61a 100644 --- a/src/server/game/Spells/SpellHistory.cpp +++ b/src/server/game/Spells/SpellHistory.cpp @@ -913,7 +913,8 @@ void SpellHistory::RestoreCooldownStateAfterDuel() Clock::time_point now = Clock::now(); uint32 cooldownDuration = c.second.CooldownEnd > now ? std::chrono::duration_cast<std::chrono::milliseconds>(c.second.CooldownEnd - now).count() : 0; - if (cooldownDuration == 0) + // cooldownDuration must be between 0 and 10 minutes in order to avoid any visual bugs + if (cooldownDuration == 0 || cooldownDuration > 10 * MINUTE * IN_MILLISECONDS) continue; spellCooldown.SpellCooldowns.emplace_back(c.first, cooldownDuration); |
