Ejemplo n.º 1
0
    void OnTriggerEnter(Collider other)
    {
        if (other.tag == "Label_zone")
        {
            label_pointe_RT.localScale = Vector3.one;
            isVisible = true;


            Label_zone zone_script = other.transform.parent.GetComponent <Label_zone>();
            zone_script.labels.Add(gameObject);
        }
    }
Ejemplo n.º 2
0
    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            Ray        ray = mainCam.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            if (Physics.Raycast(ray, out hit, 5000.0f, layerMask))
            {
                if (hit.transform.tag != "Objet")
                {
                    index++;

                    GameObject labelZone = Instantiate(labelZone_prefab);
                    labelZone.name = "LabelZone_" + index.ToString();
                    labelZone.transform.SetParent(gameObject.transform);
                    labelZones.Add(labelZone);
                    labelZone.transform.position = new Vector3(hit.point.x, 60, hit.point.z);

                    int mat_index = Random.Range(0, zoneMaterial.Length);
                    labelZone.GetComponentInChildren <Projector>().material = zoneMaterial[mat_index];
                }
            }
        }


        if (Input.GetMouseButton(0))
        {
            Projector labelZone_projector = labelZones[index].GetComponentInChildren <Projector>();
            labelZone_projector.orthographicSize += (expansionSpeed);

            Transform labelZone_collider = labelZones[index].transform.GetChild(1);
            Vector3   scale = new Vector3(labelZone_projector.orthographicSize * 1.76f, 3.3f, labelZone_projector.orthographicSize * 1.76f);
            labelZone_collider.localScale = scale;
        }


        if (Input.GetMouseButtonUp(0))
        {
            Label_zone zone_script = labelZones[index].GetComponent <Label_zone>();
            zone_script.SetDisplay();
        }


        if (Input.GetMouseButtonDown(1))
        {
            Ray        ray = mainCam.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            if (Physics.Raycast(ray, out hit, 5000.0f))
            {
                if (hit.transform.tag == "Label_zone")
                {
                    string label_name = hit.transform.parent.name;

                    for (var i = 0; i < labelZones.Count; i++)
                    {
                        if (labelZones[i].name == label_name)
                        {
                            index--;
                            Destroy(labelZones[i]);
                            labelZones.Remove(labelZones[i]);
                        }
                    }
                }
            }
        }
    }