/// <summary> /// Returns a list of all SpellLines that are affected by the given spell family set (very long bit field) /// </summary> public static HashSet <SpellLine> GetAffectedSpellLines(ClassId clss, uint[] mask) { var lines = SpellLines.GetLines(clss); var affected = new HashSet <SpellLine>(); if (lines != null) { foreach (var line in lines) { foreach (var spell in line) { if (spell.MatchesMask(mask)) { affected.Add(line); break; } } } //foreach (var spell in ById) //{ // if (spell != null && spell.ClassId == clss && spell.MatchesMask(mask)) // { // if (spell.Line != null) // { // affected.Add(line); // } // break; // } //} } return(affected); }