21 lines
No EOL
1.4 KiB
C#
21 lines
No EOL
1.4 KiB
C#
using UnityEngine; // Подключение движка [Базовый API Unity].
|
||
|
||
// --- Взаимодействие с NPC ---
|
||
public class NPCInteractable : MonoBehaviour // Класс взаимодействия [Модуль-посредник между кнопкой и менеджером].
|
||
{
|
||
// --- Параметры ---
|
||
public DATA_Dialogue myDialogue; // Ссылка на данные диалога [В инспекторе сюда перетаскивается созданный ассет].
|
||
private MANAGER_Dialogues dialogueManager; // Глобальная ссылка на менеджера [Для инъекции данных].
|
||
|
||
// --- Инициализация ---
|
||
void Start()
|
||
{
|
||
dialogueManager = FindObjectOfType<MANAGER_Dialogues>(); // Динамический поиск компонента [Допустимо для прототипирования, в продакшене лучше использовать Dependency Injection].
|
||
}
|
||
|
||
// --- Триггер ---
|
||
public void TriggerDialogue() // Метод активации [Связующее звено для внешней кнопки-триггера].
|
||
{
|
||
dialogueManager.StartDialogue(myDialogue); // Передача данных [Делегирование отрисовки глобальному менеджеру].
|
||
}
|
||
} |