aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index b1946870a26..53b3d8cf569 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -8935,8 +8935,10 @@ void Unit::RemoveAllControlled()
sLog.outError("Unit %u is trying to release unit %u which is neither charmed nor owned by it", GetEntry(), target->GetEntry());
}
}
- if(GetPetGUID() != GetMinionGUID())
- sLog.outCrash("Unit %u is not able to release its summon " I64FMT, GetEntry(), GetMinionGUID());
+ if(GetPetGUID())
+ sLog.outCrash("Unit %u is not able to release its pet " I64FMT, GetEntry(), GetPetGUID());
+ if(GetMinionGUID())
+ sLog.outCrash("Unit %u is not able to release its minion " I64FMT, GetEntry(), GetMinionGUID());
if(GetCharmGUID())
sLog.outCrash("Unit %u is not able to release its charm " I64FMT, GetEntry(), GetCharmGUID());
}
@@ -12054,12 +12056,13 @@ void Unit::RemoveFromWorld()
if(IsInWorld())
{
- UnsummonAllTotems();
- RemoveAllControlled();
RemoveCharmAuras();
RemoveBindSightAuras();
RemoveNotOwnSingleTargetAuras();
+
ExitVehicle();
+ UnsummonAllTotems();
+ RemoveAllControlled();
if(m_NotifyListPos >= 0)
{