diff options
author | Teleqraph <nyrdeveloper@gmail.com> | 2023-05-29 10:43:48 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-29 10:43:48 +0200 |
commit | c4aa4d4b5371af440b9fce2bb0866b90a50750f6 (patch) | |
tree | 42887a795e0b5dca9c5baa5905dbb69d8d1cfb8d /src | |
parent | 06d0b16f158e8793860d9edd11b990f20b1d0dac (diff) |
Core/Spells: Implement SPELL_ATTR10_RESET_COOLDOWN_UPON_ENDING_AN_ENCOUNTER (#29032)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 7de61fa8ed8..98435a60d47 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -547,6 +547,13 @@ void Unit::AtStartOfEncounter() void Unit::AtEndOfEncounter() { RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::EndOfEncounter); + + GetSpellHistory()->ResetCooldowns([](SpellHistory::CooldownStorageType::iterator itr) + { + SpellInfo const* spellInfo = sSpellMgr->AssertSpellInfo(itr->first, DIFFICULTY_NONE); + + return spellInfo->HasAttribute(SPELL_ATTR10_RESET_COOLDOWN_ON_ENCOUNTER_END); + }, true); } void Unit::UpdateSplineMovement(uint32 t_diff) |