EasyTalk API
Loading...
Searching...
No Matches
EasyTalk.Display.ScrollableOptionDisplay Class Reference

The ScrollableOptionDisplay is an implementation of an OptionListDisplay which is scrollable, so that it can display a virtually unlimited number of options. More...

Inherits EasyTalk.Display.OptionListDisplay.

Public Member Functions

override void SetOptions (List< DialogueOption > options)
 
override bool SelectNextOption ()
 Selects the next option (relative to the currently selected one).
Returns
Returns true if an option was selected; false otherwise.

 
override bool SelectPreviousOption ()
 Selects the previous option (relative to the currently selected one).
Returns
Returns true if an option was selected; false otherwise.

 
- Public Member Functions inherited from EasyTalk.Display.OptionListDisplay
override void Init ()
 Initializes the display and sets up the buttons' click actions.
 
override int GetSelectedOption ()
 
override void SetOptions (List< DialogueOption > options)
 
override List< DialogueButtonGetOptionButtons ()
 
override void ActivateButtons ()
 
override void DeactivateButtons ()
 
- Public Member Functions inherited from EasyTalk.Display.OptionDisplay
void SetOptions (List< DialogueOption > options)
 Setup the display to show the options specified.
 
List< DialogueButtonGetOptionButtons ()
 Returns a List containing all of the options buttons of the option display.
 
virtual bool SelectOptionInDirection (Vector2 direction)
 Selected the option corresponding to the specified direction and returns the option index of it. This is typically used for selecting options using a joystick, d-pad, or arrow keys.
 
int GetSelectedOption ()
 Returns the index of the option currently selected.
 
void ActivateButtons ()
 Activates the buttons used for selecting options.
 
void DeactivateButtons ()
 Deactivates the buttons used for selecting options.
 
virtual void TranslateOptions (DialogueController controller)
 Translates the text of each Dialogue Button in the option display based on the current language set on EasyTalkGameState.Instance.Language.
 
- Public Member Functions inherited from EasyTalk.Display.DialoguePanel
void Activate ()
 Sets the panel to be active, and recursively sets all parent game objects to be active.
 
void Deactivate ()
 Makes the panel inactive.
 
bool ForceStandardText ()
 
IEnumerator WaitForAnimation ()
 Asynchronously waits for the currently running animation on this panel to complete.
 
virtual void Hide (bool deactivateAfterHide=true)
 Hides the panel.
 
void HideImmediately (bool deactivateAfterHide=true)
 Hides the panel immediately (doesn't use a transition animation).
 
void ShowImmediately ()
 Shows the panel immediately (doesn't use a transition animation).
 
virtual void Show ()
 Shows the panel.
 
- Public Member Functions inherited from EasyTalk.Controller.DialogueListener
virtual void OnContinue ()
 Called whenever the dialogue continues on to the next line.
 
virtual void OnDisplayOptions (List< DialogueOption > options)
 Called whenever dialogue options are to be presented.
 
virtual void OnOptionChosen (DialogueOption option)
 Called whenever an option is chosen from the currently presented list of options.
 
virtual void OnDisplayLine (ConversationLine conversationLine)
 Called when a line of dialogue is to be presented.
 
virtual void OnDialogueEntered (string entryPointName)
 Called whenever a dialogue is entered (when playback begins).
 
virtual void OnDialogueExited (string exitPointName)
 Called whenever a dialogue is exited (when playback ends).
 
virtual void OnExitCompleted ()
 Called at least one frame after a dialogue is exited.
 
virtual void OnStory (string storyText)
 Called whenever a story node is encountered.
 
virtual void OnVariableUpdated (string variableName, object value)
 Called whenever a dialogue variable value is updated.
 
virtual void OnCharacterChanged (string oldCharacterName, string newCharacterName)
 Called whenever a character change is detected.
 
virtual void OnAudioStarted (ConversationLine line)
 Called whenever audio starts playing for a line of dialogue.
 
virtual void OnAudioCompleted (ConversationLine line, bool forceStopped)
 Called whenever audio stops playing for a line of dialogue.
 
virtual void OnActivateKey (string key)
 Called whenever a key tag is present in a line of dialogue.
 
virtual void Wait (float timeInSeconds)
 Called whenever the dialogue encounters a wait node.
 
virtual void OnConversationEnding (ConversationLine line, Node nextNode)
 Called whenever the last line of dialogue in a conversation node is reached.
 
virtual void OnNodeChanged (Node node)
 Called whenever dialogue playback moves to the next node.
 
virtual void OnPause (string signal)
 Called whenever a pause node is reached during dialogue playback.
 
virtual void OnExecuteAsyncNode (AsyncNode node)
 
virtual void OnWaitingForNodeEvaluation (Node asyncNode)
 
virtual void OnNodeEvaluationCompleted (Node asyncNode)
 

Protected Member Functions

override void ReadyOptions ()
 Make options available and ready for player interactions, reset the display for each option, and highlight the default/selected option.
 
void ScrollToSelectedOption ()
 Scroll to the currently selected option.
 
- Protected Member Functions inherited from EasyTalk.Display.OptionListDisplay
DialogueButton CreateNewOptionButton ()
 Creates a new dialogue option button (cloned from the first button) and adds it to the display.
 
- Protected Member Functions inherited from EasyTalk.Display.OptionDisplay
void OptionChosen ()
 This method should be called whenever an option is finalized as the choice the player wants to make. It will call the callback methods assigned to the onOptionChosen delegate.
 
virtual void OnOptionsSet (List< DialogueOption > options)
 Calls the OnOptionsSet() method on all Option Display Listeners registered with the Option Display.
 
virtual void OptionSelected (DialogueOption option)
 Calls the OnOptionSelected() method on all Option Display Listeners registered with the Option Display.
 
virtual void OptionChanged (DialogueOption oldOption, DialogueOption newOption)
 Calls the OnOptionChanged() method on all Option Display Listeners registered with the Option Display.
 
- Protected Member Functions inherited from EasyTalk.Display.DialoguePanel
IEnumerator SlideDisplayOut (bool deactivateAfterSlide=true)
 Asynchronously slides the display out of its Canvas' bounds.
 
IEnumerator SlideDisplayIn ()
 Asynchronously slides the display into its Canvas' bounds. If returnToOriginalPosition is set to true, then the panel will slide to its original position.
 
IEnumerator FadeDisplayIn ()
 Asynchronously fades the display and all of its child text and image components in to their original transparency values.
 
IEnumerator FadeDisplayOut (bool deactivateAfterFade=true)
 Asynchronously fades the display and all of its child text and image components out to be completely transparent.
 

Private Member Functions

IEnumerator ScrollToSelectedOptionAfterDelay ()
 Asynchronously scrolls the scrollview to view the currently selected option after one frame.
 

Private Attributes

GameObject scrollableContentContainer
 The scrollable content container which contains the dialogue option buttons.
 
int numOptionsAvailable = 1
 The number of options currently being displayed.
 

Additional Inherited Members

- Public Attributes inherited from EasyTalk.Display.OptionDisplay
UnityEvent onOptionsSet = new UnityEvent()
 An event which is triggered when the presented options are updated.
 
UnityEvent onOptionSelected = new UnityEvent()
 An event which is triggered when the player selects (highlights) an option.
 
UnityEvent onOptionChanged = new UnityEvent()
 An event which is triggered when the player changes the selection from one option to another.
 
- Public Attributes inherited from EasyTalk.Display.DialoguePanel
UnityEvent onHideStart = new UnityEvent()
 An event which is triggered whenever the panel starts being hidden.
 
UnityEvent onHideComplete = new UnityEvent()
 An event which is triggered whenever the panel has finished transitioning to a hidden state.
 
UnityEvent onShowStart = new UnityEvent()
 An event which is triggered whenever the panel starts being shown.
 
UnityEvent onShowComplete = new UnityEvent()
 An event which is triggered whenever the panel has finished transitioning to a shown state.
 
- Public Attributes inherited from EasyTalk.Controller.DialogueListener
bool debugEnabled = false
 When set to true, debug logging will be shown for each method called on the listener.
 
UnityEvent onContinue = new UnityEvent()
 An event which is triggered whenever the dialogue continues.
 
UnityEvent onDisplayOptions = new UnityEvent()
 An event which is triggered whenever options are to be displayed to the player.
 
UnityEvent onOptionChosen = new UnityEvent()
 An event which is triggered whenever the player chooses an option.
 
UnityEvent onDisplayLine = new UnityEvent()
 An event which is triggered whenever a line of dialogue is to be displayed.
 
UnityEvent onDialogueEntered = new UnityEvent()
 An event which is triggered whenever dialogue playback begins.
 
UnityEvent onDialogueExited = new UnityEvent()
 An event which is triggered whenever dialogue playback ends.
 
UnityEvent onExitCompleted = new UnityEvent()
 An event which is triggered one frame after dialogue playback ends.
 
UnityEvent onStory = new UnityEvent()
 An event which is triggered whenever a story node is encountered.
 
UnityEvent onVariableUpdated = new UnityEvent()
 An event which is triggered whenever a dialogue variable value is updated.
 
UnityEvent onCharacterChanged = new UnityEvent()
 An event which is triggered whenever a character name change is detected.
 
UnityEvent onAudioStarted = new UnityEvent()
 An event which is triggered whenever dialogue audio starts playing.
 
UnityEvent onAudioCompleted = new UnityEvent()
 An event which is triggered whenever dialogue audio finishes playing.
 
UnityEvent onActivateKey = new UnityEvent()
 An event which is triggered whenever a key is to be processed on a dialogue.
 
UnityEvent onWait = new UnityEvent()
 An event which is triggered whenever a dialogue starts waiting for a certain period of time before continuing.
 
UnityEvent onConversationEnding = new UnityEvent()
 An event which is triggered whenever the last line of dialogue in a conversation node is reached.
 
UnityEvent onNodeChanged = new UnityEvent()
 An event which is triggered whenever a the dialogue flows from one node to another.
 
UnityEvent onPause = new UnityEvent()
 An event which is triggered whenever the dialogue reaches a pause node, pausing and waiting for Continue() to be called.
 
UnityEvent onExecuteAsyncNode = new UnityEvent()
 
UnityEvent onWaitingForNodeCompletion = new UnityEvent()
 
UnityEvent onNodeEvaluationCompleted = new UnityEvent()
 
- Protected Attributes inherited from EasyTalk.Display.OptionListDisplay
List< DialogueButtonoptionButtons = new List<DialogueButton>()
 The List of option buttons used to display dialogue options.
 
bool reverseControls = false
 Whether the next/previous option selection controls should be reversed when selecting options.
 
bool isDynamic = true
 Whether new option buttons should be dynamically created if the number of options set on the display exceeds the number of option buttons currently available.
 
int selectedButtonIdx = 0
 The index of the currently selected option button.
 
DialogueOption selectedOption
 
- Protected Attributes inherited from EasyTalk.Display.OptionDisplay
List< Image > images
 A list of images used to create the option display panel.
 
List< OptionDisplayListeneroptionDisplayListeners
 Listeners for option display events which are triggered whenever the options are displayed or the selected option changes.
 
- Protected Attributes inherited from EasyTalk.Display.DialoguePanel
bool forceStandardText = false
 Whether the Display uses standard Text components rather than TextMeshPro components, even with TextMeshPro installed.
 
Vector3 originalPosition = Vector3.zero
 The original position of the panel.
 
bool isHidden = false
 Whether the panel is currently hidden.
 
- Properties inherited from EasyTalk.Display.OptionDisplay
List< Image > Images [get]
 The list of images used to create the option display panel.
 
- Properties inherited from EasyTalk.Display.DialoguePanel
string DisplayID [get, set]
 Gets or sets the Display ID of the panel.
 
bool IsHidden [get]
 Gets whether the panel is currently hidden.
 
Vector3 OriginalPosition [get]
 Gets the original position of the panel.
 
UIAnimator.Animation AnimationType [get, set]
 Gets or sets the animation type used for showing and hiding the panel.
 
bool OverrideFontSizes [get, set]
 Gets or sets whether the component should override the default font sizes.
 
LanguageFontOverrides LanguageFontOverrides [get, set]
 Gets or sets the LanguageFontOverrides to use on the component.
 
int MinFontSize [get, set]
 Gets or sets the minimum font size to use on the component.
 
int MaxFontSize [get, set]
 Gets or sets the maximum font size to use on the component.
 
- Properties inherited from EasyTalk.Display.LocalizableComponent

Detailed Description

The ScrollableOptionDisplay is an implementation of an OptionListDisplay which is scrollable, so that it can display a virtually unlimited number of options.

Member Function Documentation

◆ ReadyOptions()

override void EasyTalk.Display.ScrollableOptionDisplay.ReadyOptions ( )
protectedvirtual

Make options available and ready for player interactions, reset the display for each option, and highlight the default/selected option.

Reimplemented from EasyTalk.Display.OptionListDisplay.

◆ ScrollToSelectedOption()

void EasyTalk.Display.ScrollableOptionDisplay.ScrollToSelectedOption ( )
protected

Scroll to the currently selected option.

◆ ScrollToSelectedOptionAfterDelay()

IEnumerator EasyTalk.Display.ScrollableOptionDisplay.ScrollToSelectedOptionAfterDelay ( )
private

Asynchronously scrolls the scrollview to view the currently selected option after one frame.

Returns

◆ SelectNextOption()

override bool EasyTalk.Display.ScrollableOptionDisplay.SelectNextOption ( )
virtual

Selects the next option (relative to the currently selected one).

Returns
Returns true if an option was selected; false otherwise.

Reimplemented from EasyTalk.Display.OptionListDisplay.

◆ SelectPreviousOption()

override bool EasyTalk.Display.ScrollableOptionDisplay.SelectPreviousOption ( )
virtual

Selects the previous option (relative to the currently selected one).

Returns
Returns true if an option was selected; false otherwise.

Reimplemented from EasyTalk.Display.OptionListDisplay.

◆ SetOptions()

override void EasyTalk.Display.ScrollableOptionDisplay.SetOptions ( List< DialogueOption > options)

Member Data Documentation

◆ numOptionsAvailable

int EasyTalk.Display.ScrollableOptionDisplay.numOptionsAvailable = 1
private

The number of options currently being displayed.

◆ scrollableContentContainer

GameObject EasyTalk.Display.ScrollableOptionDisplay.scrollableContentContainer
private

The scrollable content container which contains the dialogue option buttons.