From 99930224186e8f1336ffc1a020db6bb3519b68b8 Mon Sep 17 00:00:00 2001 From: Chris Miles Date: Thu, 25 May 2023 10:33:34 -0500 Subject: [PATCH] [Pets] Fix saving inconsistencies with pets (#3375) --- zone/zonedb.cpp | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/zone/zonedb.cpp b/zone/zonedb.cpp index 412593b43..62916382c 100755 --- a/zone/zonedb.cpp +++ b/zone/zonedb.cpp @@ -3345,30 +3345,27 @@ void ZoneDatabase::SavePetInfo(Client *client) } } + // Delete existing pet info + CharacterPetInfoRepository::DeleteWhere(database, fmt::format("char_id = {}", client->CharacterID())); + // insert pet info into database if (!pet_infos.empty()) { - // Delete existing pet info - CharacterPetInfoRepository::DeleteWhere(database, fmt::format("char_id = {}", client->CharacterID())); - - // Insert new pet info CharacterPetInfoRepository::InsertMany(database, pet_infos); } + // Delete existing pet buffs + CharacterPetBuffsRepository::DeleteWhere(database, fmt::format("char_id = {}", client->CharacterID())); + // insert pet buffs into database if (!pet_buffs.empty()) { - // Delete existing pet buffs - CharacterPetBuffsRepository::DeleteWhere(database, fmt::format("char_id = {}", client->CharacterID())); - - // Insert new pet buffs CharacterPetBuffsRepository::InsertMany(database, pet_buffs); } + // Delete existing pet inventory + CharacterPetInventoryRepository::DeleteWhere(database, fmt::format("char_id = {}", client->CharacterID())); + // insert pet inventory into database if (!inventory.empty()) { - // Delete existing pet inventory - CharacterPetInventoryRepository::DeleteWhere(database, fmt::format("char_id = {}", client->CharacterID())); - - // Insert new pet inventory CharacterPetInventoryRepository::InsertMany(database, inventory); } }