@piffo

Почему кнопка работает со 2 раза?

private void Update()
{
    if (Input.GetKeyDown(KeyCode.Escape))
    {
        PauseResumeToggle();
    }
}
 
public void PauseResumeToggle()
{
    if (bol)
    {
        Resume();
    }
    else
    {
        Pause();
    }
}
 
void Resume()
{
    for (int i = 0; i < 5; i++)
    {
        but[i].SetActive(false);
    }
    Time.timeScale = 1f;
    bol = false;
    Cursor.lockState = CursorLockMode.Locked;
}
 
void Pause()
{
    for (int i = 0; i < 5; i++)
    {
        but[i].SetActive(true);
    }
    Time.timeScale = 0f;
    bol = true;
    Cursor.lockState = CursorLockMode.None;
}

Метод PauseResumeToggle() работает в двух случаях. При нажатии Esc, и при нажатии ui кнопки. При нажатии Esc всё работает нормально. А нажатие на ui кнопку работает только со 2 раза. В чём проблема и как это можно исправить?
  • Вопрос задан
  • 540 просмотров
Решения вопроса 1
@majstar_Zubr
C++, C#, gamedev
На местах строк "bol = false;" "bol = true;" должно быть "bol = !bol;"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы