Example #1
0
    void Update()
    {
        m_lineRenderer.SetPosition(0, transform.position);

        Vector3    direction = transform.rotation * Vector3.forward;
        RaycastHit hit;

        if (Physics.Raycast(transform.position, direction, out hit, 100, m_hitLayerMask))
        {
            m_lineRenderer.SetPosition(1, hit.point);

            GameObject      hitObject  = hit.collider.gameObject;
            LaserSelectable selectable = hitObject.GetComponent <LaserSelectable>();
            if (selectable != null)
            {
                // selectable.sethi
                if (Input.GetMouseButtonDown(0))
                {
                    Explodable explodable = hitObject.GetComponent <Explodable>();
                    if (explodable != null)
                    {
                        m_catHead.Attack(explodable);
                    }
                }
            }
        }
        else
        {
            m_lineRenderer.SetPosition(1, direction * 100);
        }
    }
Example #2
0
    void TrySetHighlighted(GameObject hitObject, bool highlighted)
    {
        LaserSelectable selectable = hitObject.GetComponent <LaserSelectable>();

        if (selectable != null)
        {
            selectable.highlighted = highlighted;
            m_explodable           = selectable.GetComponent <Explodable>();
        }
        else
        {
            m_explodable = null;
        }
    }