/// <summary> /// Closes the currently-running conversation, which also sends OnConversationEnd messages /// to the participants. /// </summary> public void Close() { if (IsActive) { IsActive = false; if (DialogueDebug.LogInfo) { Debug.Log(string.Format("{0}: Ending conversation.", new System.Object[] { DialogueDebug.Prefix })); } view.FinishedSubtitleHandler -= OnFinishedSubtitle; view.SelectedResponseHandler -= OnSelectedResponse; view.Close(); model.InformParticipants("OnConversationEnd"); if (endConversationHandler != null) { endConversationHandler(); } DialogueManager.Instance.CurrentConversationState = null; } }
/// <summary> /// Closes the currently-running conversation, which also sends OnConversationEnd messages /// to the participants. /// </summary> public void Close() { if (isActive) { isActive = false; if (DialogueDebug.logInfo) { Debug.Log(string.Format("{0}: Ending conversation.", new System.Object[] { DialogueDebug.Prefix })); } m_view.displaySettings.conversationOverrideSettings = null; m_view.FinishedSubtitleHandler -= OnFinishedSubtitle; m_view.SelectedResponseHandler -= OnSelectedResponse; m_view.Close(); m_model.InformParticipants(DialogueSystemMessages.OnConversationEnd, true); if (m_endConversationHandler != null) { m_endConversationHandler(this); } DialogueManager.instance.currentConversationState = null; } }