public void Quit() { _aiConversant = null; TriggerExitAction(); triggers.Clear(); _currentDialogue = null; _currentNode = null; _isChoosing = false; Cursor.lockState = CursorLockMode.Locked; Cursor.visible = false; onConversationUpdated?.Invoke(); onDialogueQuitEvent?.Invoke(); }
public void StartDialogue(AiConversant newConversant, Dialogue newDialogue) { if (newDialogue == null || newConversant == null) { return; } _aiConversant = newConversant; _currentDialogue = newDialogue; foreach (DialogueTrigger trigger in _aiConversant.GetComponents <DialogueTrigger>()) { triggers.Add(trigger); } _currentNode = _currentDialogue.GetRootNode(); Cursor.lockState = CursorLockMode.None; Cursor.visible = true; TriggerEnterAction(); onConversationUpdated?.Invoke(); onDialogueStartEvent?.Invoke(); }