void HandlePetAbandon(PetAbandon packet) { if (!GetPlayer().IsInWorld) { return; } // pet/charmed Creature pet = ObjectAccessor.GetCreatureOrPetOrVehicle(GetPlayer(), packet.Pet); if (pet && pet.ToPet() && pet.ToPet().getPetType() == PetType.Hunter) { _player.RemovePet((Pet)pet, PetSaveMode.AsDeleted); } }
void HandlePetAbandon(PetAbandon packet) { if (!GetPlayer().IsInWorld) { return; } Creature pet = ObjectAccessor.GetCreatureOrPetOrVehicle(GetPlayer(), packet.Pet); if (pet) { if (pet.IsPet()) { GetPlayer().RemovePet(pet.ToPet(), PetSaveMode.AsDeleted); } else if (pet.GetGUID() == GetPlayer().GetCharmGUID()) { GetPlayer().StopCastingCharm(); } } }