Table of Contents

Class DialogUIController

A base UI controller for displaying dialogs. Extend this class or use it directly for basic dialog UI.

public class DialogUIController : MonoBehaviour
Inheritance
DialogUIController

Fields

advanceAction

protected InputActionReference advanceAction

Field Value

InputActionReference

clickAction

protected InputActionReference clickAction

Field Value

InputActionReference

clickToAdvance

protected bool clickToAdvance

Field Value

bool

contentText

protected TMP_Text contentText

Field Value

TMP_Text

dialogPanel

protected GameObject dialogPanel

Field Value

GameObject

fullContent

protected string fullContent

Field Value

string

nextButton

protected Button nextButton

Field Value

Button

portraitImage

protected Image portraitImage

Field Value

Image

progressSlider

protected Slider progressSlider

Field Value

Slider

progressText

protected TMP_Text progressText

Field Value

TMP_Text

skipAction

protected InputActionReference skipAction

Field Value

InputActionReference

skipButton

protected Button skipButton

Field Value

Button

titleText

protected TMP_Text titleText

Field Value

TMP_Text

typewriterAudioSource

protected AudioSource typewriterAudioSource

Field Value

AudioSource

typewriterCoroutine

protected Coroutine typewriterCoroutine

Field Value

Coroutine

typewriterSound

protected AudioClip typewriterSound

Field Value

AudioClip

typewriterSpeed

protected float typewriterSpeed

Field Value

float

useTypewriterEffect

protected bool useTypewriterEffect

Field Value

bool

Properties

CurrentDialog

The currently displayed dialog.

public DialogObject CurrentDialog { get; protected set; }

Property Value

DialogObject

IsTyping

Whether the typewriter effect is currently running.

public bool IsTyping { get; protected set; }

Property Value

bool

TypeSpeed

public float TypeSpeed { get; }

Property Value

float

Methods

AdvanceDialog()

Advances to the next dialog.

public virtual void AdvanceDialog()

Awake()

protected virtual void Awake()

CompleteTypewriter()

protected virtual void CompleteTypewriter()

DisableInputActions()

protected virtual void DisableInputActions()

DisplayDialog(DialogObject, int, Conversation)

Displays a dialog in the UI.

public virtual void DisplayDialog(DialogObject dialog, int index, Conversation conversation)

Parameters

dialog DialogObject
index int
conversation Conversation

EnableInputActions()

protected virtual void EnableInputActions()

HideDialogPanel()

Hides the dialog panel.

public virtual void HideDialogPanel()

OnAdvancePerformed(CallbackContext)

protected virtual void OnAdvancePerformed(InputAction.CallbackContext context)

Parameters

context CallbackContext

OnClickPerformed(CallbackContext)

protected virtual void OnClickPerformed(InputAction.CallbackContext context)

Parameters

context CallbackContext

OnConversationEnded(ConversationEventArgs)

protected virtual void OnConversationEnded(ConversationEventArgs args)

Parameters

args ConversationEventArgs

OnConversationStarted(ConversationEventArgs)

protected virtual void OnConversationStarted(ConversationEventArgs args)

Parameters

args ConversationEventArgs

OnDialogFinished(DialogEventArgs)

protected virtual void OnDialogFinished(DialogEventArgs args)

Parameters

args DialogEventArgs

OnDialogStarted(DialogEventArgs)

protected virtual void OnDialogStarted(DialogEventArgs args)

Parameters

args DialogEventArgs

OnDisable()

protected virtual void OnDisable()

OnEnable()

protected virtual void OnEnable()

OnSkipPerformed(CallbackContext)

protected virtual void OnSkipPerformed(InputAction.CallbackContext context)

Parameters

context CallbackContext

SetupButtons()

protected virtual void SetupButtons()

ShowDialogPanel()

Shows the dialog panel.

public virtual void ShowDialogPanel()

SkipDialog()

Skips the current dialog.

public virtual void SkipDialog()

StartTypewriter(string, float)

protected virtual void StartTypewriter(string text, float speed)

Parameters

text string
speed float

StopTypewriter()

protected virtual void StopTypewriter()

SubscribeToEvents()

protected virtual void SubscribeToEvents()

TypewriterCoroutine(string, float)

protected virtual IEnumerator TypewriterCoroutine(string text, float speed)

Parameters

text string
speed float

Returns

IEnumerator

UnsubscribeFromEvents()

protected virtual void UnsubscribeFromEvents()

UpdateProgress(Conversation)

protected virtual void UpdateProgress(Conversation conversation)

Parameters

conversation Conversation