Core/Spells: Implemented SPELL_ATTR9_CHANNEL_PERSISTS_ON_PET_FOLLOW

Port From (https://github.com/TrinityCore/TrinityCore/commit/fd329ee8483da81585db484c005a6fe22448bc63)
This commit is contained in:
Hondacrx
2024-08-31 17:46:25 -04:00
parent fa10c00734
commit 3151a0455d
2 changed files with 5 additions and 2 deletions
@@ -1997,7 +1997,7 @@ namespace Framework.Constants
CannotKillTarget = 0x10000000, // Cannot Kill Target
LogPassive = 0x20000000, // Allows passive auras to trigger aura applied/refreshed/removed combat log events
NoMovementRadiusBonus = 0x40000000, // No Movement Radius Bonus
Unk31 = 0x80000000 // 31
ChannelPersistsOnPetFollow = 0x80000000 // Channel Persists on Pet Follow
}
public enum SpellAttr10 : uint
{
+4 -1
View File
@@ -142,7 +142,10 @@ namespace Game
break;
case CommandStates.Follow: // spellid = 1792 //FOLLOW
pet.AttackStop();
pet.InterruptNonMeleeSpells(false);
pet.InterruptSpell(CurrentSpellTypes.Generic, false, false);
Spell channeledSpell = pet.GetCurrentSpell(CurrentSpellTypes.Channeled);
if (channeledSpell != null && !channeledSpell.GetSpellInfo().HasAttribute(SpellAttr9.ChannelPersistsOnPetFollow))
pet.InterruptSpell(CurrentSpellTypes.Channeled, true, true);
pet.GetMotionMaster().MoveFollow(GetPlayer(), SharedConst.PetFollowDist, pet.GetFollowAngle());
charmInfo.SetCommandState(CommandStates.Follow);