From a39d0db9ec64f6bf38716abaade5b7835f2db338 Mon Sep 17 00:00:00 2001 From: Shauren Date: Wed, 1 May 2024 22:26:53 +0200 Subject: Core/Spells: Implemented evoker empower spell mechanic --- src/server/game/Entities/Unit/Unit.cpp | 2 +- src/server/game/Entities/Unit/Unit.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'src/server/game/Entities/Unit') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index a5a0b56df0e..55a697f32db 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -3071,7 +3071,7 @@ void Unit::FinishSpell(CurrentSpellTypes spellType, SpellCastResult result /*= S return; if (spellType == CURRENT_CHANNELED_SPELL) - spell->SendChannelUpdate(0); + spell->SendChannelUpdate(0, result); spell->finish(result); } diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 3a01deadd62..cae58533142 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -1429,6 +1429,8 @@ class TC_GAME_API Unit : public WorldObject RemoveDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects), index); } void ClearChannelObjects() { ClearDynamicUpdateFieldValues(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects)); } + int8 GetSpellEmpowerStage() const { return m_unitData->SpellEmpowerStage; } + void SetSpellEmpowerStage(int8 stage) { SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::SpellEmpowerStage), stage); } void SetCurrentCastSpell(Spell* pSpell); void InterruptSpell(CurrentSpellTypes spellType, bool withDelayed = true, bool withInstant = true); -- cgit v1.2.3