Пример #1
0
        private Composite CreateCombatBuffBehavior()
        {
            return(new Decorator(
                       ret => Me.Combat && !CastManager.IsHymning(),
                       new PrioritySelector(
                           AltarboyComposites.BuffSelf("Inner Fire", ret => (AltarboySettings.Instance.UseInnerFire)),
                           AltarboyComposites.BuffSelf("Inner Will", ret => (AltarboySettings.Instance.UseInnerWill)),

                           ////Is there something I should dispell from my self?
                           // new Decorator(
                           //     ret => (Me.Debuffs).Any(aura => AltarboyHashes.TargetHasAuraType(aura.Value.SpellId, AltarboyHashes.AuraTypes.DispelAsap)),
                           //     new Decorator(ret => CastManager.CanCast("Dipel Magic", Me),
                           //         new TreeSharp.Action(delegate
                           //         {
                           //             CastManager.CastSpell("Dipel Magic", Me);
                           //         })
                           //     )
                           // ),

                           //Do I need to fade? If something is aggroing me and within a specific range.
                           AltarboyComposites.BuffSelf("Fade", ret => (Me.IsInParty || Me.IsInMyRaid) && AltarboySettings.Instance.EnableFadeOnAggro &&
                                                       TargetManager.DetectHostileTargets(10).Any(Unit => TargetManager.IsTargetingMeOrMyStuff(Unit))
                                                       ),

                           AltarboyComposites.CommonPriestBuffs()

                           )));
        }
Пример #2
0
        public static Boolean ShouldApplyDevouringPlague()
        {
            if (TargetManager.ActiveTarget.IsMechanical && TargetManager.ActiveTarget.Level <= Me.Level)
            {
                return(false);
            }

            return(!TargetManager.DetectHostileTargets(200).Any(target => AuraManager.GetAuraTimeLeft("Devouring Plague", target, true).TotalSeconds >= 1.2));
        }