показать gameobject после клика gameobject - PullRequest
0 голосов
/ 21 февраля 2020

Я занимаюсь разработкой android Игры с единым целым. У меня есть проблема, у меня есть куб 1, куб 2 и куб 3, а также у меня есть кнопка 1, кнопка 2, кнопка 3, которую я хочу, когда я нажимаю кнопку куб 1, показывает 1 когда я нажимаю кнопку 2 куба 2 показать кнопку 1 скрыть когда я нажимаю кнопку куб 3 3 показать кнопку 2 скрыть то, что я могу сделать

private void Update()
{

    if (Input.GetMouseButtonDown(0))
    {

    }
    RaycastHit hit;
        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);

        if (Physics.Raycast(ray, out hit, 100.0f))
        {
            if (hit.transform != null)
            {

                PrintName(hit.transform.gameObject);

        }


    }
}

private void PrintName(GameObject go)
{

    print(go.name);

}

этот код только печатает название игрового объекта, я пытался изменить его, не работает

1 Ответ

1 голос
/ 22 февраля 2020

Например, что вы можете сделать:


public Button button1, button2, button3;

private void PrintName(GameObject cube) {
    Debug.Log(cube.name);
    if(cube.name.Equals("cube1") {
        button1.gameObject.SetActive(true);
        button2.gameObject.SetActive(false);
        button3.gameObject.SetActive(false);
    }
    if(cube.name.Equals("cube2") {
        button1.gameObject.SetActive(false);
        button2.gameObject.SetActive(true);
        button3.gameObject.SetActive(false);
    }
    if(cube.name.Equals("cube3") {
        button1.gameObject.SetActive(false);
        button2.gameObject.SetActive(false);
        button3.gameObject.SetActive(true);
    }
}

Для этого вам нужны все кнопки в качестве атрибутов. Кнопки будут просто кнопками пользовательского интерфейса по умолчанию для единицы.

...