Example #1
0
    void LateUpdate()
    {
        Vector3    direction = new Vector3(cameraPosition.x, cameraPosition.y, -distance);
        Quaternion rotation  = Quaternion.Euler(radius.y, radius.x, 0.0f);

        transform.position = rotation * direction + target.transform.position;
        transform.rotation = rotation;


        if (Physics.Linecast(target.transform.position + new Vector3(0, 1.2f, 0), transform.position, out cameraHit) && cameraHit.collider.isTrigger == false)
        {
            transform.position = cameraHit.point;
        }


        if (Physics.Raycast(transform.position, transform.forward, out objectHit, distance + range))
        {
            this.objectCollider = (objectHit.collider.gameObject).GetComponent <TakingObject>();

            if (objectCollider != null)
            {
                this.objectCollider.GetComponent <Renderer>().material.color = Color.red; /// TODO (by RhAnjiE) - "Change selection type"
                textPosition = GetComponent <Camera>().WorldToScreenPoint(objectHit.transform.position);

                if (Input.GetKeyDown(KeyCode.E))
                {
                    (this.objectCollider).Activate();

                    //...
                }

                return;
            }
        }
    }
Example #2
0
    //bool isRadius = false;

    void Update()
    {
        radius.x += Input.GetAxis("Mouse X") * speedX;
        radius.y -= Input.GetAxis("Mouse Y") * speedY;
        distance -= Input.GetAxis("Mouse ScrollWheel") * scrollSpeed;

        distance = Mathf.Clamp(distance, minDistance, maxDistance);
        radius.y = Mathf.Clamp(radius.y, -10.0f, 40.0f);


        if (this.objectCollider != null)
        {
            (this.objectCollider.GetComponent <Renderer>()).material.color = this.objectCollider.materialColor;



            this.objectCollider = null;
        }
    }