From 9f962377fac365b6bbbf002496739d75539a2249 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Wed, 1 Aug 2018 14:16:35 -0400 Subject: [PATCH] Core/Spells: Fixed crash in AuraEffect.HandlePlayScene --- Source/Game/Entities/Player/SceneMgr.cs | 2 +- Source/Game/Spells/Auras/AuraEffect.cs | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/Source/Game/Entities/Player/SceneMgr.cs b/Source/Game/Entities/Player/SceneMgr.cs index 2a23264a0..16cca28ef 100644 --- a/Source/Game/Entities/Player/SceneMgr.cs +++ b/Source/Game/Entities/Player/SceneMgr.cs @@ -38,7 +38,7 @@ namespace Game.Entities return PlaySceneByTemplate(sceneTemplate, position); } - uint PlaySceneByTemplate(SceneTemplate sceneTemplate, Position position = null) + public uint PlaySceneByTemplate(SceneTemplate sceneTemplate, Position position = null) { if (sceneTemplate == null) return 0; diff --git a/Source/Game/Spells/Auras/AuraEffect.cs b/Source/Game/Spells/Auras/AuraEffect.cs index 6a31628b7..63da79bae 100644 --- a/Source/Game/Spells/Auras/AuraEffect.cs +++ b/Source/Game/Spells/Auras/AuraEffect.cs @@ -5977,15 +5977,14 @@ namespace Game.Spells if (!player) return; - uint sceneId = (uint)GetMiscValue(); + SceneTemplate sceneTemplate = Global.ObjectMgr.GetSceneTemplate((uint)GetMiscValue()); + if (sceneTemplate == null) + return; if (apply) - player.GetSceneMgr().PlayScene(sceneId); + player.GetSceneMgr().PlaySceneByTemplate(sceneTemplate); else - { - SceneTemplate sceneTemplate = Global.ObjectMgr.GetSceneTemplate(sceneId); player.GetSceneMgr().CancelSceneByPackageId(sceneTemplate.ScenePackageId); - } } [AuraEffectHandler(AuraType.AreaTrigger)]