diff options
author | treeston <treeston.mmoc@gmail.com> | 2017-05-31 14:03:48 +0200 |
---|---|---|
committer | funjoker <funjoker109@gmail.com> | 2020-06-14 23:49:04 +0200 |
commit | 57e3a67c94c58e7a18b7b0c97f6756f4883de552 (patch) | |
tree | 5966a62decd6d0c5d480f86cc6e5ba9e6661764c | |
parent | 803012cc40bd0452c611ee00679131b91c6e5075 (diff) |
Fix an issue where CanSpawn would never get invoked on creatures without per-guid script.
(cherry picked from commit aeaa8ecfabc2885aa24a86ce22034718cb4f62d8)
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp index b912f51cf9d..72354f47b21 100644 --- a/src/server/game/Scripting/ScriptMgr.cpp +++ b/src/server/game/Scripting/ScriptMgr.cpp @@ -1607,7 +1607,10 @@ bool ScriptMgr::CanSpawn(ObjectGuid::LowType spawnId, uint32 entry, CreatureTemp CreatureTemplate const* baseTemplate = sObjectMgr->GetCreatureTemplate(entry); if (!baseTemplate) baseTemplate = actTemplate; - GET_SCRIPT_RET(CreatureScript, (cData ? cData->ScriptId : baseTemplate->ScriptID), tmpscript, true); + uint32 scriptId = baseTemplate->ScriptID; + if (cData && cData->ScriptId) + scriptId = cData->ScriptId; + GET_SCRIPT_RET(CreatureScript, scriptId, tmpscript, true); return tmpscript->CanSpawn(spawnId, entry, baseTemplate, actTemplate, cData, map); } |