diff options
author | Robingad <robingad@rambler.ru> | 2021-02-28 19:42:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-28 18:42:36 +0100 |
commit | 995fb23bc11e5dff3f21e1afa977934b76482d1b (patch) | |
tree | 1a24f13e8bf23b693c8d58d2f5055cbc24316547 | |
parent | 5e78494e541b15ede4ca41c92654d6c401f6dc4c (diff) |
Core/Scripts: Add SpellInfo argument to ScriptMgr::ModifySpellDamageTaken (#26141)
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.cpp | 6 | ||||
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.h | 4 |
3 files changed, 6 insertions, 6 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index ffd44153cd0..09dae9598e4 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -1188,7 +1188,7 @@ void Unit::CalculateSpellDamageTaken(SpellNonMeleeDamage* damageInfo, int32 dama } // Script Hook For CalculateSpellDamageTaken -- Allow scripts to change the Damage post class mitigation calculations - sScriptMgr->ModifySpellDamageTaken(damageInfo->target, damageInfo->attacker, damage); + sScriptMgr->ModifySpellDamageTaken(damageInfo->target, damageInfo->attacker, damage, spellInfo); // Calculate absorb resist if (damage < 0) diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp index d6ada60914e..de42459a367 100644 --- a/src/server/game/Scripting/ScriptMgr.cpp +++ b/src/server/game/Scripting/ScriptMgr.cpp @@ -2193,10 +2193,10 @@ void ScriptMgr::ModifyMeleeDamage(Unit* target, Unit* attacker, uint32& damage) FOREACH_SCRIPT(PlayerScript)->ModifyMeleeDamage(target, attacker, damage); } -void ScriptMgr::ModifySpellDamageTaken(Unit* target, Unit* attacker, int32& damage) +void ScriptMgr::ModifySpellDamageTaken(Unit* target, Unit* attacker, int32& damage, SpellInfo const* spellInfo) { - FOREACH_SCRIPT(UnitScript)->ModifySpellDamageTaken(target, attacker, damage); - FOREACH_SCRIPT(PlayerScript)->ModifySpellDamageTaken(target, attacker, damage); + FOREACH_SCRIPT(UnitScript)->ModifySpellDamageTaken(target, attacker, damage, spellInfo); + FOREACH_SCRIPT(PlayerScript)->ModifySpellDamageTaken(target, attacker, damage, spellInfo); } // Conversation diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index f781d74a8fb..49389fa1bcc 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -409,7 +409,7 @@ class TC_GAME_API UnitScript : public ScriptObject virtual void ModifyMeleeDamage(Unit* /*target*/, Unit* /*attacker*/, uint32& /*damage*/) { } // Called when Spell Damage is being Dealt - virtual void ModifySpellDamageTaken(Unit* /*target*/, Unit* /*attacker*/, int32& /*damage*/) { } + virtual void ModifySpellDamageTaken(Unit* /*target*/, Unit* /*attacker*/, int32& /*damage*/, SpellInfo const* /*spellInfo*/) { } }; class TC_GAME_API CreatureScript : public UnitScript @@ -1127,7 +1127,7 @@ class TC_GAME_API ScriptMgr void OnDamage(Unit* attacker, Unit* victim, uint32& damage); void ModifyPeriodicDamageAurasTick(Unit* target, Unit* attacker, uint32& damage); void ModifyMeleeDamage(Unit* target, Unit* attacker, uint32& damage); - void ModifySpellDamageTaken(Unit* target, Unit* attacker, int32& damage); + void ModifySpellDamageTaken(Unit* target, Unit* attacker, int32& damage, SpellInfo const* spellInfo); public: /* AreaTriggerEntityScript */ |