public void GenerateStateName() { string n = string.Format("{0}:{1}", TidalWavesBuff, ManaPool); foreach (SpellState ss in SpellStates.Where(i => i.HasCooldown).OrderBy(i => i.TrackedSpell.SpellId)) { n = string.Format("{0}:{1}", n, ss.IsOnCooldown ? 0 : 1); } this.Name = n; }
internal IEnumerable <SpellState> GetNonPrioritySpellStates() { return(SpellStates.Where(i => !i.HasHot && !i.HasCooldown && i.TrackedSpell is HealingSpell && i.TrackedSpell.ManaCost < ManaPool)); }
internal IOrderedEnumerable <SpellState> GetPrioritySpellStates() { return(SpellStates.Where(i => (i.HasHot || i.HasCooldown) && i.TrackedSpell.ManaCost < ManaPool).OrderBy(i => i.Priority)); }