diff --git a/src/server/game/Entities/Creature/SummonInfo/SummonInfo.cpp b/src/server/game/Entities/Creature/SummonInfo/SummonInfo.cpp index 693ff77aa8..38015a3379 100644 --- a/src/server/game/Entities/Creature/SummonInfo/SummonInfo.cpp +++ b/src/server/game/Entities/Creature/SummonInfo/SummonInfo.cpp @@ -68,13 +68,6 @@ void SummonInfo::InitializeSummonProperties(uint32 summonPropertiesId, Unit cons // Controlled summons inherit their summoner's faction if not overridden by DBC data if (!_factionId.has_value()) _factionId = summoner->GetFaction(); - - // The summon is going to be treated as a pet. Prepare spell list. - if (_control == SummonPropertiesControl::Pet) - { - if (CharmInfo* charmInfo = _summonedCreature->InitCharmInfo()) - charmInfo->InitCharmCreateSpells(); - } } } } @@ -116,6 +109,13 @@ Optional SummonInfo::GetCreatureLevel() const void SummonInfo::HandlePreSummonActions() { + // The summon is going to be treated as a pet. Prepare spell list. + if (_control == SummonPropertiesControl::Pet) + { + if (CharmInfo* charmInfo = _summonedCreature->InitCharmInfo()) + charmInfo->InitCharmCreateSpells(); + } + if (Unit* summoner = GetUnitSummoner()) { SummonPropertiesSlot slot = GetSummonSlot();