diff options
author | Naios <naios-dev@live.de> | 2016-07-02 18:38:24 +0200 |
---|---|---|
committer | Naios <naios-dev@live.de> | 2016-07-05 00:19:38 +0200 |
commit | 1a891f3a5edf173adcd304aa4bfc6828b63fb507 (patch) | |
tree | 13e2116e5c20e27930bb39b476b1233178f2ba1d /src | |
parent | c0df97276815f6bdf10b3df938e242bec13d2a8b (diff) |
Core/Scripting: Don't force event cancellation when swapping creatures.
* EventProcessor::KillAllEvents(force = false) should only be used
by the EventProcessor.
(cherry picked from commit d68316fcd2fc71343edfbd387249b75bd6e8a90f)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp index 5d3297b009d..476b87f2440 100644 --- a/src/server/game/Scripting/ScriptMgr.cpp +++ b/src/server/game/Scripting/ScriptMgr.cpp @@ -368,7 +368,9 @@ class CreatureGameObjectScriptRegistrySwapHooks // Hook which is called before a creature is swapped static void UnloadStage1(Creature* creature) { - creature->m_Events.KillAllEvents(true); + // Remove deletable events only, + // otherwise it causes crashes with non-deletable spell events. + creature->m_Events.KillAllEvents(false); if (creature->IsCharmed()) creature->RemoveCharmedBy(nullptr); |