134 {
136
138 "SELECT entry, name FROM character_pet WHERE id = {} AND owner = {}",
140
141 if (!result)
142 {
145 return false;
146 }
147
149 {
150 if (
Pet* activePet = online->GetPet())
151 {
152 if (activePet->GetCharmInfo() &&
153 activePet->GetCharmInfo()->GetPetNumber() == petNumber)
154 {
156 }
157 }
158
159
160
161 if (
PetStable* stable = online->GetPetStable())
162 {
163 if (stable->CurrentPet && stable->CurrentPet->PetNumber == petNumber)
164 stable->CurrentPet.reset();
165
167 if (stabled && stabled->PetNumber == petNumber)
168 stabled.reset();
169
170 stable->UnslottedPets.erase(
171 std::remove_if(stable->UnslottedPets.begin(), stable->UnslottedPets.end(),
173 stable->UnslottedPets.end());
174 }
175 }
176
177 Field* fields = result->Fetch();
179 std::string name = fields[1].
Get<std::string>();
180
181 std::string creatureName = "<unknown>";
183 creatureName = cInfo->Name;
184
186
189 return true;
190 }
std::shared_ptr< ResultSet > QueryResult
Definition DatabaseEnvFwd.h:27
DatabaseWorkerPool< CharacterDatabaseConnection > CharacterDatabase
Accessor to the character database.
Definition DatabaseEnv.cpp:21
std::uint32_t uint32
Definition Define.h:107
@ LANG_PET_DELETE_SUCCESS
Definition Language.h:1490
@ LANG_PET_DELETE_NOT_FOUND
Definition Language.h:1489
std::optional< T > Optional
Optional helper class to wrap optional values within.
Definition Optional.h:24
@ PET_SAVE_AS_DELETED
Definition PetDefines.h:42
void PSendSysMessage(std::string_view str, bool escapeCharacters=false)
Definition Chat.cpp:219
Class used to access individual fields of database query result.
Definition Field.h:98
std::enable_if_t< std::is_arithmetic_v< T >, T > Get() const
Definition Field.h:112
Definition ObjectGuid.h:118
LowType GetCounter() const
Definition ObjectGuid.h:145
Definition PetDefines.h:212
void DeleteFromDB() override
Definition Pet.h:171
ObjectGuid GetGUID() const
Definition ChatCommandTags.h:181
std::string const & GetName() const
Definition ChatCommandTags.h:180
Player * GetConnectedPlayer() const
Definition ChatCommandTags.h:183
Definition PetDefines.h:215