OpenRA.Traits.Shroud.Explore C# (CSharp) Method

Explore() public method

public Explore ( Shroud s ) : void
s Shroud
return void
        public void Explore(Shroud s)
        {
            if (map.Bounds != s.map.Bounds)
                throw new ArgumentException("The map bounds of these shrouds do not match.", "s");

            var changed = new List<PPos>();
            foreach (var puv in map.ProjectedCellBounds)
            {
                var uv = (MPos)puv;
                if (!explored[uv] && s.explored[uv])
                {
                    explored[uv] = true;
                    changed.Add(puv);
                }
            }

            Invalidate(changed);
        }