public override void Highlight(IModdable component) { _component = component; IEnumerable <AreaModBroadcaster> broadcasters = StructureManager.GetStructures().Select(x => x.GetComponentInChildren <AreaModBroadcaster>()).Where(x => x != null); foreach (AreaModBroadcaster broadcaster in broadcasters) { bool show = OnlyShowWithinRange ? IsWithinRange(broadcaster) : true; if (broadcaster.Mod.CanMod(component) && show) { RangerHighlighter rh = Instantiate(RangerPrefab, broadcaster.transform.position, Quaternion.identity, transform).GetComponent <RangerHighlighter>(); StructureHighlighter sh = Instantiate(StructurePrefab, broadcaster.transform.position, Quaternion.identity, transform).GetComponent <StructureHighlighter>(); LocalHighlighter highlighter = new LocalHighlighter(rh, sh); highlighter.Highlight(broadcaster); _localHighlighters.Add(broadcaster, highlighter); } } }
public LocalHighlighter(RangerHighlighter range, StructureHighlighter structure) { Range = range; Structure = structure; }