private List <Mobile> GetTargets() { List <Mobile> targets = new List <Mobile>(); WildfireSpell.DefragTable(); IPooledEnumerable eable = m_Map.GetMobilesInRange(m_Location, m_Range); foreach (Mobile m in eable) { if (WildfireSpell.Table.ContainsKey(m)) { continue; } if (m != m_Owner && SpellHelper.ValidIndirectTarget(m_Owner, m) && m_Owner.CanBeHarmful(m, false) && m_Owner.InLOS(m)) { targets.Add(m); } } eable.Free(); return(targets); }
private IEnumerable <Mobile> GetTargets() { WildfireSpell.DefragTable(); return(m_Spell.AcquireIndirectTargets(m_Location, m_Range).OfType <Mobile>()); }
private IEnumerable <Mobile> GetTargets() { WildfireSpell.DefragTable(); return(m_Spell.AcquireIndirectTargets(m_Location, m_Range).OfType <Mobile>().Where(m => !m_Table.ContainsKey(m))); }