Core/Spells: Implemented SPELL_ATTR9_CHANNEL_PERSISTS_ON_PET_FOLLOW
Port From (https://github.com/TrinityCore/TrinityCore/commit/fd329ee8483da81585db484c005a6fe22448bc63)
This commit is contained in:
@@ -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
|
||||
{
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user