Unity, когда я нажимаю кнопку, активируется другая (BUG) c# - PullRequest
0 голосов
/ 10 марта 2020

У меня есть две кнопки. один активирует метод, который создает куб, а другой создает фиолетовый блок (см. все в видео). когда я нажимаю одну кнопку, активируется другая кнопка. Кто-нибудь может помочь?

Видео

Вот код:

Кнопка 1 активирует этот метод:

public void AddObsticale(int unit)
{
    Vector3 unitPos = u.Units[unit].transform.position;
    arrow.transform.position =new Vector3(unitPos.x + 4.5f, unitPos.y + 1, unitPos.z - 5f);
    arrow.SetActive(true);
    StartCoroutine(ArrowChoose());
}

IEnumerator ArrowChoose()
{
    yield return new WaitUntil(() => Input.GetKeyDown(KeyCode.Return));
    GameObject g = Instantiate(obsticlePrefab, new Vector3(0, 0.5f, arrow.transform.position.z), Quaternion.identity, gameObject.transform);
    arrow.SetActive(false);
}

Кнопка 2 (которую нельзя активировать) активирует этот метод:

public void AddUnit()
{
    count++;
    GameObject g = Instantiate(unitPrefab, new Vector3(0, 0, (count - 1) * unitSize.z), Quaternion.identity, unitsParent.transform);
    units.Add(g);
    unitText.text = "Units: " + count;
}

1 Ответ

2 голосов
/ 10 марта 2020

Я исправил проблему:

Проблема была в этой строке:

yield return new WaitUntil(() => Input.GetKeyDown(KeyCode.Return));

Клавиша возврата активирует кнопку автоматически из-за единства, как только я изменил ключ на другой, скажем KeyCode.V проблема исчезла!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...