Class DialogExtensions
- Namespace
- WitShells.DialogsManager
Extension methods and utilities for the DialogsManager system.
public static class DialogExtensions
- Inheritance
-
DialogExtensions
- Inherited Members
Methods
CreateRuntimeCopy(Conversation)
Creates a shallow copy of the conversation for runtime modifications.
public static Conversation CreateRuntimeCopy(this Conversation conversation)
Parameters
conversationConversation
Returns
FindDialogById(Conversation, string)
Finds a dialog by its ID in a conversation.
public static DialogObject FindDialogById(this Conversation conversation, string dialogId)
Parameters
conversationConversationdialogIdstring
Returns
GetDialogsByEmotion(Conversation, DialogEmotion)
Gets all dialogs with a specific emotion from a conversation.
public static IEnumerable<DialogObject> GetDialogsByEmotion(this Conversation conversation, DialogEmotion emotion)
Parameters
conversationConversationemotionDialogEmotion
Returns
GetDialogsWithTag(Conversation, string)
Gets all dialogs with a specific tag from a conversation.
public static IEnumerable<DialogObject> GetDialogsWithTag(this Conversation conversation, string tag)
Parameters
conversationConversationtagstring
Returns
GetFormattedContent(DialogObject, string)
Gets the formatted content with title prefix.
public static string GetFormattedContent(this DialogObject dialog, string format = "{0}: {1}")
Parameters
dialogDialogObjectformatstring
Returns
GetOptimalDuration(DialogObject, float, float)
Gets the optimal display duration considering all factors.
public static float GetOptimalDuration(this DialogObject dialog, float minDuration = 2, float wordsPerSecond = 2.5)
Parameters
dialogDialogObjectminDurationfloatwordsPerSecondfloat
Returns
GetTotalWordCount(Conversation)
Gets the total word count of all dialogs in a conversation.
public static int GetTotalWordCount(this Conversation conversation)
Parameters
conversationConversation
Returns
IsValid(DialogObject)
Checks if the dialog has all required content (title and content).
public static bool IsValid(this DialogObject dialog)
Parameters
dialogDialogObject
Returns
PlayAllDialogs(DialogManager, UnityAction<ConversationEventArgs>)
Plays all remaining dialogs with a UnityAction callback when complete.
public static void PlayAllDialogs(this DialogManager manager, UnityEngine.Events.UnityAction<ConversationEventArgs> onComplete = null)
Parameters
managerDialogManageronCompleteUnityAction<ConversationEventArgs>
StartAndPlay(DialogManager, Conversation)
Starts a conversation and immediately plays the first dialog.
public static void StartAndPlay(this DialogManager manager, Conversation conversation)
Parameters
managerDialogManagerconversationConversation