diff options
| author | Discover- <amort11@hotmail.com> | 2013-09-04 09:35:21 +0200 |
|---|---|---|
| committer | Discover- <amort11@hotmail.com> | 2013-09-04 09:35:21 +0200 |
| commit | 9761affc8dcc9cc54ba13bad4e1522d3b3ffda42 (patch) | |
| tree | 049ec1aa46accf7e7cff8f38e7a8adb7f2124863 | |
| parent | a37f18a67a6265282470191b92fc71d173dcedff (diff) | |
Core/SAI: Make SMART_TARGET_OWNER_OR_SUMMONER also work for creatures summoned by spells
| -rw-r--r-- | src/server/game/AI/SmartScripts/SmartScript.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp index f94a3e79066..e6fab906736 100644 --- a/src/server/game/AI/SmartScripts/SmartScript.cpp +++ b/src/server/game/AI/SmartScripts/SmartScript.cpp @@ -2509,8 +2509,15 @@ ObjectList* SmartScript::GetTargets(SmartScriptHolder const& e, Unit* invoker /* case SMART_TARGET_OWNER_OR_SUMMONER: { if (me) - if (Unit* owner = ObjectAccessor::GetUnit(*me, me->GetCharmerOrOwnerGUID())) + { + uint64 charmerOrOwnerGuid = me->GetCharmerOrOwnerGUID(); + + if (!charmerOrOwnerGuid) + charmerOrOwnerGuid = me->GetCreatorGUID(); + + if (Unit* owner = ObjectAccessor::GetUnit(*me, charmerOrOwnerGuid)) l->push_back(owner); + } break; } case SMART_TARGET_THREAT_LIST: |
