From 2420f4e7a10c430ea28b2d71a17f54da0c244a54 Mon Sep 17 00:00:00 2001 From: Matan Shukry Date: Tue, 23 Mar 2021 00:21:09 +0100 Subject: Core/Scripts: Implemented new aura script hook OnEnterLeaveCombat --- src/server/game/Spells/SpellScript.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/server/game/Spells/SpellScript.cpp') diff --git a/src/server/game/Spells/SpellScript.cpp b/src/server/game/Spells/SpellScript.cpp index de737b0d5d0..97b93e74766 100644 --- a/src/server/game/Spells/SpellScript.cpp +++ b/src/server/game/Spells/SpellScript.cpp @@ -978,6 +978,16 @@ void AuraScript::EffectProcHandler::Call(AuraScript* auraScript, AuraEffect* aur (auraScript->*_EffectHandlerScript)(aurEff, eventInfo); } +AuraScript::EnterLeaveCombatHandler::EnterLeaveCombatHandler(AuraEnterLeaveCombatFnType handlerScript) +{ + _handlerScript = handlerScript; +} + +void AuraScript::EnterLeaveCombatHandler::Call(AuraScript* auraScript, bool isNowInCombat) const +{ + (auraScript->*_handlerScript)(isNowInCombat); +} + bool AuraScript::_Load(Aura* aura) { m_aura = aura; @@ -1224,6 +1234,7 @@ Unit* AuraScript::GetTarget() const case AURA_SCRIPT_HOOK_AFTER_PROC: case AURA_SCRIPT_HOOK_EFFECT_PROC: case AURA_SCRIPT_HOOK_EFFECT_AFTER_PROC: + case AURA_SCRIPT_HOOK_ENTER_LEAVE_COMBAT: return m_auraApplication->GetTarget(); default: TC_LOG_ERROR("scripts", "Script: `%s` Spell: `%u` AuraScript::GetTarget called in a hook in which the call won't have effect!", m_scriptName->c_str(), m_scriptSpellId); -- cgit v1.2.3