コード例 #1
0
        /// <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);
        }