diff options
author | Shauren <shauren.trinity@gmail.com> | 2020-08-20 18:44:36 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-01-31 00:20:53 +0100 |
commit | 914791836318c62d8b206ef3cbffe144e63bf928 (patch) | |
tree | 336aba0edc93c51b3ac2bbfb6400e19c4ea6729e /src | |
parent | 4de94169e958fed60cc0c59376c8bd6583ca7daf (diff) |
Core/Pets: Fixed automatic resurrecting pets on battleground graveyards
Closes #25289
(cherry picked from commit 74a0d579eef07c013cc8deff930a975cf19c487f)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Pet/Pet.cpp | 2 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_generic.cpp | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Entities/Pet/Pet.cpp b/src/server/game/Entities/Pet/Pet.cpp index b9d6f0fcda7..74c86e4c7ca 100644 --- a/src/server/game/Entities/Pet/Pet.cpp +++ b/src/server/game/Entities/Pet/Pet.cpp @@ -114,7 +114,7 @@ std::pair<PetStable::PetInfo const*, PetSaveMode> Pet::GetLoadPetInfo(PetStable return { &stable.StabledPets[stableSlot].value(), PetSaveMode(PET_SAVE_FIRST_STABLE_SLOT + stableSlot) }; for (PetStable::PetInfo const& pet : stable.UnslottedPets) - if (pet.CreatureId == petEntry) + if (pet.PetNumber == petnumber) return { &pet, PET_SAVE_NOT_IN_SLOT }; } else if (current) diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 5ebaaae0049..615b22b966a 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -2612,8 +2612,8 @@ class spell_gen_pet_summoned : public SpellScript if (newPet->LoadPetFromDB(player, 0, player->GetLastPetNumber(), true)) { // revive the pet if it is dead - if (newPet->getDeathState() == DEAD) - newPet->setDeathState(ALIVE); + if (newPet->getDeathState() != ALIVE && newPet->getDeathState() != JUST_RESPAWNED) + newPet->setDeathState(JUST_RESPAWNED); newPet->SetFullHealth(); newPet->SetFullPower(newPet->GetPowerType()); |