Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Unity_в_действии_Джозеф_Хокинг_Рус.pdf
Скачиваний:
83
Добавлен:
21.06.2022
Размер:
26.33 Mб
Скачать

10.3. Интерфейс управления звуком      255

нового элемента и перетащите на ячейку для объекта объект Settings Popup. В меню функций найдите сценарий SettingsPopup и выберите в разделе Dynamic Float вариант

OnSoundVolume().

ВНИМАНИЕ  Помните, что нам нужна функция из раздела Dynamic Float, а не Static Parameter! Указанный метод присутствует в обоих разделах, но в последнем случае он сможет получить только одно заранее введенное значение.

Теперь элементы управления работают, но в проект нужно внести небольшие коррективы. Дело в том, что сейчас всплывающее окно все время закрывает экран. Давайте сделаем так, чтобы оно открывалось только при нажатии клавиши M. Создайте новый сценарий UIController, свяжите его с контроллером в сцене и введите код следующего листинга.

Листинг 10.6. Сценарий UIController, вызывающий и скрывающий всплывающее окно

using UnityEngine;

using System.Collections;

public class UIController : MonoBehaviour {

[SerializeField] private SettingsPopup popup; ¬ Ссылки на всплывающее окно в сцене.

void Start() {

popup.gameObject.SetActive(false); ¬ Инициализируем всплывающее окно в скрытом состоянии.

}

void Update() {

if (Input.GetKeyDown(KeyCode.M)) { ¬ Вызываем и скрываем всплывающее окно при помощи клавиши M. bool isShowing = popup.gameObject.activeSelf; popup.gameObject.SetActive(!isShowing);

if (isShowing) {

 

 

Cursor.lockState = CursorLockMode.Locked; │

 

Cursor.visible = false;

Вместе со всплывающим окном

} else {

Cursor.lockState = CursorLockMode.None;

вызываем курсор.

Cursor.visible = true;

 

 

 

}

}

}

}

Для подключения этой ссылки на объект перетащите всплывающее окно настроек на ячейку сценария. Теперь запустите игру и попытайтесь подвигать ползунок (напоминаю, что UI активируется нажатием клавиши M), стреляя по сторонам, чтобы слышать звуковые эффекты; вы убедитесь, что их громкость меняется в соответствии с положением ползунка.

10.3.3. Воспроизведение звуков UI

Внесем еще одно дополнение в сценарий AudioManager, добавив к щелчкам на кнопках UI звуковое сопровождение. Эта задача сложнее, чем кажется на первый взгляд.