public Composite CreateDruidBuffComposite() { return(new PrioritySelector( CreateSpellCast( "Mark of the Wild", ret => NearbyFriendlyPlayers.Any(u => !u.Dead && !u.IsGhost && u.IsInMyPartyOrRaid && CanCastMotWOn(u)), ret => Me) // TODO: Have it buff MotW when nearby party/raid members are missing the buff. )); }
public Composite CreatePriestPreCombatBuffs() { return new PrioritySelector( CreateSpellBuffOnSelf("Power Word: Fortitude", ret => NearbyFriendlyPlayers.Any(u => !u.Dead && !u.IsGhost && (u.IsInMyPartyOrRaid || u.IsMe) && CanCastFortitudeOn(u))), CreateSpellBuffOnSelf("Shadow Protection", ret => SingularSettings.Instance.Priest.UseShadowProtection && NearbyFriendlyPlayers.Any(u => !u.Dead && !u.IsGhost && (u.IsInMyPartyOrRaid || u.IsMe) && !HasAuraStacks("Shadow Protection", 0))), CreateSpellBuffOnSelf("Inner Fire", ret => SingularSettings.Instance.Priest.UseInnerFire), CreateSpellBuffOnSelf("Inner Will", ret => !SingularSettings.Instance.Priest.UseInnerFire), CreateSpellBuffOnSelf("Fear Ward", ret => SingularSettings.Instance.Priest.UseFearWard), CreateSpellBuffOnSelf("Shadowform"), CreateSpellBuffOnSelf("Vampiric Embrace") ); }