diff --git a/Source/Game/Entities/Creature/Creature.cs b/Source/Game/Entities/Creature/Creature.cs index ac0b43bcf..6175b17df 100644 --- a/Source/Game/Entities/Creature/Creature.cs +++ b/Source/Game/Entities/Creature/Creature.cs @@ -1698,7 +1698,7 @@ namespace Game.Entities ForcedDespawn(msTimeToDespawn, forceRespawnTimer); } - void LoadMechanicTemplateImmunity() + public void LoadMechanicTemplateImmunity() { // uint32 max used for "spell id", the immunity system will not perform SpellInfo checks against invalid spells // used so we know which immunities were loaded from template diff --git a/Source/Game/Entities/Pet.cs b/Source/Game/Entities/Pet.cs index 89a129603..6df39e195 100644 --- a/Source/Game/Entities/Pet.cs +++ b/Source/Game/Entities/Pet.cs @@ -356,6 +356,8 @@ namespace Game.Entities if (owner.IsTypeId(TypeId.Player) && IsControlled() && !IsTemporarySummoned() && (GetPetType() == PetType.Summon || GetPetType() == PetType.Hunter)) owner.ToPlayer().SetLastPetNumber(petId); + // must be after SetMinion (owner guid check) + LoadMechanicTemplateImmunity(); m_loading = false; return true;