diff options
Diffstat (limited to 'src/game/Player.cpp')
-rw-r--r-- | src/game/Player.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/game/Player.cpp b/src/game/Player.cpp index 4f931a24aad..117def75164 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -1835,6 +1835,7 @@ void Player::RemoveFromWorld() ///- Release charmed creatures, unsummon totems and remove pets/guardians StopCastingCharm(); StopCastingBindSight(); + UnsummonPetTemporaryIfAny(); sOutdoorPvPMgr.HandlePlayerLeaveZone(this, m_zoneUpdateId); } @@ -16695,6 +16696,9 @@ void Player::RemovePet(Pet* pet, PetSaveMode mode, bool returnreagent) if(pet) sLog.outDebug("RemovePet %u, %u, %u", pet->GetEntry(), mode, returnreagent); + if(pet->m_removed) + return; + if(returnreagent && (pet || m_temporaryUnsummonedPetNumber)) { //returning of reagents only for players, so best done here |