From 86084560e0b2b2d1db2fe41b293a1b50d17f7e22 Mon Sep 17 00:00:00 2001 From: UltraNix <80540499+UltraNix@users.noreply.github.com> Date: Fri, 8 Oct 2021 16:57:14 +0200 Subject: [PATCH] feat(Core/Eluna): Added new OnPetAddedToWorld() hook for Eluna. (#8084) --- src/server/game/Entities/Creature/Creature.cpp | 3 +++ src/server/game/Entities/Pet/Pet.cpp | 9 +++++++++ 2 files changed, 12 insertions(+) diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index d8e85547a..8b61c70e6 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -239,6 +239,9 @@ void Creature::AddToWorld() GetVehicleKit()->Install(); #ifdef ELUNA sEluna->OnAddToWorld(this); + + if (IsGuardian() && ToTempSummon() && ToTempSummon()->GetSummonerGUID().IsPlayer()) + sEluna->OnPetAddedToWorld(ToTempSummon()->GetSummonerUnit()->ToPlayer(), this); #endif } } diff --git a/src/server/game/Entities/Pet/Pet.cpp b/src/server/game/Entities/Pet/Pet.cpp index 8d1bcb5e8..2afc056ec 100644 --- a/src/server/game/Entities/Pet/Pet.cpp +++ b/src/server/game/Entities/Pet/Pet.cpp @@ -35,6 +35,10 @@ #include "WorldPacket.h" #include "WorldSession.h" +#ifdef ELUNA +#include "LuaEngine.h" +#endif + Pet::Pet(Player* owner, PetType type) : Guardian(nullptr, owner ? owner->GetGUID() : ObjectGuid::Empty, true), m_usedTalentCount(0), m_removed(false), m_owner(owner), m_happinessTimer(PET_LOSE_HAPPINES_INTERVAL), m_petType(type), m_duration(0), @@ -93,6 +97,11 @@ void Pet::AddToWorld() GetCharmInfo()->SetIsFollowing(false); GetCharmInfo()->SetIsReturning(false); } + +#ifdef ELUNA + if (GetOwnerGUID().IsPlayer()) + sEluna->OnPetAddedToWorld(GetOwner(), this); +#endif } void Pet::RemoveFromWorld()