diff options
| author | Shauren <shauren.trinity@gmail.com> | 2022-01-31 23:30:00 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2022-01-31 23:30:00 +0100 |
| commit | fd9eb28322fd75e94fcf5093aaf54bee145edfe8 (patch) | |
| tree | 73e21d165594de91f086bbc3a44a19ab55adf34f /src/server/game | |
| parent | 22e823b5f9693e461ee158913c1caf3484eeb039 (diff) | |
Core/Pets: Adjust pet slot saving logic after constant changes in 22e823b5f9693e461ee158913c1caf3484eeb039
Diffstat (limited to 'src/server/game')
| -rw-r--r-- | src/server/game/Entities/Pet/Pet.cpp | 6 | ||||
| -rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/server/game/Entities/Pet/Pet.cpp b/src/server/game/Entities/Pet/Pet.cpp index aba5a14ad77..8a2ffc81a07 100644 --- a/src/server/game/Entities/Pet/Pet.cpp +++ b/src/server/game/Entities/Pet/Pet.cpp @@ -511,12 +511,12 @@ void Pet::SavePetToDB(PetSaveMode mode) trans->Append(stmt); // prevent existence another hunter pet in PET_SAVE_AS_CURRENT and PET_SAVE_NOT_IN_SLOT - if (getPetType() == HUNTER_PET && (mode == PET_SAVE_AS_CURRENT || mode > PET_SAVE_LAST_STABLE_SLOT)) + if (getPetType() == HUNTER_PET && (mode == PET_SAVE_AS_CURRENT || mode == PET_SAVE_NOT_IN_SLOT)) { stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_CHAR_PET_BY_SLOT); stmt->setUInt64(0, ownerLowGUID); - stmt->setUInt8(1, uint8(PET_SAVE_AS_CURRENT)); - stmt->setUInt8(2, uint8(PET_SAVE_LAST_STABLE_SLOT)); + stmt->setInt16(1, mode); + stmt->setInt16(2, PET_SAVE_NOT_IN_SLOT); trans->Append(stmt); } diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index f109e03b738..e26ecd7528d 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -21959,7 +21959,7 @@ void Player::RemovePet(Pet* pet, PetSaveMode mode, bool returnreagent) { // Handle removing pet while it is in "temporarily unsummoned" state, for example on mount CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_UPD_CHAR_PET_SLOT_BY_ID); - stmt->setUInt8(0, PET_SAVE_NOT_IN_SLOT); + stmt->setInt16(0, PET_SAVE_NOT_IN_SLOT); stmt->setUInt64(1, GetGUID().GetCounter()); stmt->setUInt32(2, m_petStable->CurrentPet->PetNumber); CharacterDatabase.Execute(stmt); @@ -28309,7 +28309,7 @@ void Player::_LoadPetStable(PreparedQueryResult result) petInfo.Level = fields[3].GetUInt16(); petInfo.Experience = fields[4].GetUInt32(); petInfo.ReactState = ReactStates(fields[5].GetUInt8()); - PetSaveMode slot = PetSaveMode(fields[6].GetUInt8()); + PetSaveMode slot = PetSaveMode(fields[6].GetInt16()); petInfo.Name = fields[7].GetString(); petInfo.WasRenamed = fields[8].GetBool(); petInfo.Health = fields[9].GetUInt32(); |
