From 38782deed0e62f8348d32930d2b12dc1a0c1edd0 Mon Sep 17 00:00:00 2001 From: elecyb Date: Tue, 12 Jan 2016 02:04:33 -0300 Subject: [PATCH] Core/Entities: Show destroy animation for creatures and totems. Now all pets and totems will have their proper die/destroy animation when killed. Ported from MaNGOS. --- src/server/game/Entities/Object/Object.cpp | 9 ++++++++- src/server/game/Entities/Totem/Totem.cpp | 4 ++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 253fed76fa..615202f2ba 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -2426,7 +2426,14 @@ void WorldObject::DestroyForNearbyPlayers() if (isType(TYPEMASK_UNIT) && ToUnit()->GetCharmerGUID() == player->GetGUID()) /// @todo this is for puppet continue; - DestroyForPlayer(player); + if (GetTypeId() == TYPEID_UNIT) + { + // at remove from world (destroy) show kill animation + DestroyForPlayer(player, ToUnit()->IsDuringRemoveFromWorld() && ToCreature()->isDead()); + } + else + DestroyForPlayer(player); + player->m_clientGUIDs.erase(GetGUID()); } } diff --git a/src/server/game/Entities/Totem/Totem.cpp b/src/server/game/Entities/Totem/Totem.cpp index 169c0e422b..5e8544246a 100644 --- a/src/server/game/Entities/Totem/Totem.cpp +++ b/src/server/game/Entities/Totem/Totem.cpp @@ -142,6 +142,10 @@ void Totem::UnSummon(uint32 msTime) } } + // any totem unsummon look like as totem kill, req. for proper animation + if (IsAlive()) + setDeathState(DEAD); + AddObjectToRemoveList(); }