# OptionsPresenter

Class in [Yarn.Unity](https://docs.yarnspinner.dev/api/csharp/yarn.unity)

Inherits from [`DialoguePresenterBase`](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialoguepresenterbase)

## Summary

Receives options from a [DialogueRunner](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialoguerunner) , and displays and manages a collection of [OptionItem](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionitem) views for the user to choose from.

```csharp
public sealed class OptionsPresenter : DialoguePresenterBase
```

## Fields

| Name                                                                                                                                                        | Description                                                                                                                                                                                            |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [fadeDownDuration](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.fadedownduration)             |                                                                                                                                                                                                        |
| [fadeUpDuration](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.fadeupduration)                 |                                                                                                                                                                                                        |
| [showUnavailableOptions](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.showunavailableoptions) | Controls whether or not to display options whose [IsAvailable](https://docs.yarnspinner.dev/api/csharp/yarn/yarn.optionset/yarn.optionset.option/yarn.optionset.option.isavailable) value is `false` . |
| [useFadeEffect](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.usefadeeffect)                   |                                                                                                                                                                                                        |

## Methods

| Name                                                                                                                                                                                    | Description                                                                                                                                                                                                                            |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [OnDialogueCompleteAsync()](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.ondialoguecompleteasync)                         | Called by a [DialogueRunner](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialoguerunner) to dismiss the options view when dialogue is complete.                                                                      |
| [OnDialogueStartedAsync()](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.ondialoguestartedasync)                           | Called by a [DialogueRunner](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialoguerunner) to set up the options view when dialogue begins.                                                                            |
| [RunLineAsync(LocalizedLine,LineCancellationToken)](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.runlineasync)            | Called by a [DialogueRunner](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialoguerunner) when a line needs to be presented, and stores the line as the 'last seen line' so that it can be shown when options appear. |
| [RunOptionsAsync(DialogueOption\[\],LineCancellationToken)](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.runoptionsasync) | Called by a [DialogueRunner](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialoguerunner) to display a collection of options to the user.                                                                             |
