diff options
author | Shauren <shauren.trinity@gmail.com> | 2018-08-01 19:11:02 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2018-08-01 19:11:02 +0200 |
commit | 172ccdb49929f40d0c5c27e3fd500514088d5112 (patch) | |
tree | d7f243ccb599b8cafcb994341d942d9364b9f488 | |
parent | c0f0228aef213c640490bade7978d63ec8611d76 (diff) |
Core/Spells: Fixed crash in AuraEffect::HandlePlayScene
Closes #22213
-rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index ec89617c794..b639fe12d75 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -6170,15 +6170,14 @@ void AuraEffect::HandlePlayScene(AuraApplication const* aurApp, uint8 mode, bool if (!player) return; - uint32 sceneId = GetMiscValue(); + SceneTemplate const* sceneTemplate = sObjectMgr->GetSceneTemplate(GetMiscValue()); + if (!sceneTemplate) + return; if (apply) - player->GetSceneMgr().PlayScene(sceneId); + player->GetSceneMgr().PlaySceneByTemplate(sceneTemplate); else - { - SceneTemplate const* sceneTemplate = sObjectMgr->GetSceneTemplate(sceneId); player->GetSceneMgr().CancelSceneByPackageId(sceneTemplate->ScenePackageId); - } } void AuraEffect::HandleCreateAreaTrigger(AuraApplication const* aurApp, uint8 mode, bool apply) const |