aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSnapperRy <snapperryen@gmail.com>2016-08-24 00:13:26 +0200
committerjoschiwald <joschiwald.trinity@gmail.com>2017-02-18 14:47:01 +0100
commit8220496be1a83d978c70318da1283acd0d22bc60 (patch)
tree3a0f939c9bb6df5f688b2a54a6e43837fc3bc750 /src
parent6ea973adecbc77711a090357c7fdd2809cf3fb61 (diff)
Core/SmartAI: allow SMART_TARGET_OWNER_OR_SUMMONER to target a temporary summon's summoner, too (#17851)
Core/SmartAI: allow SMART_TARGET_OWNER_OR_SUMMONER to target a temporary summon's summoner, too (cherry picked from commit 1fcd03b60a17db5fddef13feb6fe6b8d7178d0f5)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/AI/SmartScripts/SmartScript.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp
index 2a316e7e14b..7ddb16a81a9 100644
--- a/src/server/game/AI/SmartScripts/SmartScript.cpp
+++ b/src/server/game/AI/SmartScripts/SmartScript.cpp
@@ -2790,6 +2790,11 @@ ObjectList* SmartScript::GetTargets(SmartScriptHolder const& e, Unit* invoker /*
ObjectGuid charmerOrOwnerGuid = me->GetCharmerOrOwnerGUID();
if (!charmerOrOwnerGuid)
+ if (TempSummon* tempSummon = me->ToTempSummon())
+ if (Unit* summoner = tempSummon->GetSummoner())
+ charmerOrOwnerGuid = summoner->GetGUID();
+
+ if (!charmerOrOwnerGuid)
charmerOrOwnerGuid = me->GetCreatorGUID();
if (Unit* owner = ObjectAccessor::GetUnit(*me, charmerOrOwnerGuid))