aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortreeston <treeston.mmoc@gmail.com>2017-05-31 14:03:48 +0200
committerfunjoker <funjoker109@gmail.com>2020-06-14 23:49:04 +0200
commit57e3a67c94c58e7a18b7b0c97f6756f4883de552 (patch)
tree5966a62decd6d0c5d480f86cc6e5ba9e6661764c
parent803012cc40bd0452c611ee00679131b91c6e5075 (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.cpp5
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);
}