示例#1
0
    public IEnumerable <GameObject> ContainedItems()
    {
        // Hacky fix because Physics.OverlapSphere does stupid things
        foreach (var obj in HighlightData.GetAll())
        {
            var renderer = obj.GetComponent <Renderer>();
            if (renderer == null)
            {
                continue;
            }

            if (this.Contains(renderer.bounds.center))
            {
                yield return(obj);
            }
        }
    }
示例#2
0
    public void Highlight(List <string> query)
    {
        // Hacky fix because Physics.OverlapSphere does stupid things
        foreach (var obj in HighlightData.GetAll(query))
        {
            var renderer = obj.GetComponent <Renderer>();
            if (renderer == null)
            {
                continue;
            }

            if (!this.Contains(renderer.bounds.center))
            {
                continue;
            }

            var size      = renderer.bounds.extents.Average() * 1.5f;
            var highlight = Instantiate(HighlightPrefab, renderer.bounds.center, Quaternion.identity);
            highlight.transform.localScale = new Vector3(size, size, size);
            highlight.name = obj.name + " highlight";
        }
    }