> For the complete documentation index, see [llms.txt](https://docs.yarnspinner.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter/yarn.unity.optionspresenter.runoptionsasync.md).

# RunOptionsAsync(DialogueOption\[],LineCancellationToken)

Method in [OptionsPresenter](/api/csharp/yarn.unity/yarn.unity.optionspresenter.md)

## Summary

Called by a [DialogueRunner](/api/csharp/yarn.unity/yarn.unity.dialoguerunner.md) to display a collection of options to the user.

```csharp
public override async YarnTask<DialogueOption?> RunOptionsAsync(DialogueOption[] dialogueOptions, LineCancellationToken cancellationToken)
```

## Parameters

| Name                                                                                                             | Description                                                                                                                                         |
| ---------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Yarn.Unity.DialogueOption\[\]](/api/csharp/yarn.unity/yarn.unity.dialogueoption.md) dialogueOptions             | The set of options that should be displayed to the user.                                                                                            |
| [Yarn.Unity.LineCancellationToken](/api/csharp/yarn.unity/yarn.unity.linecancellationtoken.md) cancellationToken | A `System.Threading.CancellationToken` that becomes cancelled when the dialogue runner no longer needs this dialogue presenter to return an option. |

## Returns

A task that indicates which option was selected, or that this dialogue presenter did not select an option.
