Table of Contents

Class DialogExtensions

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

conversation Conversation

Returns

Conversation

FindDialogById(Conversation, string)

Finds a dialog by its ID in a conversation.

public static DialogObject FindDialogById(this Conversation conversation, string dialogId)

Parameters

conversation Conversation
dialogId string

Returns

DialogObject

GetDialogsByEmotion(Conversation, DialogEmotion)

Gets all dialogs with a specific emotion from a conversation.

public static IEnumerable<DialogObject> GetDialogsByEmotion(this Conversation conversation, DialogEmotion emotion)

Parameters

conversation Conversation
emotion DialogEmotion

Returns

IEnumerable<DialogObject>

GetDialogsWithTag(Conversation, string)

Gets all dialogs with a specific tag from a conversation.

public static IEnumerable<DialogObject> GetDialogsWithTag(this Conversation conversation, string tag)

Parameters

conversation Conversation
tag string

Returns

IEnumerable<DialogObject>

GetFormattedContent(DialogObject, string)

Gets the formatted content with title prefix.

public static string GetFormattedContent(this DialogObject dialog, string format = "{0}: {1}")

Parameters

dialog DialogObject
format string

Returns

string

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

dialog DialogObject
minDuration float
wordsPerSecond float

Returns

float

GetTotalWordCount(Conversation)

Gets the total word count of all dialogs in a conversation.

public static int GetTotalWordCount(this Conversation conversation)

Parameters

conversation Conversation

Returns

int

IsValid(DialogObject)

Checks if the dialog has all required content (title and content).

public static bool IsValid(this DialogObject dialog)

Parameters

dialog DialogObject

Returns

bool

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

manager DialogManager
onComplete UnityAction<ConversationEventArgs>

StartAndPlay(DialogManager, Conversation)

Starts a conversation and immediately plays the first dialog.

public static void StartAndPlay(this DialogManager manager, Conversation conversation)

Parameters

manager DialogManager
conversation Conversation