diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index 3a1e689619a..36fb7f4f3be 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -3080,7 +3080,11 @@ void Creature::ReleaseSpellFocus(Spell const* focusSpell, bool withDelay) void Creature::ReacquireSpellFocusTarget() { - ASSERT(HasSpellFocus()); + if (!HasSpellFocus()) + { + TC_LOG_ERROR("entities.unit", "Creature::ReacquireSpellFocusTarget() being alled with HasSpellFocus() return false."); + return; + } SetGuidValue(UNIT_FIELD_TARGET, _spellFocusInfo.target); diff --git a/src/server/game/Handlers/PetHandler.cpp b/src/server/game/Handlers/PetHandler.cpp index 4bc56b35e1c..cfeb3ba2991 100644 --- a/src/server/game/Handlers/PetHandler.cpp +++ b/src/server/game/Handlers/PetHandler.cpp @@ -261,17 +261,12 @@ void WorldSession::HandlePetActionHelper(Unit* pet, ObjectGuid guid1, uint32 spe if (pet->IsPet()) { if (((Pet*)pet)->IsHunterPet()) - { GetPlayer()->RemovePet((Pet*)pet, PET_SAVE_AS_DELETED); - } else - //dismissing a summoned pet is like killing them (this prevents returning a soulshard...) - pet->setDeathState(CORPSE); + GetPlayer()->RemovePet((Pet*)pet, PET_SAVE_DISMISS); } else if (pet->HasUnitTypeMask(UNIT_MASK_MINION)) - { ((Minion*)pet)->UnSummon(); - } } break; case COMMAND_MOVE_TO: